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: CHANGELOG.md
+15Lines changed: 15 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,21 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
and this project adheres to [PEP 440](https://www.python.org/dev/peps/pep-0440/)
7
7
and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
8
8
9
+
## [0.5.1]
10
+
11
+
### Added
12
+
- Added `permissions` field for every GitHub Actions job in the cookiecutter template, to address https://github.com/ASFHyP3/actions/issues/220
13
+
14
+
### Changed
15
+
- Upgraded `ASFHyP3/actions` reusable actions to `v0.18.1`.
16
+
17
+
### Removed
18
+
- Removed the `sync_pr_label` input from the call to `reusable-release.yml`, so that the default value will be used.
19
+
20
+
### Fixed
21
+
- Updated README instructions for creating a HyP3 plugin. In particular, added instructions for granting the GitHub user account (e.g. `tools-bot` for `ASFHyP3` repos) sufficient permissions for performing releases.
22
+
- The `python_version` parameter is now provided to `reusable-version-info.yml` in the `test-and-build.yml` template.
23
+
- Changed the value of the `user` parameter for `reusable-docker-ghcr.yml` from `{{ cookiecutter.github_username }}` to `{{ '${{ github.actor }}' }}`, to match the example given by the [actions README](https://github.com/ASFHyP3/actions/blob/v0.18.0/README.md#reusable-docker-ghcryml).
* If the user you provided for the `github_username` prompt when running the cookiecutter
128
+
does not already have access to all repos at the organization level,
129
+
add the user under "Direct access" with `Role: write`.
130
+
For https://github.com/ASFHyP3 repos, you should add the `ASFHyP3/automation` team here,
131
+
which includes the `tools-bot` user.
132
+
3. In "Branches", add a "classic branch protection rule" for:
133
+
*`main`:
134
+
* set "Branch name pattern" to `main`
135
+
* enable "Require a pull request before merging"
136
+
* enable "Require approvals"
137
+
* enable "Dismiss stale pull request approvals when new commits are pushed"
138
+
* enable "Require status checks to pass before merging"
139
+
* enable "Require branches to be up to date before merging"
140
+
* specify the status checks that you want to be required before merging
141
+
* enable "Do not allow bypassing the above settings"
142
+
* enable "Restrict who can push to matching branches"
143
+
* confirm that this defaults to "Organization administrators, repository administrators, and users with the Maintain role."
144
+
*`develop`:
145
+
* set "Branch name pattern" to `develop`
146
+
* enable "Require a pull request before merging"
147
+
* enable "Require approvals"
148
+
* enable "Dismiss stale pull request approvals when new commits are pushed"
149
+
* enable "Allow specified actors to bypass required pull requests"
150
+
* Add the user that you provided for the `github_username` prompt when running the cookiecutter.
151
+
This is required for allowing the [`reusable-release.yml`](https://github.com/ASFHyP3/actions/#reusable-releaseyml)
152
+
workflow to merge `main` back into `develop` after a release.
153
+
For https://github.com/ASFHyP3 repos, you should add the `ASFHyP3/automation` team here,
154
+
which includes the `tools-bot` user.
155
+
* enable "Do not allow bypassing the above settings"
156
+
* enable "Restrict who can push to matching branches"
157
+
* confirm that this defaults to "Organization administrators, repository administrators, and users with the Maintain role."
158
+
* Add the user that you provided for the `github_username` prompt when running the cookiecutter.
159
+
For https://github.com/ASFHyP3 repos, you should add the `ASFHyP3/automation` team here,
160
+
which includes the `tools-bot` user.
150
161
151
162
For more information on how to contribute to repositories set up in this manner,
152
-
check out GitHub's [GitHub flow](https://docs.github.com/en/get-started/quickstart/github-flow)
153
-
article
163
+
check out GitHub's [GitHub flow](https://docs.github.com/en/get-started/quickstart/github-flow) article.
154
164
155
165
### 6. Create a personal access key for GitHub Actions
156
166
@@ -184,15 +194,9 @@ So, if it doesn't already exist, we will need to create the token.
184
194
This access token will regularly expire unless you set them to last forever (which we don't recommend)
185
195
so make sure to keep the token current and the secret up to date!
186
196
187
-
### 7. Restart the GitHub Actions
197
+
### 7. Make HyP3 plugin container public
188
198
189
-
Now you're all setup! You should be able to navigate to your repository "Actions",
190
-
restart the failed Workflows on `develop`, and watch it create minimal HyP3 plugin
191
-
container for your process.
192
-
193
-
### 8. Make HyP3 plugin container public
194
-
195
-
Once the Actions have successfully run, a containerized version of your plugin will be
199
+
Once the "Test and build" GitHub Actions workflow has successfully run, a containerized version of your plugin will be
196
200
available in the GitHub Container Registry (GHCR). You can find this plugin in the "Packages"
197
201
section of your GitHub user/organization account. You can also `pull` it to your local
198
202
machine for use using the command:
@@ -203,16 +207,14 @@ GHCR containers are private by default. You'll need to manually change the visib
203
207
your container to "Public" so that HyP3 can access it. See this [GitHub Documentation](https://docs.github.com/en/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility#configuring-visibility-of-packages-for-your-personal-account)
204
208
for a step-by-step guide.
205
209
206
-
##Screenshots
210
+
### 8. Initial release
207
211
208
-
### PR Rules
209
-

212
+
After you've developed the basic functionality of your plugin,
213
+
perform an initial release by opening and merging a PR from `develop` to `main`.
214
+
This should create a `v0.1.0` release, assuming you did not change the `[0.1.0]` heading
215
+
in the [CHANGELOG](./{{cookiecutter.__project_name}}/CHANGELOG.md).
0 commit comments