Skip to content

Maintainer Guides

mikewoodward94 edited this page Aug 29, 2024 · 1 revision

Publishing a Release

Publishing a release is a mostly automated process, with the result being an updated version of the package on PyPI. However there are a few aspects to be aware of:

Prior to release it is necessary that the version number in _version.py is updated to reflect the new python package version. It is recommended that this remains in lockstep with the release numbering.

There is a GitHub action, Upload Python Package, in place that is set to be triggered upon a new release. This automatically uploads the changes to PyPI. The details of the information uploaded to PyPI can be found in setup.cfg and changes can be made here, for example descriptions, python versions, and requirements.

Updating MLflow Version

The version of MLflow that is used will need to be updated when necessary, it is important that the following steps are completed to ensure that the version is consistent across all our processes.

  • The version of MLflow used by the mlflow_server is determined in this requirements file. This will need to be updated. Following making the change, any current mlflow_server instances (for example on the headnode or locally) will need to be brought down and then rebuilt using the updated version.

  • The version of MLflow should also be updated in the main requirements.txt file for consistency.

  • Additionally, the MLflow version used by the csc-mlops python package will need to be updated. This can be updated in setup.cfg, and then the release process can be followed. Ensure that following these changes your code is using the latest version of the csc-mlops package.

Clone this wiki locally