Skip to content

Commit ceb2a20

Browse files
authored
Merge pull request #29 from geerteltink/docs/update-readme
Update readme with latest changes
2 parents b8f8b10 + 647b4e9 commit ceb2a20

File tree

1 file changed

+23
-22
lines changed

1 file changed

+23
-22
lines changed

README.md

Lines changed: 23 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ to automate the automation of releases.
66

77
## Installation
88

9-
To use this automation in your own repository, copy the [`example/.github`](./examples/.github)
9+
To use this automation in your own repository, copy the [`examples/.github`](./examples/.github)
1010
workflows into your own project:
1111

1212
```sh
@@ -18,37 +18,38 @@ git add .github
1818
git commit -m "Added release automation"
1919
```
2020

21+
To get started you need to create a branch for the next release. e.g. if your next milestone will be
22+
`3.2.0` a `3.2.x` branch is required.
23+
2124
Then add following [secrets](https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets)
2225
to your project or organization:
2326

24-
* `GIT_AUTHOR_NAME` - full name of the author of your releases: can be the name of a bot account.
25-
* `GIT_AUTHOR_EMAIL` - email address of the author of your releases: can be an email address of a bot account.
26-
* `SIGNING_SECRET_KEY` - a **password-less** private GPG key in ASCII format, to be used for signing your releases:
27-
please use a dedicated GPG subkey for this purpose. Unsigned releases are not supported, and won't be supported.
28-
* `ORGANIZATION_ADMIN_TOKEN` - if you use the file from [`examples/.github/workflows/release-on-milestone-closed.yml`](examples/.github/workflows/release-on-milestone-closed.yml),
29-
then you have to provide a `ORGANIZATION_ADMIN_TOKEN`, which is a github token with administrative rights over
30-
your organization (issued by a user that has administrative rights over your project).
31-
This is required for the `laminas:automatic-releases:switch-default-branch-to-next-minor`
32-
command, because [changing default branch of a repository currently requires administrative token rights](https://developer.github.com/v3/repos/#update-a-repository).
33-
You can generate a token from your [personal access tokens page](https://github.com/settings/tokens/new).
27+
- `GIT_AUTHOR_NAME` - full name of the author of your releases: can be the name of a bot account.
28+
- `GIT_AUTHOR_EMAIL` - email address of the author of your releases: can be an email address of a bot account.
29+
- `SIGNING_SECRET_KEY` - a **password-less** private GPG key in ASCII format, to be used for signing your releases:
30+
please use a dedicated GPG subkey for this purpose. Unsigned releases are not supported, and won't be supported.
31+
- `ORGANIZATION_ADMIN_TOKEN` - if you use the file from [`examples/.github/workflows/release-on-milestone-closed.yml`](examples/.github/workflows/release-on-milestone-closed.yml),
32+
then you have to provide a `ORGANIZATION_ADMIN_TOKEN`, which is a github token with administrative rights over
33+
your organization (issued by a user that has administrative rights over your project).
34+
This is required for the `laminas:automatic-releases:switch-default-branch-to-next-minor`
35+
command, because [changing default branch of a repository currently requires administrative token rights](https://developer.github.com/v3/repos/#update-a-repository).
36+
You can generate a token from your [personal access tokens page](https://github.com/settings/tokens/new).
3437

3538
## Usage
3639

3740
Assuming your project has Github Actions enabled, each time you [**close**](https://developer.github.com/webhooks/event-payloads/#milestone)
3841
a [**milestone**](https://docs.github.com/en/github/managing-your-work-on-github/creating-and-editing-milestones-for-issues-and-pull-requests),
3942
this action will perform all following steps (or stop with an error):
4043

41-
1. determine if all issues and pull requests associated with this milestone are closed
42-
2. determine if the milestone is named with the SemVer `x.y.z` format
43-
3. create a changelog by looking at the milestone description and associated issues and pull requests
44-
4. select a branch for the release:
45-
* if a branch matching `x.y.z` exists, it will be selected
46-
* otherwise, `master` will be used
47-
5. create a tag named `x.y.z` on the selected branch, with the generated changelog
48-
6. publish a release named `x.y.z`, with the generated tag and changelog
49-
7. create (if applicable), a pull request from the selected branch to the next release branch
50-
8. create (if necessary) a "next minor" release branch `x.y+1.z`
51-
9. switch default repository branch to newest release branch
44+
1. determine if all issues and pull requests associated with this milestone are closed
45+
2. determine if the milestone is named with the SemVer `x.y.z` format
46+
3. create a changelog by looking at the milestone description and associated issues and pull requests
47+
4. select branch `x.y.z` for the release (e.g. `1.1.x` for a `1.1.0` release)
48+
5. create a tag named `x.y.z` on the selected branch, with the generated changelog
49+
6. publish a release named `x.y.z`, with the generated tag and changelog
50+
7. create (if applicable), a pull request from the selected branch to the next release branch
51+
8. create (if necessary) a "next minor" release branch `x.y+1.z`
52+
9. switch default repository branch to newest release branch
5253

5354
Please read the [`feature/`](./feature) specification for more detailed scenarios on how the tool is supposed
5455
to operate.

0 commit comments

Comments
 (0)