-
Notifications
You must be signed in to change notification settings - Fork 2
Description
Release 6.0.30 check-list
-
Check that tests are successful on https://brainvisa.info/builds/
-
Update changelogs and the list of known issues
- https://github.com/brainvisa/aims-free/blob/soma-env-6.0/aimsdata/sphinx/user_doc/changelog.md
- https://github.com/brainvisa/axon/blob/soma-env-6.0/sphinxdoc/user_doc/changelog.md
- https://github.com/brainvisa/anatomist-free/blob/soma-env-6.0/sphinxman/changelog.md
- https://bioproj.cea.fr/redmine/projects/brainvisa-commu/repository/web/revisions/master/entry/sphinx/news.md
-
Connect to rosette using
ssh a-sac-ns-brainvisa@rosette -
Create public and brainvisa-cea packages for conda
- Change directory
cd /home_local/a-sac-ns-brainvisa/bbi-daily/soma-env-6.0 - Update sources and build software tree
pixi run bv_maker - Update release version and generate packaging plan
pixi run soma-env packaging_plan --release - Apply packaging plan, build conda packages and publish to /drf/neuro-forge
pixi run soma-env apply_plan - Change directory
cd /home_local/a-sac-ns-brainvisa/bbi-daily/neuro-forge - Reindex packages on /drf/neuro-forge and publish packages to brainvisa.info
pixi run neuro-forge publish
- Change directory
-
Create, test, and publish/deploy the images (optional)
sifmonolothic brainvisa install- Change directory
cd /home_local/a-sac-ns-brainvisa/bbi-daily/casa-distro - Update casa distro
git pull
export PATH=$(pwd)/casa-distro/bin:"$PATH" - Change directory
cd /home_local/a-sac-ns-brainvisa/bbi-daily - Pull a "casa-pixi" apptainer image from the BrainVISA server:
export CASA_BASE_DIRECTORY=$(pwd)
casa_distro pull_image image=casa-pixi-5.4.sif - Create the monolithic image
casa_distro_admin create_user_image container_type=apptainer_pixi image_version=5.4 base_image=casa-pixi-5.4.sif version=6.0 distro=brainvisa - Verify that the image works
- Install the image
mkdir -p /tmp/test-brainvisa-6.0;apptainer run -ce --bind /tmp/test-brainvisa-6.0:/casa/setup /home_local/a-sac-ns-brainvisa/bbi-daily/brainvisa-6.0.sif - Use it to run
AimsFileInfo,anatomist,brainvisa
- Install the image
- Publish the image on the BrainVISA web site
casa_distro_admin publish_user_image image=brainvisa-6.0.sif
- Change directory
-
Edit the website to announce the new release
- web project sources
- log on rosette, rebuild the web site in the brainvisa-web build:
ssh a-sac-ns-brainvisa@rosette, then in the server:-
/home_local/a-sac-ns-brainvisa/bbi-daily/brainvisa-web/bin/bv_maker - publish the web site using the publish script:
/home_local/a-sac-ns-brainvisa/bbi-daily/brainvisa-web/bin/bv /home_local/a-sac-ns-brainvisa/bbi-daily/brainvisa-web/src/communication/web/master/scripts/bv_publish_web brainvisa@brainvisa.info:/var/www/html/brainvisa.info
-
-
Deploy the
ceapixi release:- Create a new directory
/drf/brainvisa/brainvisa-6.0
mkdir -p /drf/brainvisa/brainvisa-6.0 - Setup pixi workspace
- Create a new directory
cat > pixi.toml <<EOF
[workspace]
authors = ["sapetnioc <sapetnioc@users.noreply.github.com>"]
channels = ["https://brainvisa.info/neuro-forge", "conda-forge", "/drf/neuro-forge/brainvisa-cea"]
name = "brainvisa-6.0"
platforms = ["linux-64"]
version = "0.1.0"
[tasks]
[dependencies]
brainvisa = ">=6.0"
soma-pytorch = "*"
bioprocessing = ">=6.0"
constellation = ">=6.0"
primatologist = ">=6.0"
morphologist-baby = ">=6.0"
brainrat = ">=6.0"
EOF-
Install environment
pixi install
pixi run brainvisa -b --setup
pixi run bv_update_links -
Verify that the deployment works (use it to launch
AimsFileInfo --info,anatomist,brainvisa...)
/drf/brainvisa/brainvisa-6.0/bin/bv bash
for __f in $(find /drf/brainvisa/brainvisa-6.0/.pixi/envs/default/share/brainvisa-share-6.0 -type f -name '*.ima'); do AimsFileInfo -v -i "${__f}"; done
anatomist $(find /drf/brainvisa/brainvisa-6.0/.pixi/envs/default/share/brainvisa-share-6.0 -type f -name '*.nii')
brainvisa -
Make it the default version:
ln -sfT brainvisa-6.0/ /drf/brainvisa/brainvisa -
Build pip packages for the python projects soma-workflow, soma-base, populse-db and capsul which are distributed in pip:
-
./soma-env-6.0/bin/bv python -m build ./soma-env-6.0/src/soma/soma-workflow -
./soma-env-6.0/bin/bv python -m build ./soma-env-6.0/src/soma/soma-base -
./soma-env-6.0/bin/bv python -m build ./soma-env-6.0/src/populse/populse-db -
./soma-env-6.0/bin/bv python -m build ./soma-env-6.0/src/capsul
-
-
Publish them to
test.pypi.org-
./soma-env-6.0/bin/bv python -m twine upload --repository testpypi ./soma-env-6.0/src/soma/soma-workflow/dist/* -
./soma-env-6.0/bin/bv python -m twine upload --repository testpypi ./soma-env-6.0/src/soma/soma-base/dist/* -
./soma-env-6.0/bin/bv python -m twine upload --repository testpypi ./soma-env-6.0/src/populse/populse-db/dist/* -
./soma-env-6.0/bin/bv python -m twine upload --repository testpypi ./soma-env-6.0/src/capsul/dist/*
-
-
Create a virtualenv test environment and test packages install:
-
mkdir -p /tmp/brainvisa-6.0/testenv && python3 -m venv /tmp/brainvisa-6.0/testenv -
/tmp/brainvisa-6.0/testenv/bin/python -m pip install --index-url https://test.pypi.org/simple/ soma-workflow -
/tmp/brainvisa-6.0/testenv/bin/python -m pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple soma-base -
/tmp/brainvisa-6.0/testenv/bin/python -m pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple populse-db -
/tmp/brainvisa-6.0/testenv/bin/python -m pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple capsul
-
-
Publish them to
pypi.org-
./soma-env-6.0/bin/bv python -m twine upload ./soma-env-6.0/src/soma/soma-workflow/dist/* -
./soma-env-6.0/bin/bv python -m twine upload ./soma-env-6.0/src/soma/soma-base/dist/* -
./soma-env-6.0/bin/bv python -m twine upload ./soma-env-6.0/src/populse/populse-db/dist/* -
./soma-env-6.0/bin/bv python -m twine upload ./soma-env-6.0/capsul/dist/*
-
-
Make an announcement on the GitHub discussions
-
If the releases has significant new features, announce it on the mailing list