-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Description
see: https://k8s.dev/rename, kubernetes/org#2222
Checklist below added from kubernetes/community@198374d
Prerequisites
-
Ensure that your repo has low PR volume (<20 open PRs) and
less number of periodic jobs. The branch rename will re-trigger
prow on all open PRs, which will cause a huge spike in the CI load.- We have zero periodic jobs directly consuming this repo
- We have < 10 PRs open now (17:14 PST 2021-03-15)
-
Create an issue in your repo to track the branch rename.
You can paste this checklist in the issue body.- This is the issue
-
If you are not a root approver for the repo, assign a root
approver for approval.- I am a root approver
-
Once the issue has been approved, send a notice to your SIG's
mailing list about the potential branch rename.
Changes pre-rename
Make the following changes before renaming the branch the master
branch.
Note: There might be additional changes required that have not been
covered in this checklist.
Anytime
These changes are non-disruptive and can be made anytime before
renaming the branch.
-
If a prowjob triggers on the
master
branch (branches
field
of the prowjob), add themain
branch to the list
(see [prep kubernetes/org jobs for default branch rename kubernetes/test-infra#20665] for an example).- N/A: we only use one branch and don't specify it wherever possible
-
If the [
milestone_applier
] prow config references themaster
branch,
add themain
branch to the config (see [Prep kubernetes/k8s.io for default branch rename kubernetes/test-infra#20675] for an example).- N/A: we don't use milestone applier
-
If the [
branch_protection
] prow config references themaster
branch,
add themain
branch to the config.- N/A: we only use the automatic branch protection based on prowjobs
Just before rename
These changes are disruptive and should be made just before
renaming the branch.
-
If a prowjob mentions the
master
branch inbase_ref
,
update it to themain
branch. For a periodic job, ensure that
the branch is renamed between periodic job runs.- N/A we have no jobs that mention branches of this repo.
-
If a prowjob mentions
master
in its name, rename the job to
to not include the branch name. [status-reconciler
] should automatically
migrate the PR status contexts to the new job name but this has not been tested yet.
The job with the new name will also appear as a different job in Testgrid.- N/A we have no jobs that mention branches of this repo.
-
If a prowjob calls scripts or code in your repo that explicitly
referencemaster
, update all references to usemain
.- N/A we don't do this.
-
If the repo has netlify configured for it, ask a member of the GitHub
Management Team to rename themaster
branch tomain
in the netlify site config.
It can't be controlled through the netlify config in the repo.- We will need to do this.
- This is done.
Approval
- Once all non-disruptive tasks have been completed and disruptive tasks
have been identified, assign the GitHub Management team ([@kubernetes/owners])
for approval.
Rename the default branch
- Rename the default branch from
master
tomain
using the GitHub UI
by following the [official instructions].
Changes post-rename
After the default branch has been renamed to main
, make the following
changes.
Note: There might be additional changes required that have not been
covered in this checklist.
Prowjobs
- If a prowjob still references the
master
branch in thebranches
field,
remove themaster
branch (see [Update kubernetes/org job configs post default-branch-rename kubernetes/test-infra#20669] for an example).- N/A we have no jobs that mention branches of this repo.
Prow config
-
If the [
milestone_applier
] prow config references themaster
branch,
remove it from the config.- N/A we don't use milestone_applier here
-
If the [
branch_protection
] prow config references themaster
branch,
remove it from the config.- N/A we don't have any repo specific branch_protection config (just the automated standard configuration)
Other
-
If any docs reference the
master
branch, update tomain
(URLs will be automatically redirected).- This is done.
-
Ensure that CI and PR tests work fine.
- Look fine so far.
-
Trial the local development experience with a pre-rename clone.
- Nothing in our development experience is branch specific, I just needed to switch from master to main as expected.
-
Send a notice about the branch rename to your SIG's mailing list.
Include the link to the [GitHub instructions to rename your local branch].
/assign