blob: 83cf62878fcaa94015f41630ea5a4c52193b8b4c [file] [log] [blame]
Joey Armstrong898d33d2023-08-09 09:49:57 -04001Repository: voltha-lib-go
2=========================
3
4- Tag and branch repositories (order is important)
Joey Armstronge9edbda2024-01-03 05:00:31 -05005- Update .gitreview, set defaultbranch=voltha-2.12 for commits
6- Update VERSION file to prevent future conflicts: {major}.{minor+1}.0
Joey Armstrong898d33d2023-08-09 09:49:57 -04007
8
9Release branching and tagging
10^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
11
12Releasing repository voltha-lib-go requires tag-then-release branching,
13first create a versioned tag 2.12.0-beta then create branch voltha-2.12-beta
14from the release tag.
15
16Repository tag names differ based on repository, golang repositories
17use tags with the prefix vee v1.2.3, v2.45.0
18
19.. code-block:: shell-session
20 :caption: First create a release tag
21
22 # Determine repository tagname convention (with/with-out vee)
23 git clone "ssh://gerrit.opencord.org:29418/${repo_name}.git"
24 git tag --list-tags
25
26 # ---------------------------
27 # Step 1 create a release tag
28 # ---------------------------
29 local branch_name='voltha-2.12-beta'
30 local tag_name='v2.12.0-beta'
31
32 git tag -a "$tag_name" -m "${branch_name} release"
33 git push origin "$tag_name"
34
35.. code-block:: shell-session
36 :caption: Create a release branch attached to the release tag
37
38 # ------------------------------------------------------------
39 # Step 2 - create a release branch attached to the release tag
40 # ------------------------------------------------------------
41 local branch_name='voltha-2.12-beta'
42 local tag_name='v2.12.0-beta'
43 local repo_name='voltha-lib-go'
44
45 git clone "ssh://gerrit.opencord.org:29418/${repo_name}.git"
46 git fetch --all --tags
47
48 git checkout -b "$branch_name" "tags/tag_name"
49 git push origin "$branch_name" "tags/$tag_name"
50
51See Also
52--------
53https://docs.voltha.org/master/release_notes/release_process.html
54
55
56.gitreview
57----------
58
59.. code-block:: shell-session
60 :caption: Create a release branch attached to the release tag
61
62 grep -v 'defaultbranch' .gitreview > .gitreview.tmp
63 echo "defaultbranch=voltha-2.12-beta" >> .gitreview.tmp
64 mv -f .gitreview.tmp .gitreview
65
66
67VERSION File
68^^^^^^^^^^^^
69
70Minor release version number must be incremented to prevent future conflicts
71with the patch branch.
72
73- branch=main VERSION=1.2.3
74
75 - Update VERSION to contain 1.2.4 or 1.3.0
76 - commit and merge
77
Joey Armstrong898d33d2023-08-09 09:49:57 -040078 - Update VERSION file/patch branch to contain 1.2.3.1
Joey Armstrong898d33d2023-08-09 09:49:57 -040079 - commit and merge
80
Joey Armstrong3df78342023-08-15 10:16:43 -040081
82Patch creation on release branch
83^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
84
85Note: Devs should create a dev branch for merging rather than manipulating
86the release branch directly as these instructions will.
87
88- git checkout -b voltha-2.12 tags/v2.12.0
89- git pull --ff-only origin voltha-2.12
90- git rebase -i voltha-2.12
91- git diff --name-only votlha-2.12 2>&1 | less
92- git review --reviewers foo@foo bar@bar
93
94Patch creation on release branch
95^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
96
97`docs.voltha.org - create the initial release <https://docs.voltha.org/master/release_notes/release_process.html#creating-the-initial-release>`_
98
99- git clone ssh://gerrit.opencord.org:29418/voltha-protos.git
100- git checkout -b dev_tux
101- Edit VERSION file, increment and suffix a -dev modifier
102
103 - VERSION file contains 5.4.3
104 - Increment and commit 5.4.4-dev