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

chore(release): add automated github releases for workflow #413

Closed

Conversation

charliedmcb
Copy link
Collaborator

@charliedmcb charliedmcb commented Jun 19, 2024

Fixes #388

Description
We currently have to create the github release, and its release notes manually. This additional change makes the workflow automatically create the github release and generate the release notes.

This is modeled off aws:

However, since the repo aws is using is no longer maintained:

image

I looked over the recommended substitutes, and found that I think the action-gh-release matches our current desires the best. Its closest to the old action. While the semantic-release action could be useful with some of its additional feature sets, I think for our current usage it goes above and beyond to a point we aren't currently looking for. This would require us to scope it down/not use it in the fully intended way.

This said the action-gh-release repo does have a lot of open issues. While its getting updates at what seem to be an ok cadence, and still maintained it seems like issues/fixes aren't being put through too frequently. That's my main reservation with it. Although, I still think its the correct choice for now.

This change also has some additional elements around automated pre-releases as that is something we have been currently doing, which is missing from the aws release.

How was this change tested?
Sadly there isn't a great way to test this until we are actually doing a release and running the workflow.

However, I did check the regex works correctly within bash. Although, not fully confirmed with the actual release variable.
*

Does this change impact docs?

  • Yes, PR includes docs updates
  • Yes, issue opened: #
  • No

Release Note

NONE

@coveralls
Copy link

coveralls commented Jun 19, 2024

Pull Request Test Coverage Report for Build 9587148810

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • 2 unchanged lines in 1 file lost coverage.
  • Overall coverage decreased (-0.005%) to 97.761%

Files with Coverage Reduction New Missed Lines %
pkg/cache/unavailableofferings.go 2 95.45%
Totals Coverage Status
Change from base Build 9587074007: -0.005%
Covered Lines: 36284
Relevant Lines: 37115

💛 - Coveralls

@coveralls
Copy link

coveralls commented Jun 19, 2024

Pull Request Test Coverage Report for Build 9588058498

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 97.766%

Totals Coverage Status
Change from base Build 9587074007: 0.0%
Covered Lines: 36286
Relevant Lines: 37115

💛 - Coveralls

tallaxes
tallaxes previously approved these changes Jun 19, 2024
Copy link
Collaborator

@tallaxes tallaxes left a comment

Choose a reason for hiding this comment

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

Overall LGTM (subject to testing). One concern: While there is value in aligning with AWS provider, marvinpinto/actions is no longer maintained. The author recommends semantic-release or action-gh-release. I wonder how hard it would be to move to one of those instead (maybe together with AWS provider)?

@tallaxes tallaxes added the area/release Issues or PRs related to releasing label Jun 19, 2024
@charliedmcb
Copy link
Collaborator Author

Overall LGTM (subject to testing). One concern: While there is value in aligning with AWS provider, marvinpinto/actions is no longer maintained. The author recommends semantic-release or action-gh-release. I wonder how hard it would be to move to one of those instead (maybe together with AWS provider)?

Good callout. I'll take a look over those other options and how they would align here. Can share over with aws too if I find anything.

@charliedmcb charliedmcb changed the title chore(release): add automated github releases for workflow Test lint Jun 20, 2024
@coveralls
Copy link

coveralls commented Jun 20, 2024

Pull Request Test Coverage Report for Build 9604398468

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • 2 unchanged lines in 1 file lost coverage.
  • Overall coverage decreased (-0.006%) to 97.758%

Files with Coverage Reduction New Missed Lines %
pkg/cache/unavailableofferings.go 2 95.45%
Totals Coverage Status
Change from base Build 9603102120: -0.006%
Covered Lines: 36285
Relevant Lines: 37117

💛 - Coveralls

@charliedmcb charliedmcb changed the title Test lint chore(release): add automated github releases for workflow Jun 20, 2024
Charlie McBride added 2 commits June 24, 2024 16:40
…b.com:Azure/karpenter into charliedmcb/automatedGithubReleasesInWorkflow
@coveralls
Copy link

coveralls commented Jun 24, 2024

Pull Request Test Coverage Report for Build 9653958755

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 97.764%

Totals Coverage Status
Change from base Build 9621914521: 0.0%
Covered Lines: 36287
Relevant Lines: 37117

💛 - Coveralls

@coveralls
Copy link

coveralls commented Jun 24, 2024

Pull Request Test Coverage Report for Build 9654039110

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 97.764%

Totals Coverage Status
Change from base Build 9621914521: 0.0%
Covered Lines: 36287
Relevant Lines: 37117

💛 - Coveralls

@rakechill
Copy link
Contributor

rakechill commented Jun 27, 2024

While the semantic-release action could be useful with some of its additional feature sets, I think for our current usage it goes above and beyond to a point we aren't currently looking for. This would require us to scope it down/not use it in the fully intended way.

@charliedmcb Do you think it would be more complex to understand this tool? From my perspective, additional feature sets that we don't use shouldn't impact us? And could potentially be more useful in the long term. Maybe I'm misunderstanding your reservations, though.

This said the action-gh-release repo does have a lot of open issues. While its getting updates at what seem to be an ok cadence, and still maintained it seems like issues/fixes aren't being put through too frequently.

Does it seem like semantic-release also has some of these maintenance concerns?

@charliedmcb
Copy link
Collaborator Author

@charliedmcb Do you think it would be more complex to understand this tool? From my perspective, additional feature sets that we don't use shouldn't impact us? And could potentially be more useful in the long term. Maybe I'm misunderstanding your reservations, though.

Yea, so I could see using it within the future. However, my main reservations are that while the tool does have extra features, it also seems to be build to handle releases in a way we aren't really looking to do atm.

So, while it contains the tools we want, it also contains things that we'd want to strip away, and feels the added complexity might be excessive.

Examples:

  • It appears to release to npm, which isn't something we are currently looking to do.
  • It is meant for CI releases, which I think we don't want something that frequent yet.

Things I'd like from it:

  • Auto-generated release notes (we can get this from the other tool)
  • Auto-generation of sematic tags (looking into still leveraging this rn)
    • I hoping if its scoped down this far it might be less complexity. Also, though this I'm hoping I could gain a better understanding and we might be able to leverage more of the tool.

I so far also wasn't able to find an official github action for it, which means we'd have to make the action usage for it a bit extra complicated too.

@charliedmcb
Copy link
Collaborator Author

Does it seem like semantic-release also has some of these maintenance concerns?

Good question. It also has a lot of open issues (more so even). Its hard to fully judge though. The semantic-release repo has less open fix PRs, and seems to get slightly more regular releases, but hard to fully gauge the differences here.

@rakechill
Copy link
Contributor

Your responses make sense to me 👍
action-gh-release seems like a reasonable first step and if we need more improvements in the future or want to make this more automated after testing it for our upcoming release, then we can return to semantic-release and see if it's better.

approving for now if you want to move forward with this!

@charliedmcb
Copy link
Collaborator Author

Switching to using semantic-release, so closing this PR

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/release Issues or PRs related to releasing
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Autogenerate release notes
4 participants