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
vesctlbinary and expose its STDOUT, STDERR, and exit code as outputs namedstdout,stderr, andexitcoderespectively. (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@v1A specific version of Volterra CLI can be installed.
steps:
- uses: clhain/setup-volterra@v1
with:
vesctl_version: 0.2.24Credentials 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: falseSubsequent 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 thevesctlbinary and expose its STDOUT, STDERR, and exit code as outputs namedstdout,stderr, andexitcoderespectively. 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 thevesctlbinary. -
stderr- The STDERR stream of the call to thevesctlbinary. -
exitcode- The exit code of the call to thevesctlbinary.
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.