Skip to content

[VAULT-38027] pipeline(active-versions): add --github-output support - #31239

Merged
ryancragun merged 1 commit into
mainfrom
ryan/vault-38027
Jul 10, 2025
Merged

[VAULT-38027] pipeline(active-versions): add --github-output support#31239
ryancragun merged 1 commit into
mainfrom
ryan/vault-38027

Conversation

@ryancragun

Copy link
Copy Markdown
Collaborator

Description

The standard JSON output of pipeline release list active-versions --format json returns the configuration in the same schema as .release/versions.hcl. While that is intended for the command, the schema itself is not easy to use with the built-in functions in Github Actions which often requires complex JQ queries to reshape the data to be useful. Instead, add a --github-output flag that will automatically write the active versions to $GITHUB_OUTPUT encoded as JSON but with multiple useful top-level keys that make utilizing it in Github Actions a breeze. This support will be utilized in future pull requests.

TODO only if you're a HashiCorp employee

  • Backport Labels: If this fix needs to be backported, use the appropriate backport/ label that matches the desired release branch. Note that in the CE repo, the latest release branch will look like backport/x.x.x, but older release branches will be backport/ent/x.x.x+ent.
    • LTS: If this fixes a critical security vulnerability or severity 1 bug, it will also need to be backported to the current LTS versions of Vault. To ensure this, use all available enterprise labels.
  • ENT Breakage: If this PR either 1) removes a public function OR 2) changes the signature
    of a public function, even if that change is in a CE file, double check that
    applying the patch for this PR to the ENT repo and running tests doesn't
    break any tests. Sometimes ENT only tests rely on public functions in CE
    files.
  • Jira: If this change has an associated Jira, it's referenced either
    in the PR description, commit message, or branch name.
  • RFC: If this change has an associated RFC, please link it in the description.
  • ENT PR: If this change has an associated ENT PR, please link it in the
    description. Also, make sure the changelog is in this PR, not in your ENT PR.

PCI review checklist

  • I have documented a clear reason for, and description of, the change I am making.
  • If applicable, I've documented a plan to revert these changes if they require more than reverting the pull request.
  • If applicable, I've documented the impact of any changes to security controls.

Examples of changes to security controls include using new access control methods, adding or removing logging pipelines, etc.

The standard JSON output of `pipeline release list active-versions
--format json` returns the configuration in the same schema as
`.release/versions.hcl`. While that is intended for the command, the
schema itself is not easy to use with the built-in functions in Github
Actions which often requires complex JQ queries to reshape the data to
be useful. Instead, add a `--github-output` flag that will
automatically write the active versions to `$GITHUB_OUTPUT` encoded as
JSON but with multiple useful top-level keys that make utilizing it in
Github Actions a breeze. This support will be utilized in future pull
requests.

Signed-off-by: Ryan Cragun <me@ryan.ec>
@ryancragun
ryancragun requested a review from a team as a code owner July 9, 2025 18:03
@ryancragun
ryancragun requested a review from hc-meredith July 9, 2025 18:03
@github-actions github-actions Bot added the hashicorp-contributed-pr If the PR is HashiCorp (i.e. not-community) contributed label Jul 9, 2025
@github-actions

github-actions Bot commented Jul 9, 2025

Copy link
Copy Markdown

CI Results:
All Go tests succeeded! ✅

@github-actions

github-actions Bot commented Jul 9, 2025

Copy link
Copy Markdown

Build Results:
All builds succeeded! ✅

@ryancragun
ryancragun merged commit 2f4167e into main Jul 10, 2025
102 checks passed
@ryancragun
ryancragun deleted the ryan/vault-38027 branch July 10, 2025 23:10
Erfankam pushed a commit to Erfankam/vault that referenced this pull request Sep 1, 2025
hashicorp#31239)

The standard JSON output of `pipeline release list active-versions
--format json` returns the configuration in the same schema as
`.release/versions.hcl`. While that is intended for the command, the
schema itself is not easy to use with the built-in functions in Github
Actions which often requires complex JQ queries to reshape the data to
be useful. Instead, add a `--github-output` flag that will
automatically write the active versions to `$GITHUB_OUTPUT` encoded as
JSON but with multiple useful top-level keys that make utilizing it in
Github Actions a breeze. This support will be utilized in future pull
requests.

Signed-off-by: Ryan Cragun <me@ryan.ec>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

hashicorp-contributed-pr If the PR is HashiCorp (i.e. not-community) contributed pr/no-changelog pr/no-milestone

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants