[x] Create the image with ./brainvisa-5.1-5.3/bin/casa_distro_admin create_user_image version=5.1.0 container_type=singularity distro=brainvisa image_version=5.3 branch=5.1 install_thirdparty=file:///neurospin/brainvisa/thirdparty/thirdparty.json
[x] Verify that the image works
[x] Install the image :
mkdir -p /tmp/test-brainvisa-5.1.0;singularity run --no-home --bind /tmp/test-brainvisa-5.1.0:/casa/setup /volatile/a-sac-ns-brainvisa/bbi_nightly/brainvisa-5.1.0.sif
[x] Use it to run AimsFileInfo, anatomist, brainvisa
[x] Publish the image on the BrainVISA web site :
casa_distro_admin publish_user_image image=brainvisa-5.1.0.sif
ova image for the brainvisa distro
[x] Create the image with ./brainvisa-5.1-5.3/bin/casa_distro_admin create_user_image version=5.1.0 base_directory=/volatile/a-sac-ns-brainvisa/bbi-brainvisa-5.0 install=no container_type=vbox base_image=casa-run-5.3.ova environment_name=brainvisa-5.1-5.3
[x] Verify that the image works
[x] Install the image
[x] Use it to run AimsFileInfo, anatomist, brainvisa
[x] Publish the image on the BrainVISA web site
sif image for the cea distro
[x] Create the image with ./cea-5.1-5.3/bin/casa_distro_admin create_user_image version=5.1.0 name=brainvisa-cea-5.1.0 container_type=singularity distro=cea image_version=5.3 branch=5.1 install_thirdparty=file:///neurospin/brainvisa/thirdparty/thirdparty.json (beware to name the image brainvisa-cea- and not just cea-)
~ova image for the cea distro~ we will only do these images if users request them
[x] ~Create the image with ./cea-5.1-5.3/bin/casa_distro_admin create_user_image name=brainvisa-cea version=5.1.0 base_directory=/volatile/a-sac-ns-brainvisa/bbi_nightly install=no container_type=vbox base_image=casa-run-5.3.ova environment_name=cea-5.1-5.3 (beware to name the image brainvisa-cea- and not just cea-)~
[x] Create tags with bv_tag_release.py
[x] Edit the website to announce the new release
[x] web project sources
[x] log on the web server, rebuild the web site in the casa-distro installed there: ssh web, then in the server:
[x] web_build/bin/bv bv_maker
[x] publish the web site using the publish script: ./web-build/src/communication/web/5.1/scripts/bv_publish_web /var/www/html/brainvisa.info
[x] Deploy the cea release:
[x] Copy brainvisa-cea-*.sif and the associated .json into /i2bm/brainvisa and set their permissions (chmod 444)
[x] Create a new directory /i2bm/brainvisa/brainvisa-cea-x.y.z and install the Singularity release in there (singularity run --bind ...)
[x] Remove the home directory to enable per-user home: rm -r /i2bm/brainvisa/brainvisa-cea-x.y.z/home/
[x] Edit /i2bm/brainvisa/brainvisa-cea-x.y.z/conf/casa_distro.json and add "container_failure_message": "Singularity could not start. BrainVISA needs singularity version %(singularity_version)s or later. You can install it (as admin) by typing in a terminal:\n. /etc/os-release && sudo dpkg -i /i2bm/brainvisa/singularity-latest-${ID}-${VERSION_ID}_$(dpkg --print-architecture).deb"
[x] By the way, check that the /i2bm/brainvisa/singularity-latest* symlinks are working and up-to-date
[x] Verify that the deployment works (use it to launch AimsFileInfo --info, anatomist, brainvisa...)
[x] Make it the default version: ln -sfT brainvisa-cea-x.y.z/ /i2bm/brainvisa/brainvisa
[x] ~Copy brainvisa-cea-*.ova and the associated .json into /i2bm/brainvisa and set their permissions (chmod 444)~
[x] ~Install the ova on a non-Linux machine and verify that it works (use it to launch AimsFileInfo --info, anatomist, brainvisa...)~
[x] Build pip packages for the python projects which are distributed in pip:
Release check-list
[x] Check that all projects have the correct version in their sources:
bv_tag_release.py --fix-source-version-numbers
[x] Check that tests are successful on https://brainvisa.info/builds/
[x] Update changelogs and https://github.com/brainvisa/brainvisa.github.io/issues/92
[x] Run a last build to update the changelogs
bv_maker sources doc
in thebrainvisa
distrobv_maker sources doc
in thecea
distro[x] Create, test, and publish/deploy the images
sif
image for thebrainvisa
distro[x] Create the image with
./brainvisa-5.1-5.3/bin/casa_distro_admin create_user_image version=5.1.0 container_type=singularity distro=brainvisa image_version=5.3 branch=5.1 install_thirdparty=file:///neurospin/brainvisa/thirdparty/thirdparty.json
[x] Verify that the image works
[x] Install the image :
mkdir -p /tmp/test-brainvisa-5.1.0;singularity run --no-home --bind /tmp/test-brainvisa-5.1.0:/casa/setup /volatile/a-sac-ns-brainvisa/bbi_nightly/brainvisa-5.1.0.sif
[x] Use it to run
AimsFileInfo
,anatomist
,brainvisa
[x] Publish the image on the BrainVISA web site :
casa_distro_admin publish_user_image image=brainvisa-5.1.0.sif
ova
image for thebrainvisa
distro[x] Create the image with
./brainvisa-5.1-5.3/bin/casa_distro_admin create_user_image version=5.1.0 base_directory=/volatile/a-sac-ns-brainvisa/bbi-brainvisa-5.0 install=no container_type=vbox base_image=casa-run-5.3.ova environment_name=brainvisa-5.1-5.3
[x] Verify that the image works
[x] Install the image
[x] Use it to run
AimsFileInfo
,anatomist
,brainvisa
[x] Publish the image on the BrainVISA web site
sif
image for thecea
distro[x] Create the image with
./cea-5.1-5.3/bin/casa_distro_admin create_user_image version=5.1.0 name=brainvisa-cea-5.1.0 container_type=singularity distro=cea image_version=5.3 branch=5.1 install_thirdparty=file:///neurospin/brainvisa/thirdparty/thirdparty.json
(beware to name the imagebrainvisa-cea-
and not justcea-
)~
ova
image for thecea
distro~ we will only do these images if users request them[x] ~Create the image with
./cea-5.1-5.3/bin/casa_distro_admin create_user_image name=brainvisa-cea version=5.1.0 base_directory=/volatile/a-sac-ns-brainvisa/bbi_nightly install=no container_type=vbox base_image=casa-run-5.3.ova environment_name=cea-5.1-5.3
(beware to name the imagebrainvisa-cea-
and not justcea-
)~[x] Create tags with
bv_tag_release.py
[x] Edit the website to announce the new release
ssh web
, then in the server:web_build/bin/bv bv_maker
./web-build/src/communication/web/5.1/scripts/bv_publish_web /var/www/html/brainvisa.info
[x] Deploy the
cea
release:brainvisa-cea-*.sif
and the associated.json
into/i2bm/brainvisa
and set their permissions (chmod 444
)/i2bm/brainvisa/brainvisa-cea-x.y.z
and install the Singularity release in there (singularity run --bind ...
)rm -r /i2bm/brainvisa/brainvisa-cea-x.y.z/home/
/i2bm/brainvisa/brainvisa-cea-x.y.z/conf/casa_distro.json
and add"container_failure_message": "Singularity could not start. BrainVISA needs singularity version %(singularity_version)s or later. You can install it (as admin) by typing in a terminal:\n. /etc/os-release && sudo dpkg -i /i2bm/brainvisa/singularity-latest-${ID}-${VERSION_ID}_$(dpkg --print-architecture).deb"
/i2bm/brainvisa/singularity-latest*
symlinks are working and up-to-dateAimsFileInfo --info
,anatomist
,brainvisa
...)ln -sfT brainvisa-cea-x.y.z/ /i2bm/brainvisa/brainvisa
brainvisa-cea-*.ova
and the associated.json
into/i2bm/brainvisa
and set their permissions (chmod 444
)~ova
on a non-Linux machine and verify that it works (use it to launchAimsFileInfo --info
,anatomist
,brainvisa
...)~[x] Build pip packages for the python projects which are distributed in pip:
./brainvisa-5.1-5.3/bin/bv python3 -m build /casa/host/src/soma/soma-workflow/5.1
./brainvisa-5.1-5.3/bin/bv python3 -m build /casa/host/src/soma/soma-base/5.1
./brainvisa-5.1-5.3/bin/bv python3 -m build /casa/host/src/populse/populse_db/5.1
./brainvisa-5.1-5.3/bin/bv python3 -m build /casa/host/src/capsul/5.1
[x] Publish them to
test.pypi.org
./brainvisa-5.1-5.3/bin/bv python3 -m twine upload --repository testpypi /casa/host/src/soma/soma-workflow/5.1/dist/*
./brainvisa-5.1-5.3/bin/bv python3 -m twine upload --repository testpypi /casa/host/src/soma/soma-base/5.1/dist/*
./brainvisa-5.1-5.3/bin/bv python3 -m twine upload --repository testpypi /casa/host/src/populse/populse-db/5.1/dist/*
./brainvisa-5.1-5.3/bin/bv python3 -m twine upload --repository testpypi /casa/host/src/capsul/5.1/dist/*
[x] Create a virtualenv test environment and test packages install:
mkdir -p /tmp/brainvisa-5.1.0/testenv && python3 -m venv /tmp/brainvisa-5.1.0/testenv
[x] Publish them to
pypi.org
./brainvisa-5.1-5.3/bin/bv python3 -m twine upload /casa/host/src/soma/soma-workflow/5.1/dist/*
./brainvisa-5.1-5.3/bin/bv python3 -m twine upload /casa/host/src/soma/soma-base/5.1/dist/*
./brainvisa-5.1-5.3/bin/bv python3 -m twine upload /casa/host/src/populse/populse-db/5.1/dist/*
./brainvisa-5.1-5.3/bin/bv python3 -m twine upload /casa/host/capsul/5.1/dist/*
[x] Open a new GitHub issue for known issues
[x] Close the old GitHub known issues
[x] Make an announcement on the GitHub discussions
[x] If the releases has significant new features, announce it on the mailing list