title |
---|
CreatingSubRepository |
This page outlines the steps that need to be done to create a new golang.org/x repository, in order for it to have the same properties as all existing golang.org/x repositories:
- a golang.org/x redirect
- automatic git mirroring from Gerrit to GitHub
- automatic importing of GitHub PRs into Gerrit CLs
- automatic testing on appropriate Go builders
- Create a new empty Gerrit repository at https://go.googlesource.com, complete with a description.
- Create an initial commit with
LICENSE
,PATENTS
,CONTRIBUTING.md
, andREADME.md
files and push it directly to the Gerrit repository. See example commit. - See the internal team instructions at go/go-gerrit#new-repository for how to create a repository.
- Create an initial commit with
- Create a new empty GitHub repository at https://github.com/golang with the same name and description.
- Turn off Wikis, Issues, Projects in repository settings.
- On "Manage access" tab:
- Add "golang org admins" team with Admin access.
- Add "google-go-team" team with Write access.
- Add "robots" team with Write access (can only be done by a maintainer of golang organization; ask someone else if you're not).
- Modify the
x/build/repos
package.- Also modify the
x/build/devapp/owners
to include the owner(s) of the new repository. (Both can be updated in one CL.)
- Also modify the
- Modify the
PROJECTS
map on luci-config branch. - Update x/website's version of x/build to include modified
x/build/repos
package.x/website/cmd/golangorg
will deploy automatically on CL submission.
- Redeploy all affected commands (or ask an x/build owner to deploy if you're not; the order shouldn't matter):
x/build/cmd/gitmirror
x/build/maintner/maintnerd
- Note that it's expected for the new repo not to appear in maintner until first issue or PR is created (see #25744).
x/build/cmd/gerritbot
x/build/devapp
- You're done.