Skip to content

Iss 3987 interactive gh create release#4525

Merged
samcoe merged 14 commits intocli:trunkfrom
sguzmanm:ISS-3987-interactive-gh-create-release
Dec 8, 2021
Merged

Iss 3987 interactive gh create release#4525
samcoe merged 14 commits intocli:trunkfrom
sguzmanm:ISS-3987-interactive-gh-create-release

Conversation

@sguzmanm
Copy link
Contributor

Creates an interactive command for gh create release that tries to predict the next version of the release if it uses semantic versioning and appends the prerelease text and build number for the current version if needed. So far the terminal looks like this:

  • Select tag name question:
    image
  • Full questionnaire:
    image
  • Release created in github:
    image

Tried to follow the standards in: https://semver.org/

Also this PR adds some unit tests to the "create release" interactive commands since they were missing :/

Fixes #3987

@sguzmanm sguzmanm requested a review from a team as a code owner October 15, 2021 02:04
@sguzmanm sguzmanm requested review from samcoe and removed request for a team October 15, 2021 02:04
- Adjust logic in create command to be interactive if no args provided
- Add tests for executing interactive console for create release cmd
- Add new method for running command in CLI using existing samples
- Add new method to stub all questions during tests as requested
@sguzmanm sguzmanm force-pushed the ISS-3987-interactive-gh-create-release branch from 1dcb51b to 81f1afd Compare October 17, 2021 21:43
Copy link
Contributor

@samcoe samcoe left a comment

Choose a reason for hiding this comment

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

@sguzmanm Thanks for the contribution! This is starting to come along nicely. My major reservations about the current approach are it complexity and non-deterministic behavior based on a projects versioning scheme. I left more details in the comments and laid out an alternative approach I think we should take. I would like to hear what my @mislav @vilmibm think so that we can come together on best approach going forward.

@samcoe samcoe self-assigned this Oct 21, 2021
@sguzmanm
Copy link
Contributor Author

@samcoe any updates on this pending PR?

@samcoe
Copy link
Contributor

samcoe commented Nov 22, 2021

@sguzmanm Sorry for the delayed response, after consulting with the team we have landed on going forward with the direction I laid out where we give the user a list of most recent tags and a final option to create a new tag of their choosing. We think this will lead to the most consistent behavior and also mirrors the release create options in the web UI.

@sguzmanm sguzmanm force-pushed the ISS-3987-interactive-gh-create-release branch from 3d54714 to b448b7d Compare November 29, 2021 02:30
@sguzmanm sguzmanm force-pushed the ISS-3987-interactive-gh-create-release branch from e167ebc to a23e9f3 Compare November 29, 2021 02:59
@sguzmanm
Copy link
Contributor Author

@samcoe All changes setup, I am having issues running the tests locally since there seems to be an error with some dependencies for GraphQL. If you want you can review this PR meanwhile, and maybe l'll drop an issue for this dependency management bug, cheers :)

Copy link
Contributor

@samcoe samcoe left a comment

Choose a reason for hiding this comment

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

@sguzmanm Thanks for the contribution. I merged in the latest trunk which fixed the graphql issue you encountered, additionally I pushed a commit which simplifies the implementation a bit and cleans up the tests 💅

@samcoe samcoe requested a review from mislav December 7, 2021 07:20
@samcoe samcoe merged commit 43ae0e5 into cli:trunk Dec 8, 2021
@sguzmanm
Copy link
Contributor Author

sguzmanm commented Dec 8, 2021

Hey @samcoe thx for the help, I have been sick this week, I hope to keep on contributing with you guys in the future

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

gh release create should be interactive when used without flags/args

2 participants