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

ci: automate release issue creation from v1.32.0 learnings #12749

Conversation

BigLep
Copy link
Member

@BigLep BigLep commented Dec 3, 2024

This is followup to #12741 after using the script to create the Lotus release issue for v1.32.0 for Node and Miner.

The following changes were made:

  1. create-on-github flag that when not set prints out formatted output to STDOUT. This was really useful for development and debugging.
  2. Simplified rc1 and stable release date to just take a single string that conforms to a likely pattern. I found the template table with precision/confidence was too much as well as specifying all the options before.
  3. repo option so can create an issue outside of filecoin-project/lotus. This was useful for development/debugging.
  4. For each CLI argument, I'm reading in the value and validating/processing it before moving to the next.
  5. Introduced Mastermind Sprig library for template formatting convenience utilities like String contains and inline list generation.
  6. Did post processing on the formatted output to remove extra unnecessary newlines which were adding undesired vertical spacing.
  7. Removed template setup steps that are no longer applicable if the issue was created with the script.
  8. Reduced heading level of all headings so that get better distinction between headings.
  9. More clearly handle a "Node and Miner" release where steps for both are listed out.
  10. Removed a lot of the manual copy/paste steps/comments and instead let the template syntax describe what needs to be done. This allowed for reduction in copy/pasting.

Example: created #12749 with ./release create-issue --create-on-github --type both --tag 1.32.0 --level minor --network-upgrade 25 --rc1-date "Week of 2024-12-02" --stable-date "Week of 2024-12-16"

Checklist

Before you mark the PR ready for review, please make sure that:

@BigLep BigLep self-assigned this Dec 3, 2024
@BigLep BigLep requested a review from galargh December 3, 2024 07:38
@BigLep BigLep added the skip/changelog This change does not require CHANGELOG.md update label Dec 3, 2024
@BigLep BigLep marked this pull request as ready for review December 3, 2024 07:40
@BigLep BigLep mentioned this pull request Dec 3, 2024
8 tasks
Copy link
Contributor

@galargh galargh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great! Thank you for testdriving this 🙇

@galargh galargh merged commit b610bc9 into ci/release-issue-automation Dec 4, 2024
76 checks passed
@galargh galargh deleted the ci/release-issue-automation-biglep-followups branch December 4, 2024 23:45
BigLep added a commit that referenced this pull request Dec 6, 2024
* feat: automate release issue creation

* chore: run go mod tidy

* chore: organize imports in the release cmd

* fix: layout format given to the date parser

* ci: automate release issue creation from v1.32.0 learnings (#12749)

* ci: automate release issue creation from v1.32.0 learnings

* Self-review feedback from looking at #12749

* Fix String contains ordering bugs.

* chore: run gofmt

---------

Co-authored-by: galargh <[email protected]>

* fix: update workflow input parameters

* ci: use custom field types in the create issue workflow

* Update cmd/release/main.go

Co-authored-by: Rod Vagg <[email protected]>

* Update cmd/release/main.go

Co-authored-by: Rod Vagg <[email protected]>

* Incorporating rvagg@ comments

* Incorporating more feedback

---------

Co-authored-by: Steve Loeppky <[email protected]>
Co-authored-by: Rod Vagg <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
skip/changelog This change does not require CHANGELOG.md update
Projects
Status: ☑️ Done (Archive)
Development

Successfully merging this pull request may close these issues.

2 participants