Skip to content
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

Automate release management tasks #5520

Closed
schlessera opened this issue Oct 19, 2020 · 8 comments
Closed

Automate release management tasks #5520

schlessera opened this issue Oct 19, 2020 · 8 comments
Assignees
Labels
Infrastructure Changes impacting testing infrastructure or build tooling P2 Low priority WS:Core Work stream for Plugin core

Comments

@schlessera
Copy link
Collaborator

Feature description

As previously discussed, we should automate most of the tasks that are involved in creating a (major or minor) release.

The following document describes the plan of attack for doing so:
https://docs.google.com/document/d/1Co8Ik4DTPGk_8B8_aJvcArRaMHituyrZszICeQ4v2TE/edit?usp=sharing


Do not alter or remove anything below. The following sections will be managed by moderators only.

Acceptance criteria

  • All release chores that don't require human decision-making are automated away via one or more script files.

Implementation brief

  • Create a prepare-release script that generates a draft release with collected release notes and a built ZIP file, after doing a series of sanity checks.
  • Create a post-release script that deploys the updated docs to amp-wp.org and completes all administrative tasks to move to the next WIP release in the git repository.

QA testing instructions

Demo

Changelog entry

@schlessera schlessera added Infrastructure Changes impacting testing infrastructure or build tooling WS:Core Work stream for Plugin core labels Oct 19, 2020
@schlessera schlessera added this to the v2.1 milestone Oct 19, 2020
@schlessera schlessera self-assigned this Oct 19, 2020
@westonruter
Copy link
Member

See also what @swissspidy has been doing for Web Stories: GoogleForCreators/web-stories-wp#6343, GoogleForCreators/web-stories-wp#6424

@swissspidy
Copy link
Collaborator

Yay someone noticed it! :-)

I plan on documenting my setup over the next days, but those are good starting points.

@pierlon pierlon assigned pierlon and unassigned schlessera Mar 25, 2021
@jwold
Copy link
Collaborator

jwold commented Apr 1, 2021

  • PG > Working with Github CLI to find out how best to automate recurring tasks that we have been doing.
  • PG > On the toolbox repo I see Alain has a workflow for checkin. Runs a chron to check if there's a sync for the spec PR; if a PR is open. You can use Github CLI to auto merge an open PR if all checks pass. Once checks pass it immediately merges itself rather than wait an hour to recheck if open PRs. One suggestion so far.
  • PG > Putting together notes to get in sync with Weston and Alain to see if I'm on the right track. Should get those to you by end of day. Making good progress. Just want to share that update before working on the actual issue at hand.

@swissspidy
Copy link
Collaborator

  • PG > On the toolbox repo I see Alain has a workflow for checkin. Runs a chron to check if there's a sync for the spec PR; if a PR is open. You can use Github CLI to auto merge an open PR if all checks pass. Once checks pass it immediately merges itself rather than wait an hour to recheck if open PRs. One suggestion so far.

There's a built-in GitHub feature for auto-merges: https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/automatically-merging-a-pull-request

@pierlon
Copy link
Contributor

pierlon commented Apr 1, 2021

@swissspidy Yep that's what I was alluding to. One could add a step to enable auto merge for a PR:

steps:
  - name: Enable auto-merge for PR
    run: gh pr merge --auto --merge "$PR_URL"
    env:
      PR_URL: ${{github.event.pull_request.html_url}}
      GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}

@swissspidy
Copy link
Collaborator

Not exactly the same thing, but also possible 👍

@westonruter westonruter removed this from the v2.1 milestone Apr 5, 2021
@pierlon pierlon linked a pull request May 10, 2021 that will close this issue
2 tasks
@pierlon pierlon removed a link to a pull request May 10, 2021
2 tasks
@pierlon
Copy link
Contributor

pierlon commented May 10, 2021

Some release steps that can be automated independently in the interim:

  • Creating draft release
    • Generate changelog
    • Attach the amp.zip build to the release
  • Generating documentation for release branch

@westonruter westonruter added the P2 Low priority label Nov 30, 2023
@westonruter
Copy link
Member

Closing in favor of #2741

@westonruter westonruter closed this as not planned Won't fix, can't repro, duplicate, stale May 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Infrastructure Changes impacting testing infrastructure or build tooling P2 Low priority WS:Core Work stream for Plugin core
Projects
None yet
Development

No branches or pull requests

5 participants