Skip to content

Commit 65dcd7b

Browse files
committed
Update maintainers_guide.md
1 parent a170e0f commit 65dcd7b

1 file changed

Lines changed: 46 additions & 56 deletions

File tree

build/scripts/release/MAINTAINERS_GUIDE.md

Lines changed: 46 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
77
### Create a GitHub tag
88

9-
1. Get the new module version:
9+
1. **Get the new module version:**
1010

1111
To choose the new version, you can use the [Semantic Versioning](https://semver.org/) scheme. The version number is in the format `X.Y.Z`, where:
1212
- `X` is the *major* version number. Indicates significant **changes that may break backward compatibility** with previous versions (e.g., 1.0.0 to 2.0.0).
@@ -30,30 +30,30 @@
3030
$RELEASE_TAG = "v${RELEASE_VERSION}"
3131
```
3232
33-
> [!IMPORTANT]
34-
> Ensure that the new version number is not already used in the [PowerShell Gallery][ctk-psg].
35-
> If the version already exists, you will need to increment the version number.
36-
> The PowerShell Gallery does not support permanent deletion of packages.
37-
> Use the `Find-Module` command to check if the version already exists.
38-
>
39-
> ```PowerShell
40-
> Find-Module -Name containers-toolkit -AllowPrerelease -RequiredVersion "$RELEASE_VERSION" | Where-Object { $_.Version -eq $RELEASE_VERSION }
41-
> ```
42-
> Alternatively, you can use the [build/hacks/get-newversion.ps1](../../hacks/get-newversion.ps1) script to get the new version number.
43-
>
44-
> ```PowerShell
45-
> $RELEASE_TAG = build/hacks/get-newversion.ps1 -Version $NEW_VERSION -Prerelease $PRERELEASE_TAG -ReleaseType "major"
46-
> ```
47-
48-
49-
1. Create a new branch from the main branch.
33+
> [!IMPORTANT]
34+
> Ensure that the new version number is not already used in the [PowerShell Gallery][ctk-psg].
35+
> If the version already exists, you will need to increment the version number.
36+
> The PowerShell Gallery does not support permanent deletion of packages.
37+
> Use the `Find-Module` command to check if the version already exists.
38+
>
39+
> ```PowerShell
40+
> Find-Module -Name containers-toolkit -AllowPrerelease -RequiredVersion "$RELEASE_VERSION" | Where-Object { $_.Version -eq $RELEASE_VERSION }
41+
> ```
42+
>
43+
> Alternatively, you can use the [build/hacks/get-newversion.ps1](../../hacks/get-newversion.ps1) script to get the new version number.
44+
>
45+
> ```PowerShell
46+
> $RELEASE_TAG = build/hacks/get-newversion.ps1 -Version $NEW_VERSION -Prerelease $PRERELEASE_TAG -ReleaseType "major"
47+
> ```
48+
49+
2. **Create a new branch from the main branch.**
5050
5151
```bash
5252
$BRANCH_NAME = "release/$RELEASE_TAG"
5353
git checkout -b "$BRANCH_NAME"
5454
```
5555
56-
1. Cherry-pick the changes to a new branch from the main branch. The new branch name should be `release/X.Y.Z`, where `X.Y.Z` is the new version number.
56+
3. **Cherry-pick the changes to a new branch** from the main branch. The new branch name should be `release/X.Y.Z`, where `X.Y.Z` is the new version number.
5757
5858
- Identify the commit hashes you want to include. You can find them using:
5959
@@ -78,32 +78,20 @@
7878
git cherry-pick --continue
7979
```
8080
81-
1. Update the module version in the README.md file
82-
83-
*NOTE: Only update the version number in the README.md file for the latest release and not for pre-releases._*
84-
85-
1. Create a tag and a release in GitHub.
81+
4. **Create a tag and a release in GitHub.**
8682
8783
```bash
8884
git tag --sign "$RELEASE_TAG" -m "Release $RELEASE_TAG"
8985
git push upstream "$BRANCH_NAME" --tags
9086
```
9187
92-
> [!TIP]
93-
> To delete an existing tag, use the following command:
94-
>
95-
> ```bash
96-
> git tag --delete "$RELEASE_TAG"
97-
> git push upstream :refs/tags/"$RELEASE_TAG"
98-
> ```
99-
100-
<!-- > [!NOTE]
101-
> <https://github.com/orgs/community/discussions/48462>
102-
> As of February 2025, GitHub does not have the option to only create a tag without creating a release. We therefore delete the release after creating the tag.
103-
104-
```bash
105-
gh release delete -y $RELEASE_TAG
106-
``` -->
88+
> [!TIP]
89+
> To delete an existing tag, use the following command:
90+
>
91+
> ```bash
92+
> git tag --delete "$RELEASE_TAG"
93+
> git push upstream :refs/tags/"$RELEASE_TAG"
94+
> ```
10795
10896
### Create a release using the ADO release pipeline
10997
@@ -128,24 +116,26 @@ Releases are created using the Containers-Toolkit ADO release pipeline. The rele
128116
129117
This publishes the module to the [PowerShell Gallery][ctk-psg] and creates a new release in GitHub.
130118
131-
1. Verify the PowerShell Gallery release:
119+
### Verify the release
132120
133-
```PowerShell
134-
Find-Module -Name containers-toolkit -AllVersions -AllowPrerelease
135-
```
121+
1. Verify the PowerShell Gallery release:
122+
123+
```PowerShell
124+
Find-Module -Name containers-toolkit -AllVersions -AllowPrerelease
125+
```
136126
137-
> [!IMPORTANT]
138-
> If the module has any issues, unlist the version in the [PowerShell Gallery][ctk-psg].
139-
140-
1. Go to the created release in GitHub and do the following:
141-
1. update the release notes.
142-
2. Verify that all files have been uploaded correctly and the scripts are signed. There should be three files:
143-
- *containers-toolkit-<RELEASE_TAG>.tar.gz*
144-
- *containers-toolkit-<RELEASE_TAG>.zip*
145-
- *containers-toolkit-<RELEASE_TAG>.SHA256*
146-
3. By default, the release is marked as a draft. To publish the release:
147-
- Click on the **Edit** button.
148-
- If it is a pre-release, check the **Set as a pre-releasee** checkbox.
149-
- Finally, click on the **Publish release** button.
127+
> [!IMPORTANT]
128+
> If the module has any issues, unlist the version in the [PowerShell Gallery][ctk-psg].
129+
130+
2. Go to the created release in GitHub and do the following:
131+
1. Update the release notes.
132+
2. Verify that all files have been uploaded correctly and the scripts are signed. There should be three files:
133+
- *containers-toolkit-<RELEASE_TAG>.tar.gz*
134+
- *containers-toolkit-<RELEASE_TAG>.zip*
135+
- *containers-toolkit-<RELEASE_TAG>.SHA256*
136+
3. Publish the release. By default, the release is marked as a draft. To publish the release:
137+
- Click on the **Edit** button.
138+
- If it is a pre-release, check the **Set as a pre-releasee** checkbox.
139+
- Finally, click on the **Publish release** button.
150140
151141
[ctk-psg]: https://www.powershellgallery.com/packages/containers-toolkit

0 commit comments

Comments
 (0)