Skip to content

Notes for project maintainers

Paul Jolly edited this page Jul 15, 2021 · 31 revisions

Below is a random collection of notes for project maintainers.

Releases

  • A release is created by creating a semver tag in the GerritHub repository. This is most simply done via the Gerrit tag UI. This tag will then replicate to GitHub, at which point the release workflow will be triggered. This workflow is responsible for creating the release assets, Docker images etc. Release notes should then be manually added to the corresponding GitHub release.

GitHub

  • The contribution guide describes the workflow for both Gerrit-based and GitHub PR-based contributions. The GerritHub repository is the source of truth for the CUE project, and as such GitHub PRs should not be merged. Rather, they must be imported via the GerritHub UI. Unfortunately, there is no means (correct at the time of writing, 2021/07/15) by which we can prevent PRs from being merged, so we just have to "be careful". If a PR does get merged accidentally, all that is required is a force-push of master from GerritHub to GitHub:
cd $(mktemp -d)
git clone "https://[email protected]/a/cue-lang/cue"
cd cue/
git checkout origin/master
git remote add github https://github.com/cue-lang/cue
git fetch github
git push -f github HEAD:master
Clone this wiki locally