https://github.com/stack-spot/runtime-manager-action
StackSpot Action to manage Self Hosted runs
https://github.com/stack-spot/runtime-manager-action
all-os-supported cloud-runtime code github-actions maintain self-hosted stackspot
Last synced: 10 months ago
JSON representation
StackSpot Action to manage Self Hosted runs
- Host: GitHub
- URL: https://github.com/stack-spot/runtime-manager-action
- Owner: stack-spot
- License: apache-2.0
- Created: 2023-09-15T14:04:17.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-02-18T15:01:13.000Z (11 months ago)
- Last Synced: 2025-02-18T15:30:50.023Z (11 months ago)
- Topics: all-os-supported, cloud-runtime, code, github-actions, maintain, self-hosted, stackspot
- Language: Python
- Homepage: https://www.stackspot.com/
- Size: 161 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# runtime-manager-action
[](https://github.com/stack-spot/runtime-manager-action/actions/workflows/action-test-ubuntu.yaml) [](https://github.com/stack-spot/runtime-manager-action/actions/workflows/action-test-macos.yaml) [](https://github.com/stack-spot/runtime-manager-action/actions/workflows/action-test-windows.yaml)
GitHub action to authenticate and consume StackSpot Runtime API.
_**Note**: This action is supported on all runners operating systems (`ubuntu`, `macos`, `windows`)_
## 📚 Usage
### Requirements
To get the account keys (`CLIENT_ID`, `CLIENT_KEY` and `CLIENT_REALM`), please login using a **ADMIN** user on the [StackSpot Portal](https://stackspot.com), and generate new keys at [https://stackspot.com/en/settings/access-token](https://stackspot.com/en/settings/access-token).
### Use Case
```yaml
steps:
- uses: stack-spot/runtime-manager-action@v2.1
id: run
with:
CLIENT_ID: ${{ secrets.CLIENT_ID }}
CLIENT_KEY: ${{ secrets.CLIENT_KEY }}
CLIENT_REALM: ${{ secrets.CLIENT_REALM }}
WORKSPACE: my_workspace
ENVIRONMENT: my_environment
VERSION_TAG: my_tag
TF_STATE_BUCKET_NAME: my_bucket
TF_STATE_REGION: region
IAC_BUCKET_NAME: my_bucket
IAC_REGION: region
VERBOSE: true # not mandatory
BRANCH: main # not mandatory
OPEN_API_PATH: swagger.yaml # not mandatory
DYNAMIC_INPUTS: --key1 value1 --key2 value2
WORKDIR: ./my-folder # not mandatory
- name: Check Run Tasks Data
run: echo "Tasks = ${{ steps.run.outputs.tasks }}"
shell: bash
```
* * *
## ▶️ Action Inputs
Field | Mandatory | Default Value | Observation
------------ | ------------ | ------------- | -------------
**CLIENT_ID** | YES | N/A | [StackSpot](https://stackspot.com/en/settings/access-token) Client ID.
**CLIENT_KEY** | YES | N/A |[StackSpot](https://stackspot.com/en/settings/access-token) Client KEY.
**CLIENT_REALM** | YES | N/A |[StackSpot](https://stackspot.com/en/settings/access-token) Client Realm.
**WORKSPACE** | YES | N/A | StackSpot Workspace where the project has been registered.
**ENVIRONMENT** | YES | N/A | StackSpot Environment where the project will be deployed.
**VERSION_TAG** | YES | N/A | Deploy version tag
**TF_STATE_BUCKET_NAME** | YES | N/A | AWS S3 Bucket name where the generated tfstate files will be stored.
**TF_STATE_REGION** | YES | N/A | AWS region where the TF State will be stored (e.g: `us-east-1`).
**IAC_BUCKET_NAME** | YES | N/A | AWS S3 Bucket name where the generated IaC files will be stored.
**IAC_REGION** | YES | N/A | AWS region where the IaC will be stored (e.g: `us-east-1`).
**VERBOSE** | NO | `false` | Whether to show extra logs during execution. (e.g: `true`).
**BRANCH** | NO | N/A | Repository branch to checkout if necessary (e.g: `main`).
**OPEN_API_PATH** | NO | N/A | Path to OpenAI / Swagger file within the repository (e.g: `path/to/file.yml`)
**DYNAMIC_INPUTS** | NO | N/A | Dynamic inputs used with Jinja on IAC, informed as `--key1 value1 --key2 value2`
**WORKDIR** | NO | ./ | Path to the directory where the `.stk` is located.
* * *
## License
[Apache License 2.0](https://github.com/stack-spot/runtime-manager-action/blob/main/LICENSE)