The clhain/setup-volterra
action is a JavaScript action that sets up Volterra CLI (vesctl) in your GitHub Actions workflow by:
- Downloading a specific version of Vesctl CLI and adding it to the
PATH
. - Configuring the Vesctl CLI configuration file with a Volterra API endpoint and API credentials.
- Installing a wrapper script to wrap subsequent calls of the
vesctl
binary and expose its STDOUT, STDERR, and exit code as outputs namedstdout
,stderr
, andexitcode
respectively. (This can be optionally skipped if subsequent steps in the same job do not need to access the results of Vesctl commands.)
It's based on the awesome Hashicorp setup-terraform action.
After you've used the action, subsequent steps in the same job can run arbitrary Vesctl commands using the GitHub Actions run
syntax. This allows most Vesctl commands to work exactly like they do on your local command line.
This action can be run on ubuntu-latest
, and macos-latest
GitHub Actions runners.
The default configuration installs the latest version of Volterra Vesctl CLI and installs the wrapper script to wrap subsequent calls to the vesctl
binary.
steps:
- uses: clhain/setup-volterra@v1
A specific version of Volterra CLI can be installed.
steps:
- uses: clhain/setup-volterra@v1
with:
vesctl_version: 0.2.24
Credentials for Vesctl can be configured.
steps:
- uses: clhain/setup-volterra@v1
with:
cli_config_credential_bundle: ${{ secrets.CRED_BUNDLE_P12_B64 }}
cli_config_credential_bundle_password: ${{ secrets.VES_P12_PASSWORD }}
The wrapper script installation can be skipped.
steps:
- uses: clhain/setup-volterra@v1
with:
vesctl_wrapper: false
Subsequent steps can access outputs when the wrapper script is installed.
steps:
- uses: clhain/setup-volterra@v1
- run: vesctl configuration list namespaces
- run: echo ${{ steps.plan.outputs.stdout }}
- run: echo ${{ steps.plan.outputs.stderr }}
- run: echo ${{ steps.plan.outputs.exitcode }}
The action supports the following inputs:
-
cli_config_credential_hostname
- (optional) The hostname of the volterra api endpoint. Defaults toconsole.ves.volterra.io
. -
cli_config_credential_bundle
- (optional) A Base64 encoded Volterra API p12 bundle to use when interacting with the api. -
cli_config_credential_bundle_password
- (optional) The password for the p12 bundle to use when interacting with the api. -
vesctl_version
- (optional) The version of Vesctl CLI to install. If no version is given, it will default tolatest
. -
vesctl_wrapper
- (optional) Whether to install a wrapper to wrap subsequent calls of thevesctl
binary and expose its STDOUT, STDERR, and exit code as outputs namedstdout
,stderr
, andexitcode
respectively. Defaults totrue
.
This action does not configure any outputs directly. However, when you set the vesctl_wrapper
input
to true
, the following outputs is available for subsequent steps that call the vesctl
binary.
-
stdout
- The STDOUT stream of the call to thevesctl
binary. -
stderr
- The STDERR stream of the call to thevesctl
binary. -
exitcode
- The exit code of the call to thevesctl
binary.
By using the software in this repository (the "Software"), you acknowledge that: (1) the Software is still in development, may change, and has not been released as a commercial product by HashiCorp and is not currently supported in any way by HashiCorp; (2) the Software is provided on an "as-is" basis, and may include bugs, errors, or other issues; (3) the Software is NOT INTENDED FOR PRODUCTION USE, use of the Software may result in unexpected results, loss of data, or other unexpected results, and HashiCorp disclaims any and all liability resulting from use of the Software; and (4) HashiCorp reserves all rights to make all decisions about the features, functionality and commercial release (or non-release) of the Software, at any time and without any obligation or liability whatsoever.