There are four satis servers which are built from four config files (in ./satis-config). These can be used in the "repositories" section of composer.json.
STABLE |
govcms-stable.json | https://satis.govcms.gov.au/ |
MASTER |
govcms-master.json | https://satis.govcms.gov.au/master |
DEVELOP |
govcms-develop.json | https://satis.govcms.gov.au/develop |
WHITELIST |
govcms-whitelist.json | https://satis.govcms.gov.au/whitelist |
They are updated by running ahoy build which populates the ./app directory
with static files.
Currently, updating is manual. The job to automate it was completed but it got stuck waiting for deployment tokens. In the meantime it has been found that manual intervention is usually needed.
Updating STABLE should be done when there is a new point release of GovCMS.
Updating MASTER and DEVELOP should be done when the master and develop
branches are updated on
Each of the ahoy build ahoy check-dupes ahoy verify and ahoy debug commands can
accept any of the current versions (stable, master or develop) as a parameter. Providing no
parameter is equivalent to stable. There is also a -all variant to these commands that
will run the process for all branches.
This will update the ./app/master directory.
-
Clean
./satis-config/govcms-master.jsonby removing:- extra packages from
require- only leave the first threegovcms/*packages - the
blacklistsection - remove completely
- extra packages from
-
Run
ahoy build masterto update /app. -
Run
ahoy verify master- it will likely fail. -
Run
ahoy debug master- follow instructions. -
Re-run
ahoy build masterandahoy verify master(ie. repeat the above steps as needed).
This will update the ./app/develop directory. Repeat the exact steps you followed to
update MASTER, just replace master with develop.
-
Clean
./satis-config/govcms-develop.jsonby removing:- extra packages from
require- only leave the first threegovcms/*packages - the
blacklistsection - remove completely
- extra packages from
-
Run
ahoy build developto update /app. -
Run
ahoy verify develop- it will likely fail. -
Run
ahoy debug develop- follow instructions. -
Re-run
ahoy build developandahoy verify develop(ie. repeat the above steps as needed).
This will update the ./app directory. You are repeating the steps you followed to
update MASTER, just replace master with stable.
There is only one extra step (step 2).
-
Clean
./satis-config/govcms-stable.jsonby removing:- extra packages from
require- only leave the first threegovcms/*packages - the
blacklistsection - remove completely
- extra packages from
-
ONLY FOR STABLE update the package versions for the
govcms/*versions to the latest versions. -
Run
ahoy build stableto update /app. -
Run
ahoy verify stable- it will likely fail. -
Run
ahoy debug stable- follow instructions. -
Re-run
ahoy build stableandahoy verify stable(ie. repeat the above steps as needed).
This is a hassle free one because it doesn't calculate dependencies. Run ahoy build-whitelist.
To quickly see if there are any duplicates in your package.json files, ahoy check-dupes { stable|master|develop }.
Once you have updated all branches, create a PR to https://github.com/govcms/satis. Once this is merged it will trigger quay.io to rebuild the an image (see docker-compose.yml).
This project is built on composer/satis using the docker container method. The following settings are important because it forces Satis to resolve an ideal set of package versions.
"require-dependencies": true,
"require-dev-dependencies": true,
"only-best-candidates": true