Show how to run the release in GitHub workflow

Enter the new world of GitHub actions [1]/GitLab pipelines [2]. This
simplifies our end of the infrastructure considerably:

* No need any more to set up webhooks, all the relevant configuration
  is right in the workflow file.

* Does not need any infrastructure on our side any more, and thus works
  for third-party projects. They just need to set up their own secrets.

* GitHub automatically provides a temporary `GITHUB_TOKEN` with
  sufficient write access to the project to publish a release, so we
  don't need to carry around that secret. Thus if your project only
  releases to GitHub, there is zero secrets management.

Also adjust cockpituous-release a bit (update Fedora version, fix
project name copy-pasta), point to the action workflow and necessary
secrets.

Closes #380
This commit is contained in:
Martin Pitt 2020-10-13 08:04:37 +02:00 committed by Martin Pitt
parent 499eca014b
commit 2a51e057d7
3 changed files with 53 additions and 12 deletions

View file

@ -96,12 +96,12 @@ that. [Cockpituous release](https://github.com/cockpit-project/cockpituous/tree
aims to fully automate project releases to GitHub, Fedora, Ubuntu, COPR, Docker
Hub, and other places. The intention is that the only manual step for releasing
a project is to create a signed tag for the version number; pushing the tag
then triggers a GitHub webhook that calls a set of release scripts (on
Cockpit's CI infrastructure).
then triggers a [GitHub action](https://github.com/features/actions) that calls a set of release scripts.
starter-kit includes an example [cockpitous release script](./cockpituous-release)
that builds an upstream release tarball and source RPM. Please see the above
cockpituous documentation for details.
starter-kit includes an example [cockpitous release script](./cockpituous-release),
with detailed comments how to use it. There is also an
[example GitHub release action](.github/workflows/release.yml.disabled) to set
up secrets and run cockpituous.
# Further reading