healthify / guides

Guides for Coding Like a Healthifyte.
1 stars 0 forks source link

Propose release-branch workflow for development, delivery, QA, and deployment #6

Closed amar47shah closed 8 years ago

amar47shah commented 8 years ago

Two outstanding tasks must be completed during this review:

  1. The Development team must read through this proposal and determine whether its recommendations should be adopted.
  2. If the proposal is to be adopted, it should be rewritten in instructional style and integrated with the retain-able pieces of the previous protocol/git/README.md, which is included here as protocol/git/outdated.md. Once the salvageable content in the old version is integrated, it should be dropped from the repo.

UPDATE: The PR has been modified to make item (2) unnecessary.

KrishnaKulkarni commented 8 years ago

Lookin good to me, though I obviously collaborated on this. Pinging @healthify/development for thoughts!

amar47shah commented 8 years ago

@healthify/development

Just pushed up a new commit that rewrites the proposal into "instructional" form.

As a result, the formulation of the problem and rationale for this solution are no longer included in the submitted changes. If you'd like to review those, you can see them in the first commit of this PR.

KrishnaKulkarni commented 8 years ago

Generally looks good but lemme know hwat you think a about the comments i left

samusgray commented 8 years ago

I added one question that I think is useful to explore. Generally speaking, this workflow looks solid to me. 💅

amar47shah commented 8 years ago

@aaronagray for some reason, I can't find the question you left!

UPDATE: Nvm, I see it now!

amar47shah commented 8 years ago

@KrishnaKulkarni: Added your idea to use a GitHub PR to merge the release's staging branch into master and automate the final delivery+deployment. I went ahead and wrote that the initial delivery to staging, when opening the PR, would also be automated, through Travis.

KrishnaKulkarni commented 8 years ago

LGTM @amar47shah

dleve123 commented 8 years ago

While I'm still generally hesitant that going introducing 2 new types of branches (release-* and stage-*) will lead to this process not being followed, I'm definitely open to trying it out!

amar47shah commented 8 years ago

@healthify/development

Next steps here:

  1. Get input from @switzersc.
  2. Merge this PR.
  3. Work with @KrishnaKulkarni to develop scripts and configuration changes to TravisCI and GitHub.
  4. At IPM, determine releases and set up release branches.

Suggestion: The first release can be an empty-change demo. We would make a card for the release, then a release branch, code review and merge in an empty development branch PR, open a release PR, stage, QA, and deploy.

switzersc commented 8 years ago

👍

amar47shah commented 8 years ago

Rebasing.

amar47shah commented 8 years ago

Merging.