Skip to content
You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
terminal

GitHub Action

Setup Exoscale

v1.0.2

Setup Exoscale

terminal

Setup Exoscale

Setup Exoscale CLI in GitHub Actions

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Setup Exoscale

uses: nhedger/[email protected]

Learn more about this action in nhedger/setup-exoscale

Choose a version

Banner

GitHub release (latest SemVer) Test Integrate

Setup Exoscale CLI in GitHub Actions

Setup Exoscale is a GitHub action that provides a cross-platform interface for setting up the Exoscale CLI in GitHub Actions runners.

Inputs

The following inputs are supported.

- name: Setup Exoscale
  uses: nhedger/setup-exoscale@v1
  with:

    # The version of the Exoscale CLI to install.
    # This input is optional and defaults to "latest".
    # Example values: "1.67.0", "latest"
    version: "latest"

    # Whether to authenticate the Exoscale CLI.
    # This input is optional and defaults to "false".
    # Example values: "true", "false"
    authenticate: false

    # The default Exoscale zone to use when authenticating the CLI.
    # This input is optional and defaults to "ch-gva-2".
    # This input is required if "authenticate" is set to "true".
    # Example values: "ch-gva-2", "de-fra-1"
    zone: "<exoscale-zone>"

    # The Exoscale account to use when authenticating the CLI.
    # This input is optional.
    # This input is required if "authenticate" is set to "true".
    # Example value: "my-account"
    account: "<exoscale-account-name>"

    # The Exoscale API key to use when authenticating the CLI.
    # This input is optional.
    # This input is required if "authenticate" is set to "true".
    # Example value: "EXOb7e97b99f76e32d36351792f"
    key: "<exoscale-api-key>"

    # The Exoscale API secret to use when authenticating the CLI.
    # This input is optional.
    # This input is required if "authenticate" is set to "true".
    # Example value: "yftnYtkmylaguBIkTGslohShq5wKHLEtcTGQbGGBGxY"
    secret: "<exoscale-api-secret>"

Examples

Basic example

Setup the latest version of the Exoscale CLI.

- name: Setup Exoscale CLI
  uses: nhedger/setup-exoscale@v1

- name: Retrieve Exoscale status
  run: exo status

Specific version

Install version 1.67.0 of the Exoscale CLI.

- name: Setup Exoscale CLI
  uses: nhedger/setup-exoscale@v1
  with:
    version: 1.67.0

- name: Retrieve Exoscale status
  run: exo status

With authentication

Install the latest version of the Exoscale CLI and authenticate it.

- name: Setup Exoscale CLI
  uses: nhedger/setup-exoscale@v1
  with:
    authenticate: true
    account: my-account
    zone: ch-gva-2
    key: ${{ secrets.EXOSCALE_KEY }}
    secret: ${{ secrets.EXOSCALE_SECRET }}

- name: List Exoscale Compute instances
  run: exo vm list

Caveats

This action makes HTTP requests to the GitHub REST API to determine the URL of the assets to download. By default, these requests are made anonymously, which means that they are subject to harsher rate limits.

GitHub-hosted macOS runners are typically subject to this issue, because most of them share a common IP address, which increases the likelihood of hitting the rate limit.

If you encounter rate limiting issues, try setting the GITHUB_TOKEN environment variable to authenticate the requests and increase the rate limit.

- name: Setup Exoscale CLI
  uses: nhedger/setup-exoscale@v1
  env:
    GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

License

The scripts and documentation in this project are licensed under the MIT License.