Commit 7d532edf authored by Paul McCarthy's avatar Paul McCarthy 🚵
Browse files

DOC: Instructions for creating new develepment/public releases

parent 7381ccab
......@@ -9,10 +9,15 @@ generated from information stored in this repository, using CI rules and
scripts in the fsl/conda/manifest-rules> repository.
This repository contains two branches:
- Public FSL releases are created from tags on the `external` branch.
- Development releases are created from commits on the `external` branch.
- Internal FSL releases are created from the `master` branch
This repository contains two branches, `master` and `external`. These two
branches are used to create three different types of FSL release:
- Public FSL releases (e.g. FSL 6.0.6) are created from **tags** on the
`external` branch.
- Development releases (development versions of public releases) are created
from **commits** on the `external` branch.
- Internal FSL releases (for internal use only) are created from **commits**
on the `master` branch
## The `fslinstaller.py` script
......@@ -263,3 +268,40 @@ Release `manifest.json` files which are generated from branches will only
contain information about past official FSL releases. Release `manifest.json`
files which are generated from new tags will contain information about past
official FSL release, and also about the new FSL release.
## Development workflow
The `fsl-release.yml` file on the `master` branch should be updated as new
versions of FSL projects are released. This will result in new manifest and
environment files for internal installations to be created.
In order to create manifest and environment files for a new public FSL
release, the `fsl-release.yml` file on the `external` branch must be updated.
This can be accomplished using the following process:
1. Clone the `fsl/conda/manifest` repository locally:
```
git clone git@git.fmrib.ox.ac.uk:fsl/conda/manifest.git
cd manifest
```
2. Create a new branch off the `external` branch:
```
git checkout -b rel/6.0.7 origin/external
```
3. Merge all changes from the `master` branch onto this branch:
```
git merge origin/master
```
4. Resolve any conflicts that arise, making sure that internal-only FSL
packages are not included in the package lists.
5. Merge your branch into the `external` branch on the `fsl/conda/manifest`
GitLab repository via a merge request. This will result in new manifest
and environment files for a new development release to be created.
6. If this is a public FSL release, create a new tag on the `external` branch.
This will result in a new `manifest.json`, and environment files for the
new FSL release to be created.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment