File tree Expand file tree Collapse file tree 1 file changed +41
-0
lines changed
Expand file tree Collapse file tree 1 file changed +41
-0
lines changed Original file line number Diff line number Diff line change 1+ # Creating a release
2+
3+ SOP to create a new release in smtml.
4+
5+ ## Semi-automatically
6+
7+ 1 . Trigger the [ Release PR workflow] .
8+ 2 . Approve the PR and merge changes to ** main** .
9+ 3 . Locally, pull the changes and tag the latest commit with ` v[VERSION] ` , where ` VERSION ` is the version created by the workflow.
10+ 4 . Push the tag.
11+ 4 . Re-run the latest [ opam-repository CI] to automatically publish the package.
12+ 5 . Track the created PR in the opam-repository to check for CI errors or comments from maintainers.
13+
14+ ** Note** : There is a cron job in GitHub that is set to run the [ Release PR workflow] every monday at 9AM.
15+
16+ [ Release PR workflow ] : https://github.com/formalsec/smtml/actions/workflows/release.yml
17+ [ opam-repository CI ] : https://github.com/formalsec/smtml/actions/workflows/publish.yml
18+
19+ ## Manually
20+
21+ ``` sh
22+ # 1. Run the create-release.sh script:
23+ # a. If no version is specified, the create-release.sh script simply bumps the current version.
24+ ./create-release.sh
25+ # b. If specified, it will use the provided tag instead. Example:
26+ # ./create-release.sh 0.18.0
27+
28+ # 2. Approve the created PR and merge it to main.
29+
30+ # 3. Update the main branch:
31+ git switch main
32+ git fetch --all
33+ git rebase
34+
35+ # 4. Create the tag:
36+ git tag -a vVERSION # Where VERSION is the desired version
37+ git push -u origin vVERSION
38+
39+ # 5. Publish new version to the opam-repository:
40+ ./publish.sh
41+ ```
You can’t perform that action at this time.
0 commit comments