Skip to content

Release Procedure

Mike Lin edited this page Jul 20, 2024 · 12 revisions
  1. review pyproject.toml, update dependency version constraints as needed
  2. bump downloader docker image versions in default.cfg, including occasional rebuild of miniwdl_tools
  3. test alternate backends: prove -v tests/{podman,singularity,udocker}.t
  4. manual macOS testing: pytest -v --tb=short tests
  5. git tag -a vX.Y.Z on main branch
  6. push to GitHub & await CI success
  7. fast-forward release and vX.Y branches to the vX.Y.Z tag; push them to GitHub.
  8. release to PyPI: make pypi
  9. create & groom GitHub Release
  10. conda: merge the automatic PR opened on miniwdl-feedstock, updating dependency versions as needed; double-check the conda-forge build succeeds after merging.
  11. double-check documentation auto-updated, or otherwise troubleshoot Read the Docs build
  12. smoke tests:
    docker run --rm -it -v /var/run/docker.sock:/var/run/docker.sock -v /tmp:/tmp ubuntu:20.04 \
      bash -c 'apt-get -qq update && apt-get install -y python3-pip && pip3 install miniwdl && miniwdl run_self_test'
    
    docker run --rm -it -v /var/run/docker.sock:/var/run/docker.sock -v /tmp:/tmp continuumio/miniconda3 \
      bash -c 'conda install -y -c conda-forge miniwdl && miniwdl run_self_test'
    
Clone this wiki locally