You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: devel/release.md
+27-14Lines changed: 27 additions & 14 deletions
Original file line number
Diff line number
Diff line change
@@ -15,7 +15,11 @@ report issues. Typically, there is a single alpha or beta release, but if there
15
15
are a higher than expected number of issues there can be multiple releases
16
16
(e.g, a2 or b2).
17
17
18
-
## Create or update release branch
18
+
## 1. Update submodules
19
+
20
+
Update submodules by referring to this [link](https://github.com/kubernetes-client/python/blob/master/devel/submodules.md#update-submodule). Commit the changes and open a pull request.
21
+
22
+
## 2. Create or update release branch
19
23
20
24
The release branch name should have release-x.x format. All minor and pre-releases
21
25
should be on the same branch. To update an existing branch with master (only for
You may need to fix some conflicts. For auto-generated files, you can commit
33
37
either version. They will be updated to the current version in the next step.
34
38
35
-
## Update release tags
39
+
## 3. Update release tags
36
40
37
41
Release tags are in the "scripts/constants.py" file. These are the constants you
38
42
may need to update:
@@ -55,20 +59,29 @@ command:
55
59
scripts/update-client.sh
56
60
```
57
61
62
+
**NOTE**: If you see a lot of new or modified files under the `kubernetes/test/`
63
+
directory, delete everything except `kubernetes/test/test_api_client.py` and
64
+
`kubernetes/test/test_configuration.py`.
65
+
58
66
Commit changes (should be only version number changes) to the release branch.
59
67
Name the commit something like "Update version constants for XXX release".
60
68
61
-
***After you finished the steps above, refer to the section "Hot issues" and
69
+
***After you finished the steps above, refer to the section, "Hot issues", and
62
70
apply the manual fixes.***
63
71
64
72
```bash
65
73
git push upstream $RELEASE_BRANCH
66
74
```
67
75
68
-
## Hot issues
76
+
## 4. Hot issues
77
+
78
+
Use the `scripts/apply-hotfixes.sh` script to apply the fixes below in one step.
79
+
**As mentioned above, the script should be run after finishing the section "Update release tags". Also, ensure a clean working directory before applying the script.**
80
+
81
+
Commit the manual changes like this [PR](https://github.com/kubernetes-client/python/pull/995/commits) does.
69
82
70
83
There are some hot issues with the client generation that require manual fixes.
71
-
***The steps in this section should be performed after you finished the section "Update release tags".***
84
+
**The steps below are deprecated and only exist for documentation purposess. They should be performed using the `scripts/apply-hotfixes.sh` script mentioned above.**
72
85
73
86
1. Restore custom object patch behavior. You should apply [this commit](https://github.com/kubernetes-client/python/pull/995/commits/9959273625b999ae9a8f0679c4def2ee7d699ede)
74
87
to ensure custom object patch behavior is backwards compatible. For more
@@ -86,23 +99,23 @@ For more details, see [#974](https://github.com/kubernetes-client/python/issues/
86
99
87
100
5. Add tests for the default `Configuration` behavior (ref: https://github.com/kubernetes-client/python/pull/1303 and https://github.com/kubernetes-client/python/pull/1285). The commit [1ffa61d0650e4c93e0d7f0becd2c54797eafd407](https://github.com/kubernetes-client/python/pull/1285/commits/1ffa61d0650e4c93e0d7f0becd2c54797eafd407) should be cherry-picked.
88
101
89
-
Commit the manual changes like this [PR](https://github.com/kubernetes-client/python/pull/995/commits) does, then create your PR for review.
90
-
91
-
Alternatively, you can use the `scripts/apply-hotfixes.sh` script to apply
92
-
changes from the above functionalities. **As mentioned above the script should be run after finishing the section `Update release tags`. Also, ensure a clean working directory before applying the script**
93
-
94
-
## Change logs
102
+
## 5. CHANGELOG
95
103
96
104
Make sure the change logs are up to date [here](https://github.com/kubernetes-client/python/blob/master/CHANGELOG.md).
97
105
If they are not, follow commits added after the last release and update/commit
98
106
the change logs to master.
99
107
100
108
Then based on the release, follow one of next two steps.
101
109
102
-
## README
110
+
## 6. README
103
111
104
112
Update the compatibility matrix and maintenance status in the README file.
105
113
114
+
## Submit pull request
115
+
116
+
Typically after the you've completed steps 2-6 above you can push your changes
117
+
open a pull request against `kubernetes-client:release-x.y`
118
+
106
119
## Patch a release branch
107
120
108
121
If you are releasing a patch to an existing stable release, you should do a
@@ -188,7 +201,7 @@ If everything looks good, run this command to upload packages to pypi:
0 commit comments