Skip to content

Commit 86d1bea

Browse files
committed
Removed draft and added dev docs for releases
1 parent a9821bf commit 86d1bea

File tree

2 files changed

+44
-2
lines changed

2 files changed

+44
-2
lines changed

.travis.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ deploy:
1717
tag_name: $TRAVIS_TAG
1818
name: $TRAVIS_TAG
1919
# prerelease: $prerelease
20-
draft: true
2120
edge: true
2221
cleanup: false
2322
release_notes_file: "docs/changelog.md"

README.md

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,47 @@ Then you need to install pytest `conda install pytest pandas` and can then run t
4141
using the command `pytest`.
4242

4343
Each of the tests in the `tests` folder runs an OSeMOSYS model file and checks that
44-
the output matches a given value.
44+
the output matches a given value.
45+
46+
## Developers - Creating a new release and deploying to Github Releases
47+
48+
Creating a new release for OSeMOSYS GNU MathProg is as simple as creating a new semver
49+
compliant tag and pushing the tag to a branch. Travis CI will then run the tests, and
50+
if they pass, create the package using the `makefile` found in the root of the repository.
51+
The makefile includes the contents of the `src` and `scripts` folders, an html render of
52+
`src/README.md` and then zips them up deploying them to Github Releases and providing
53+
the contents of `docs/changelog.md` as a release description.
54+
55+
### 1. Update the changelog
56+
57+
Add a new heading with the version number you will use and include a description
58+
of the changes since the last release.
59+
60+
It can be useful to view the log of git commits since the previous release using the
61+
following command:
62+
63+
git log <yourlasttag>..HEAD
64+
65+
### 2. Run the tests locally
66+
67+
Follow the instructions provided to run the tests.
68+
69+
### 3. Create a new tag and push to Github
70+
71+
Create a new annotated tag:
72+
73+
git tag -a v1.0.0 -m "A descriptive message for the release"
74+
75+
Please follow the Semantic Versioning [guidelines](https://semver.org/).
76+
To create an alpha or beta release (pre-release) you would do the following:
77+
78+
git tag -a v1.0.0-alpha.1 -m "An alpha release"
79+
git tag -a v1.0.0-beta.1 -m "An beta release"
80+
git tag -a v1.0.0 -m "First stable official release!"
81+
82+
### 4. Check that the package is deployed successfully
83+
84+
You can follow the release process at the
85+
[Travis CI service](https://travis-ci.com/github/OSeMOSYS/OSeMOSYS_GNU_MathProg/branches).
86+
87+
Finally, check that the release appears on the [Github Releases page](https://github.com/OSeMOSYS/OSeMOSYS_GNU_MathProg/releases).

0 commit comments

Comments
 (0)