Skip to content

Commit

Permalink
Merge pull request #32 from ba-st/gemstone64
Browse files Browse the repository at this point in the history
Add support for GemStone 64
  • Loading branch information
gcotelli authored Feb 29, 2024
2 parents a215c79 + 4a75413 commit dd4bf64
Show file tree
Hide file tree
Showing 33 changed files with 279 additions and 122 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/docker-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
name: Build and Publish Docker Images
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 2
- name: Docker meta
Expand Down
9 changes: 5 additions & 4 deletions .github/workflows/integration-tests.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
name: Integration Tests

on: [push,pull_request,workflow_dispatch]

on:
- push
- pull_request
- workflow_dispatch
jobs:
integration-tests:
runs-on: ubuntu-latest
name: Integration Tests
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 2
- name: Run tests using Docker
Expand Down
19 changes: 13 additions & 6 deletions .github/workflows/loading-groups.yml
Original file line number Diff line number Diff line change
@@ -1,18 +1,25 @@
name: Baseline Groups

on: [push,pull_request,workflow_dispatch]

on:
- push
- pull_request
- workflow_dispatch
jobs:
group-loading:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
smalltalk: [ Pharo64-11, Pharo64-10, Pharo64-9.0, Pharo64-8.0 ]
load-spec: [ deployment, examples, tools, development]
smalltalk:
- Pharo64-10
- Pharo64-11
load-spec:
- deployment
- examples
- tools
- development
name: ${{ matrix.smalltalk }} + ${{ matrix.load-spec }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: hpi-swa/setup-smalltalkCI@v1
with:
smalltalk-image: ${{ matrix.smalltalk }}
Expand Down
22 changes: 22 additions & 0 deletions .github/workflows/loading-gs64-components.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: 'GS64 Components Loading'
on:
- push
- pull_request
- workflow_dispatch
jobs:
component-loading:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
load-spec:
- Deployment
- Examples
name: GS64 + ${{ matrix.load-spec }}
steps:
- uses: actions/checkout@v4
- name: Load component in image
uses: ba-st-actions/gs64-ci@v2
with:
project_name: 'Stargate-Consul'
load_spec: 'Stargate-Consul-${{ matrix.load-spec }}'
7 changes: 5 additions & 2 deletions .github/workflows/markdown-lint.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
name: Markdown Lint
on: [push,pull_request,workflow_dispatch]
on:
- push
- pull_request
- workflow_dispatch
jobs:
remark-lint:
name: runner / markdownlint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: markdownlint
uses: reviewdog/action-markdownlint@v0
with:
Expand Down
6 changes: 1 addition & 5 deletions .github/workflows/notify.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
name: Release Notifications

on:
release:
types: [published]

on: workflow_dispatch
jobs:
notify:
runs-on: ubuntu-latest
Expand Down
9 changes: 5 additions & 4 deletions .github/workflows/shellcheck.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
name: Shellcheck

on: [push,pull_request]

on:
- push
- pull_request
- workflow_dispatch
jobs:
shellcheck:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Run Shellcheck
uses: reviewdog/action-shellcheck@v1
with:
Expand Down
16 changes: 16 additions & 0 deletions .github/workflows/unit-tests-gs64.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: 'GS64 Unit Tests'
on:
- push
- pull_request
- workflow_dispatch
jobs:
unit-tests:
runs-on: ubuntu-latest
name: GS64 Unit Tests
steps:
- uses: actions/checkout@v4
- name: Load Image and Run Tests
uses: ba-st-actions/gs64-ci@v2
with:
project_name: 'Stargate-Consul'
run_tests: 'true'
13 changes: 8 additions & 5 deletions .github/workflows/unit-tests.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,20 @@
name: Unit Tests

on: [push,pull_request,workflow_dispatch]

on:
- push
- pull_request
- workflow_dispatch
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
smalltalk: [ Pharo64-11, Pharo64-10, Pharo64-9.0, Pharo64-8.0 ]
smalltalk:
- Pharo64-10
- Pharo64-11
name: ${{ matrix.smalltalk }}
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- uses: hpi-swa/setup-smalltalkCI@v1
with:
smalltalk-image: ${{ matrix.smalltalk }}
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2020-2022 Buenos Aires Smalltalk Contributors
Copyright (c) 2020-2024 Buenos Aires Smalltalk Contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
10 changes: 7 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,23 @@
This library provides a [Stargate](https://github.com/ba-st/Stargate) operational
plugin to interact with the [Consul](https://www.consul.io) HTTP API.

[![Unit Tests](https://github.com/ba-st/Stargate-Consul/actions/workflows/unit-tests.yml/badge.svg)](https://github.com/ba-st/Stargate-Consul/actions/workflows/unit-tests.yml)
[![Pharo Unit Tests](https://github.com/ba-st/Stargate-Consul/actions/workflows/unit-tests.yml/badge.svg)](https://github.com/ba-st/Stargate-Consul/actions/workflows/unit-tests.yml)
[![GS64 - Unit Tests](https://github.com/ba-st/Stargate-Consul/actions/workflows/unit-tests-gs64.yml/badge.svg)](https://github.com/ba-st/Stargate-Consul/actions/workflows/unit-tests-gs64.yml)
[![Coverage Status](https://codecov.io/github/ba-st/Stargate-Consul/coverage.svg?branch=release-candidate)](https://codecov.io/gh/ba-st/Stargate-Consul/branch/release-candidate)

[![Baseline Groups](https://github.com/ba-st/Stargate-Consul/actions/workflows/loading-groups.yml/badge.svg)](https://github.com/ba-st/Stargate-Consul/actions/workflows/loading-groups.yml)
[![GS64 Components](https://github.com/ba-st/Stargate-Consul/actions/workflows/loading-gs64-components.yml/badge.svg)](https://github.com/ba-st/Stargate-Consul/actions/workflows/loading-gs64-components.yml)
[![Integration Tests](https://github.com/ba-st/Stargate-Consul/actions/workflows/integration-tests.yml/badge.svg)](https://github.com/ba-st/Stargate-Consul/actions/workflows/integration-tests.yml)
[![Markdown Lint](https://github.com/ba-st/Stargate-Consul/actions/workflows/markdown-lint.yml/badge.svg)](https://github.com/ba-st/Stargate-Consul/actions/workflows/markdown-lint.yml)
[![Shellcheck](https://github.com/ba-st/Stargate-Consul/actions/workflows/shellcheck.yml/badge.svg)](https://github.com/ba-st/Stargate-Consul/actions/workflows/shellcheck.yml)

[![GitHub release](https://img.shields.io/github/release/ba-st/Stargate-Consul.svg)](https://github.com/ba-st/Stargate-Consul/releases/latest)
[![Pharo 8.0](https://img.shields.io/badge/Pharo-8.0-informational)](https://pharo.org)
[![Pharo 9.0](https://img.shields.io/badge/Pharo-9.0-informational)](https://pharo.org)

[![Pharo 10](https://img.shields.io/badge/Pharo-10-informational)](https://pharo.org)
[![Pharo 11](https://img.shields.io/badge/Pharo-11-informational)](https://pharo.org)

[![GS64 3.7.0](https://img.shields.io/badge/GS64-3.7.0-informational)](https://gemtalksystems.com/products/gs64/)

Quick links

- [**Explore the docs**](docs/README.md)
Expand Down
18 changes: 6 additions & 12 deletions docker/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,20 +7,14 @@ RUN pharo metacello install gitlocal://. \
BaselineOfStargateConsul --groups=Examples

# Stage 2: Copy the resulting Pharo.image
FROM ghcr.io/ba-st/launchpad:v4
FROM ghcr.io/ba-st/launchpad:v5

USER root
COPY --from=loader --chown=pharo:users --chmod=755 /opt/pharo/pharo-local/iceberg/ba-st/Stargate/docker/health-check.sh ./
COPY --from=loader --chown=pharo:users /opt/pharo/Pharo.image ./
COPY --from=loader --chown=pharo:users /opt/pharo/Pharo.changes ./
COPY --from=loader --chown=pharo:users /opt/pharo/Pharo*.sources ./

COPY --from=loader /opt/pharo/pharo-local/iceberg/ba-st/Stargate/docker/health-check.sh ./
COPY --from=loader /opt/pharo/Pharo.image ./
COPY --from=loader /opt/pharo/Pharo.changes ./
COPY --from=loader /opt/pharo/Pharo*.sources ./

RUN mkdir logs \
&& chmod a+x health-check.sh \
&& chown --recursive pharo:users /opt/pharo

USER pharo
RUN mkdir logs

HEALTHCHECK CMD ./health-check.sh

Expand Down
2 changes: 1 addition & 1 deletion docs/MigrationGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
## Migration from v2 to v3

- Pharo 7 support is now deprecated, use Pharo 8 or 9.
- Dependencies udpated:
- Dependencies updated:
- [`Launchpad`](https://github.com/ba-st/Launchpad) was updated to v4
- [`Stargate`](https://github.com/ba-st/Stargate) was updated to v7
- [`Superluminal`](https://github.com/ba-st/Superluminal) was updated to v3
20 changes: 20 additions & 0 deletions rowan/components/Deployment.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
RwSimpleProjectLoadComponentV2 {
#name : 'Deployment',
#projectNames : [
'Stargate',
'Superluminal'
],
#componentNames : [ ],
#packageNames : [
'Stargate-Consul'
],
#conditionalPackageMapSpecs : {
'gemstone' : {
'allusers' : {
#packageNameToPlatformPropertiesMap : {
'Stargate-Consul' : { 'symbolDictName' : 'Stargate' }
}
}
}
}
}
19 changes: 19 additions & 0 deletions rowan/components/Examples.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
RwSimpleProjectLoadComponentV2 {
#name : 'Examples',
#projectNames : [ ],
#componentNames : [
'Deployment'
],
#packageNames : [
'Stargate-Consul-Examples'
],
#conditionalPackageMapSpecs : {
'gemstone' : {
'allusers' : {
#packageNameToPlatformPropertiesMap : {
'Stargate-Consul-Examples' : { 'symbolDictName' : 'Stargate' }
}
}
}
}
}
24 changes: 24 additions & 0 deletions rowan/components/Tests.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
RwSimpleProjectLoadComponentV2 {
#name : 'Tests',
#condition : 'tests',
#projectNames : [ ],
#componentNames : [
'Deployment',
'Examples'
],
#packageNames : [
'Stargate-Consul-Tests',
'Stargate-Consul-Examples-Tests'

],
#conditionalPackageMapSpecs : {
'gemstone' : {
'allusers' : {
#packageNameToPlatformPropertiesMap : {
'Stargate-Consul-Tests' : { 'symbolDictName' : 'Stargate' },
'Stargate-Consul-Examples-Tests' : { 'symbolDictName' : 'Stargate' }
}
}
}
}
}
11 changes: 11 additions & 0 deletions rowan/project.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
RwProjectSpecificationV2 {
#specName : 'project',
#projectSpecPath : 'rowan',
#componentsPath : 'rowan/components',
#packagesPath : 'source',
#projectsPath : 'rowan/projects',
#specsPath : 'rowan/specs',
#packageFormat : 'tonel',
#packageConvention : 'Rowan',
#comment : 'Stargate Consul project specification'
}
11 changes: 11 additions & 0 deletions rowan/projects/Stargate.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
RwLoadSpecificationV2 {
#specName: 'Stargate',
#projectName : 'Stargate',
#gitUrl : 'https://github.com/ba-st/Stargate.git',
#revision : 'v9',
#projectSpecFile : 'rowan/project.ston',
#componentNames : [
'Deployment',
'Dependent-SUnit-Extensions'
]
}
11 changes: 11 additions & 0 deletions rowan/projects/Superluminal.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
RwLoadSpecificationV2 {
#specName: 'Superluminal',
#projectName : 'Superluminal',
#gitUrl : 'https://github.com/ba-st/Superluminal.git',
#revision : 'v5',
#projectSpecFile : 'rowan/project.ston',
#componentNames : [
'API-Client',
'Dependent-SUnit-Extensions'
]
}
14 changes: 14 additions & 0 deletions rowan/specs/Stargate-Consul-CI.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
RwLoadSpecificationV2 {
#specName: 'Stargate-Consul-CI',
#projectName : 'Stargate-Consul',
#diskUrl : 'Stargate-Consul',
#projectSpecFile : 'rowan/project.ston',
#componentNames : [
'Tests'
],
#customConditionalAttributes : [
'tests',
'sunit'
],
#comment : 'Loading spec for the continuous integration setup'
}
9 changes: 9 additions & 0 deletions rowan/specs/Stargate-Consul-Deployment.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
RwLoadSpecificationV2 {
#specName: 'Stargate-Consul-Deployment',
#projectName : 'Stargate-Consul',
#diskUrl : 'Stargate-Consul',
#projectSpecFile : 'rowan/project.ston',
#componentNames : [
'Deployment'
]
}
9 changes: 9 additions & 0 deletions rowan/specs/Stargate-Consul-Examples.ston
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
RwLoadSpecificationV2 {
#specName: 'Stargate-Consul-Examples',
#projectName : 'Stargate-Consul',
#diskUrl : 'Stargate-Consul',
#projectSpecFile : 'rowan/project.ston',
#componentNames : [
'Examples'
]
}
3 changes: 2 additions & 1 deletion source/.properties
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
{
#format : #tonel
#format : #tonel,
#convention : 'Rowan'
}
Loading

0 comments on commit dd4bf64

Please sign in to comment.