Runs SKE cluster operations (wake, hibernate, reconcile, maintenance) from your workflow.
| .forgejo/workflows | ||
| .vscode | ||
| .gitignore | ||
| .prettierrc | ||
| action.yml | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
SKE Operations Action
This action calls SKE cluster operations from your pipelines.
Usage
To use this action in your workflow, reference it as a step.
The action assumes that the STACKIT CLI and jq are installed. If you're using the install-stackit-cli action, then these applications will already be installed for you.
You also require a STACKIT service account key. The key must be tied to a service account which has editor privileges on SKE resources. In the following example, the service account key is provided to the runner as a base64-encoded secret.
- name: Install STACKIT CLI
uses: https://stackit-solutions.git.onstackit.cloud/actions/install-stackit-cli@v1
- name: Set up STACKIT service account
env:
SA_KEY_B64: ${{ secrets.STACKIT_SERVICE_ACCOUNT_KEY_B64 }}
run: |
set -eo pipefail
TMP_SA_KEY_PATH="$(mktemp)"
echo "Writing STACKIT service account key to $TMP_SA_KEY_PATH"
echo "$SA_KEY_B64" | base64 -d > "$TMP_SA_KEY_PATH"
echo "STACKIT_SERVICE_ACCOUNT_KEY_PATH=$TMP_SA_KEY_PATH" >> "$GITHUB_ENV"
- name: Hibernate cluster
uses: https://stackit-solutions.git.onstackit.cloud/actions/ske-operations@v1
with:
action: hibernate
region: eu01
project-id: 01234567-89ab-cdef-0123-456789abcdef
cluster-name: foo-cluster
Inputs
action(Required): Operation to perform. Must be one of:wake,hibernate,reconcile,maintenance.region(Required): Data center region of SKE cluster.project-id(Required): STACKIT project ID.cluster-name(Required): Name of SKE cluster.timeout-seconds(Optional): Time in seconds after which target state check fails. Default is900.interval-seconds(Optional): Time in seconds between target state checks. Default is5.wait(Optional): Wait until target state of operation has been reached. Default istrue.