Skip to content

feat(release): add --docs-only flag to perform tool - #445

Merged
codyoss merged 2 commits into
googleapis:mainfrom
codyoss:docs-only
Aug 24, 2026
Merged

feat(release): add --docs-only flag to perform tool#445
codyoss merged 2 commits into
googleapis:mainfrom
codyoss:docs-only

Conversation

@codyoss

@codyoss codyoss commented Aug 4, 2026

Copy link
Copy Markdown
Member

Add the --docs-only flag to toys release perform to support the
Exit Gate two-stage release workflow, allowing documentation (YARD and
Cloud RAD) to be built and published independently of releasing the gem.

Key changes:

  • Add --docs-only flag to toys/release/perform.rb.
  • Bypass version checking, skip gem publishing, and force doc publishing
    when --docs-only is set.
  • Pass enable_docs to releaser.run in perform_release_gem.
  • Remove unused include :gems from toys/release/perform.rb to resolve
    method name collision with the :gems CLI flag.

@codyoss
codyoss force-pushed the docs-only branch 8 times, most recently from 41696ea to 54290d1 Compare August 10, 2026 16:28
Add the `--docs-only` flag to `toys release perform` to support the Exit
Gate two-stage release workflow, allowing documentation (YARD and Cloud RAD)
to be built and published independently of releasing the gem.

Key changes:
- Add `--docs-only` flag to `toys/release/perform.rb`.
- Bypass version checking, skip gem publishing, and force doc publishing
  when `--docs-only` is set.
- Remove `include :gems` from `toys/release/perform.rb` to resolve method
  name collision with the `:gems` CLI flag.
- Improve `transform_links` exception safety to ensure markdown link
  transformations are reverted even if an error occurs midway.
- Add integration tests in `test/release_perform_test.rb`.
- Add test dependencies (`toys`, `gems`, `jwt`) to `Gemfile`.
- Add `/vendor/` to `.gitignore`.
@codyoss
codyoss marked this pull request as ready for review August 10, 2026 17:10
@codyoss
codyoss requested a review from a team as a code owner August 10, 2026 17:10
@codyoss
codyoss requested a review from quartzmo August 10, 2026 17:10

@torreypayne torreypayne left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thanks for adding the new flag!

I'm wondering if we could trim this PR down to just the minimal logic required for the --docs-only flag in toys/release/perform.rb? There are a lot of modifications to the API surface to accommodate the new test pattern for Toys that you've added, and I'm thinking we might want to align on that as a group independently of the flag addition.

Comment thread .gitignore Outdated
Comment thread toys/release/perform.rb Outdated
@codyoss

codyoss commented Aug 20, 2026

Copy link
Copy Markdown
Member Author

You are right that removing the tests does simplify things quite a bit here, but it feels bad the code is untested now. I don't maintain this code nor do I profess to have any Ruby expertise so I will trust your judgement here but I would recommend with coming up with a testing strategy of some-sort for the tooling here.

@codyoss
codyoss merged commit bb0a1e5 into googleapis:main Aug 24, 2026
14 checks passed
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.

2 participants