-
Notifications
You must be signed in to change notification settings - Fork 23
[WIP] Add new branch checklist doc #188
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Fryguy
wants to merge
7
commits into
ManageIQ:master
Choose a base branch
from
Fryguy:new_branch_checklist
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
7cbddb7
Add new branch checklist doc
Fryguy 9a18760
Update docs/new_branch_checklist.md
Fryguy f13103d
Update docs/new_branch_checklist.md
Fryguy 60a2349
Update docs/new_branch_checklist.md
Fryguy 1af4c5a
Add some entries for downstream changes
Fryguy b5bb68d
Update docs/new_branch_checklist.md
Fryguy d2498a5
More changes
Fryguy File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,155 @@ | ||
| ## New Branch Checklist | ||
|
|
||
| ### Key | ||
|
|
||
| | Code | Description | Example | | ||
| |-----------------|----------------------------|-------------| | ||
| | `<branch>` | New branch name | `lasker` | | ||
| | `<Branch>` | New branch name titleized | `Lasker` | | ||
| | `<branch#>` | New branch number | `12` | | ||
| | `<nextbranch>` | Next branch name | `morphy` | | ||
| | `<NextBranch>` | Next branch name titleized | `Morphy` | | ||
| | `<nextbranch#>` | Next branch number | `13` | | ||
| | `<nextbranch>` | Next branch name | `morphy` | | ||
| | `<n+2branch>` | Unnamed N+2 branch | `N-release` | | ||
|
|
||
| ### Steps | ||
|
|
||
| 1. Pause the mirror script | ||
|
|
||
| 2. Create the new branch | ||
|
|
||
| - [X] In `manageiq-release@master` | ||
| - Update repos.yml file and add section for `<branch>` | ||
| - [X] `bin/release_branch.rb --branch <branch>` | ||
|
|
||
| 3. Prepare development for the new branch | ||
|
|
||
| - [X] Create release labels: `<branch>/yes`, `<branch>/yes?`, `<branch>/no`, `<branch>/backported`, and `<branch>/conflict`. | ||
| - [X] Update config/labels.yml with the new labels and features. Note: the new branch label is color #000000, the N-1 branch label color is #555555, the N-M branch label color is #dddddd | ||
| - [X] `bin/update_labels.rb` | ||
|
|
||
| 4. Code changes for new and master branches | ||
|
|
||
| - [X] In `manageiq@<branch>` | ||
| - [X] Update Gemfile to change the ref for manageiq_plugin, manageiq-gems-pending, and amazon_ssa_support | ||
| - [X] Update Dockerfile to change the ref to `latest-<branch>` | ||
| - [X] Update docker-assets/README.md to change the ref | ||
| - [X] Update VERSION file to `<branch>-pre` | ||
| - [X] Commit and push the changes | ||
| - [X] In `manageiq@master` | ||
| - [X] Update lib/vmdb/appliance.rb CODENAME to `<NextBranch>` | ||
| - [X] Update lib/vmdb/deprecation.rb version to `<n+2branch>` | ||
| - [X] Commit and push the changes | ||
| - [X] In `manageiq-documentation@<branch>` | ||
| - [X] Update _data/site_menu.yml URLs from `latest` to `<branch>` | ||
| - [X] Commit and push the changes | ||
| - [X] In `manageiq-documentation@master` | ||
| - [X] Update _data/site_menu.yml and remove any `prior:` entries if they exist | ||
| - [X] Commit and push the changes if they exist | ||
| - [ ] In `manageiq-api@<branch>` | ||
| - [ ] Update lib/manageiq/api/version.rb and update the version number | ||
| - [ ] Commit and push the changes | ||
| - [ ] In `manageiq-api@master` | ||
| - [ ] Update lib/manageiq/api/version.rb and update the version number | ||
| - [ ] Commit and push the changes | ||
| - [X] In `manageiq-appliance-build@<branch>` | ||
| - [X] Update bin/nightly-build.sh BRANCH to `<branch>` | ||
| - [X] Update config/ova.json `vsphere_product_version` to `<branch>` | ||
| - [X] Commit and push the changes | ||
| - [X] In `manageiq-appliance-build@master` | ||
| - [X] Update kickstarts/partials/main/repos.ks.erb `<branch#>-<branch>` to `<nextbranch#>-<nextbranch>` | ||
| - [X] Update kickstarts/partials/post/repos.ks.erb `<branch#>-<branch>` to `<nextbranch#>-<nextbranch>`, if necessary | ||
| - [X] Commit and push the changes | ||
| - [X] In `manageiq-pods@lasker` | ||
| - [X] Update all files mentioning `latest` (except the operator `pullPolicy`) to `latest-<branch>` | ||
| - [X] Update all files mentioning `master` to `<branch>` | ||
| - [X] Commit and push the changes | ||
| - [X] In `manageiq-pods@master` | ||
| - [X] Update images/manageiq-base/Dockerfile | ||
| - `<branch#>-<branch>` to `<nextbranch#>-<nextbranch>` | ||
| - `manageiq-release-<branch#>` to `manageiq-release-<nextbranch#>` | ||
| - [X] Commit and push the changes | ||
| - [X] In `manageiq-rpm_build@<branch>` | ||
| - [X] Update config/options.yml ref to `<branch>` | ||
| - [X] Ensure config/options.yml rpm.version is `<branch#>.0.0` | ||
| - [X] Commit and push the changes | ||
| - [X] In `manageiq-rpm_build@master` | ||
Fryguy marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| - [X] Build the manageiq-release RPM and upload it to the builds directory | ||
| - [X] Initial build of the RPM repo including the manageiq-release gem and other general dependencies | ||
| - [X] Update Dockerfile | ||
| - `<branch#>-<branch>` to `<nextbranch#>-<nextbranch>` | ||
| - `manageiq-release-<branch#>` to `manageiq-release-<nextbranch#>` | ||
| - [X] Update config/options.yml | ||
| - rpm.version to `<nextbranch#>.0.0` | ||
| - rpm_repository.content `<branch#>-<branch>` to `<nextbranch#>-<nextbranch>` | ||
| - rpms.manageiq and rpms.manageiq-release `<branch#>` in regex with `<nextbranch#> | ||
| - [X] Rename packages/manageiq-release/manageiq-<branch#>-<branch>.repo to manageiq-<nextbranch#>-<nextbranch>.repo | ||
| - [X] Update packages/manageiq-release/manageiq-<nextbranch#>-<nextbranch>.repo | ||
| - `<branch#>-<branch>` to `<nextbranch#>-<nextbranch>` | ||
| - [X] Update packages/manageiq-release/manageiq-release.spec | ||
| - Version to `<nextbranch#>.0` | ||
| - `<branch#>-<branch>` to `<nextbranch#>-<nextbranch>` | ||
| - Update `%changelog` | ||
| - [X] Update rpm_spec/changelog | ||
| - Update `%changelog` | ||
| - [X] Commit and push the changes | ||
Fryguy marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| - [X] Build and push the new rpm_build container to dockerhub | ||
| - [X] In `amazon_ssa_support@<branch>` | ||
| - [X] Update Gemfile to change the ref for manageiq-gems-pending | ||
| - [X] Commit and push the changes | ||
| - [X] In `container-amazon-smartstate@<branch>` | ||
| - [X] Update container-assets/Gemfile to change the ref for amazon_ssa_support and manageiq-gems-pending | ||
| - [X] Commit and push the changes | ||
| - [X] In `manageiq-providers-amazon@<branch>` | ||
| - [X] Update config/settings.yml agent_coordinator.docker_image from `latest` to `latest-<branch>` | ||
| - [X] Commit and push the changes | ||
|
|
||
| 5. Final development changes for the new branch | ||
|
|
||
| - [X] Mark the new branch as protected | ||
| - `bin/update_branch_protection.rb -b <branch>` | ||
| - [ ] Update miq-bot | ||
| - [ ] Add the new branch to each watched repo | ||
| - [X] Update the unassignable and unremovable labels for the new branch | ||
| - [X] Update triage links in https://github.com/ManageIQ/guides/blob/master/bin/triage.yml | ||
|
|
||
| 6. Prepare for the next branch | ||
|
|
||
| - [X] Create the next milestone | ||
| - [X] `bin/update_milestone.rb --title <NextBranch> --due-on "MMM dd, YYYY"` | ||
| - [X] Update https://manageiq.org/roadmap with new column `<NextBranch>` | ||
|
|
||
| 7. Unpause the mirror script and adjust mirroring for the new branch | ||
|
|
||
|
|
||
| --- | ||
|
|
||
| ### Build | ||
|
|
||
| - [X] Create a build machine for the new branch | ||
|
|
||
| - [ ] Update docker hub autobuilds for manageiq-rpm_build container and container-amazon-smartstate | ||
| - [ ] Create a new box on Vagrant Cloud | ||
|
|
||
| ### OTHER (TODO CLEANUP) | ||
|
|
||
| - [ ] Announce to talk.manageiq.org about the new branch | ||
|
|
||
| - [ ] translations person to update transifex | ||
| - [ ] translations update | ||
| - [ ] Lock down ui-classic with yarn.lock | ||
| - [ ] Lock down manageiq with Gemfile.lock | ||
| - [ ] consolidate the CHANGELOG.md file | ||
| - [ ] new documentation needed to be generated for API? | ||
| - [ ] webmaster handle new documentation for website | ||
|
|
||
| - [ ] ensure that container-httpd is locked down to a specific version of dbus_api_service | ||
| - [ ] ensure that httpd_configmap_generator is locked down to a specific version of httpd_configmap_generator | ||
|
|
||
| - [ ] should we remove unused Ruby versions from .travis.yml on new branch? | ||
|
|
||
| #### Downstream | ||
|
|
||
| - [ ] Update options.yml with new branch and version | ||
| - [ ] Update Gemfile overrides with the new branch | ||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
would it be more helpful if I have the n+2 branch name, so it is not "unnamed"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The only place it's really used is here, which is stating when deprecations are expected to be removed.
https://github.com/ManageIQ/manageiq/blob/c43b2093199bb6942318c3102371b79c03f95473/lib/vmdb/deprecation.rb#L4