This repository automates keeping the SlicerDocker images in sync with the Slicer source tree.
It provides:
- Scripts to update the Slicer revision used in the Docker images.
- A GitHub Actions workflow to build and publish the images to Docker Hub.
- Legacy cron-based scripts for manual/server-side scheduling.
Published images are available on Docker Hub.
The Build and Publish
workflow in this repository is scheduled to run
daily at 04:30 UTC, roughly 30 minutes after the
update-slicer-preview-branch
workflow in the Slicer repository publishes the nightly-main
branch.
You can also trigger the workflow manually from the GitHub UI with two inputs:
slicer_ref
: The Slicer branch or ref to build from (default:nightly-main
).force_build
: Iftrue
, rebuild and publish even if no changes were detected in SlicerDocker.
As an alternative to GitHub Actions, the original scripts can still be
used to run updates manually or with cron
.
- Download scripts
git clone https://github.com/Slicer/SlicerDockerUpdate
- Configure GitHub token used to update Slicer revision
cd SlicerDockerUpdate
echo "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" > SLICERDOCKER_GITHUB_TOKEN
- Initialize
./setup.sh
- Add a crontab entry
0 21 * * * /bin/bash /home/kitware/Packaging/SlicerDockerUpdate/cronjob.sh >/home/kitware/Packaging/SlicerDockerUpdate/cronjob-log.txt 2>&1
It is covered by the Apache License, Version 2.0: