-
Notifications
You must be signed in to change notification settings - Fork 38
ReleaseHowTo
Note, this assumes one starts on master branch and is releasing a new major branch, X.Y.
-
Add and commit new versions file on master:
-
move input converters around:
git mv tools/input_converters/xml-X.{Y-1}-X.Y.py -
edit docs/documentation/source/_static/versions.json
-
change the version of the "stable" branch
-
add a new entry, after stable, to provide the previously-stable version:
{ "version": "X.(Y-1)", "url": "https://amanzi.github.io/ats/vX.(Y-1)/" }
-
-
edit
docs/documentation/source/conf.pyto change the default release number:- "html_theme_options"/"switcher"/"version_match" --> vX.Y
- "release" --> vX.Y
-
git add docs/documentation/source/_static/versions.json docs/documentation/source/conf.py -
git commit -m 'update versions'; git push
-
-
Clear out old, stable documentation:
cd docs/documentation/deploy/htmlgit mv stable vX.(Y-1)
-
Rebuild documentation:
cd ../../- Build the rst for input_spec:
make input_spec - Build html:
make html - Look for error messages, missing template parameters, etc, in the output.
- Check to make sure things look ok:
open build/html/index.html. If not, edit source and repeat.
-
Deploy the updated dev version:
make deploy_master
-
Cut a branch on each of ATS, ats-demos, and ats-regression-tests, e.g.:
git tag ats-demos-X.(Y+1)-devgit push --tagsgit checkout -b ats-demos-X.Ygit push --set-upstream origin ats-demos-X.Y
-
Update the ATS CI to run against the corresponding Amanzi branch
- edit $ATS_SRC_DIR/.github/workflows/ats-ci.yml, changing
jobs/build/steps/"name: Check out the Amanzi repo"/with/ref: master --> amanzi-X.Y
- edit $ATS_SRC_DIR/.github/workflows/ats-ci.yml, changing
-
Deploy the stable documentation on the newly created ATS branch:
- edit
docs/documentation/source/conf.pyto change version="dev" --> "X.Y". (NOT vX.Y) make htmlmake deploy_stable
- edit
-
Commit the above changes to the version branch
git add source/conf.py ../../.github/workflow/ats-ci.ymlgit commit -m 'reconfiguring documentation for release branch'git push
-
Go to github Releases and “draft a new release”
- Tag =
ats-X.Y.0 - @target branch =
ats-X.Y - release name =
ATS Release X.Y.0
- Tag =