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.json
by removing:- extra packages from
require
- only leave the first threegovcms/*
packages - the
blacklist
section - remove completely
- extra packages from
-
Run
ahoy build master
to update /app. -
Run
ahoy verify master
- it will likely fail. -
Run
ahoy debug master
- follow instructions. -
Re-run
ahoy build master
andahoy 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.json
by removing:- extra packages from
require
- only leave the first threegovcms/*
packages - the
blacklist
section - remove completely
- extra packages from
-
Run
ahoy build develop
to update /app. -
Run
ahoy verify develop
- it will likely fail. -
Run
ahoy debug develop
- follow instructions. -
Re-run
ahoy build develop
andahoy 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.json
by removing:- extra packages from
require
- only leave the first threegovcms/*
packages - the
blacklist
section - remove completely
- extra packages from
-
ONLY FOR STABLE update the package versions for the
govcms/*
versions to the latest versions. -
Run
ahoy build stable
to update /app. -
Run
ahoy verify stable
- it will likely fail. -
Run
ahoy debug stable
- follow instructions. -
Re-run
ahoy build stable
andahoy 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