-
Notifications
You must be signed in to change notification settings - Fork 294
Notes for project maintainers
Paul Jolly edited this page Jul 15, 2021
·
31 revisions
Below is a random collection of notes for project maintainers.
- 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.
- 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
Given that GerritHub is the source of truth, Pull Requests need to be imported into GerritHub to be submitted as part of the usual change workflow. It's generally easier for the contributor to perform a full code in the Pull Request (familiar review-change process), and then have a CUE approver import and submit the Pull Request at the point the Pull Request would otherwise have been merged but DO NOT MERGE THE PULL REQUEST.
To import a Pull Request:
- Go to https://review.gerrithub.io/plugins/github-plugin/static/pullrequests.html;
- Choose
cue-lang
as the organisation (first dropdown); - Select
cue
as the repository; - Uncheck the "all" box in the header row to unselect all Pull Requests;
- Select the specific Pull Request you want to import;
-
+2
the CL and submit (on the basis the Pull Request has the review history).