File: MakeRelease.html

package info (click to toggle)
shasta 0.14.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 29,636 kB
  • sloc: cpp: 82,262; python: 2,348; makefile: 222; sh: 143
file content (94 lines) | stat: -rw-r--r-- 3,506 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
<!DOCTYPE html>
<html>

<head>
<link rel=stylesheet href=style.css />
<link rel=icon href=CZI-new-logo.png />
</head>

<body>
<main>
<div class="goto-index"><a href="index.html">Table of contents</a></div>
<h1>Creating a new release</h1>

<ul>
<li>Make sure there are no outstanding commits or
pull requests that should be in the new release.
<li>Do some testing.
<li>Run <code>CheckConfigurations.py</code> 
(from the <code>shasta-install/bin</code> directory)
to check that all built-in configurations are functional.
<li>Pick a release number <code>X.Y.Z</code>
where <code>X</code>, <code>Y</code>, and <code>Z</code>
are numbers (no additional characters).
To stay consistent with
<a href='https://semver.org'>Semantic Versioning</a>,
for now stay with <code>X=0</code>.
Increment <code>Z</code> by one if only bug fixes were made, and otherwise 
increment <code>Y</code> by one and reset <code>Z</code> to zero.
In the directions below, replace <code>X.Y.Z</code>
with the release number you picked.

<li>In 
<code>shasta/.github/workflows/Build.yml</code>,
change <code>BUILD_ID</code> to <code>Shasta Release X.Y.Z</code>
in all <code>cmake</code> commands (2 instances at the time of last update of this documentation).
<li>Commit and push this change to trigger a new build on GitHub Actions.
Wait for that build to complete.
<li>Download the 3 artifacts. Unzip them and rename them to the following:
<ul>
<li><code>shasta-Linux-X.Y.Z</code>
<li><code>shasta-Ubuntu-22.04-X.Y.Z.tar</code>
<li><code>shasta-docs-X.Y.Z.tar</code>
</ul>
<li>Make sure <code>shasta-Linux-X.Y.Z</code> is executable.
<li>Build Shasta for 64-bit ARM (<code>aarch64</code>). Github Actions currently does not support ARM. So the easiest way to do this is on a Graviton2 ec2 instance in AWS as follows:
<ul>
<li><code>git clone https://github.com/paoloshasta/shasta.git
sudo ./shasta/scripts/InstallPrerequisites-Ubuntu.sh
mkdir -p shastaBuild
cd shastaBuild
cmake ../shasta -DBUILD_ID="Shasta Release X.Y.Z for 64 bit ARM"
make install/strip -j
</code></li>
<li>Download the <code>aarch64</code> Shasta binary and 
rename it to <code>shasta-Linux-ARM-X.Y.Z</code>,
then make sure it is executable. </li>
</ul>
</li>


<li>Create release notes in markdown format. 
This is 
<a href="https://markdownlivepreview.com/">a web page</a> that can be used to review  
the release notes before posting on GitHub. 
Just paste the markdown to the left pane.
<ul>
<li>Include the minimum kernel version for each binary in the notes.
You can find this by running the `file` command (`file /path/to/shasta-*-X.Y.Z`)	
</ul>

<li>Create the release on GitHub and paste the release notes.
The release name should be just/simply <code>X.Y.Z</code>
(no additional characters). Specify the tag to be created, also
<code>X.Y.Z</code> without any additional characters.
The release will not be visible to users until it gets published
two steps below.
<li>Upload the unzipped and renamed artifacts (4) to the new release as assets.

<li>Publish the release on GitHub.
<li>After the release has been published it should not be modified or deleted.
<li>In 
<code>shasta/.github/workflows/Build.yml</code>,
change <code>BUILD_ID</code> to 
<code>Shasta unreleased test build newer than release X.Y.Z</code>
in all <code>cmake</code> commands for future GitHub Actions builds
(2 instances at the time of last update of this documentation).
</ul>


<div class="goto-index"><a href="index.html">Table of contents</a></div>
</main>
</body>
</html>