An open API service indexing awesome lists of open source software.

https://github.com/stack-spot/runtime-deploy-action

StackSpot Action to perform DEPLOY Self Hosted run task processes
https://github.com/stack-spot/runtime-deploy-action

github-actions runtime self-hosted stackspot

Last synced: 10 months ago
JSON representation

StackSpot Action to perform DEPLOY Self Hosted run task processes

Awesome Lists containing this project

README

          

# runtime-deploy-action

[![Action test Ubuntu](https://github.com/stack-spot/runtime-github-action-ping/actions/workflows/action-test-ubuntu.yaml/badge.svg)](https://github.com/stack-spot/runtime-github-action-ping/actions/workflows/action-test-ubuntu.yaml)

GitHub action to run StackSpot Runtime Deploy Worker.

_**Note**: This action is supported on debian/RHEl like systems_

## 📚 Usage

### Requirements

### Use Case

Check how to implement the orchestration job using the [runtime-manager-action](https://github.com/stack-spot/runtime-manager-action)

```yaml
jobs:
job1:
runs-on: ubuntu-latest
needs: [orchestration]
strategy:
matrix:
task: ${{ fromJSON(needs.orchestration.outputs.tasks) }}
fail-fast: true
max-parallel: 1
steps:
- name: DEPLOY
if: contains( matrix.task.taskType , 'DEPLOY')
uses: stack-spot/runtime-deploy-action@v2.3
with:
FEATURES_LEVEL_LOG: debug
CLIENT_ID: ${{ secrets.CLIENT_ID }}
CLIENT_KEY: ${{ secrets.CLIENT_KEY }}
CLIENT_REALM: ${{ secrets.CLIENT_REALM }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_SESSION_TOKEN: ${{ secrets.AWS_SESSION_TOKEN }}
AWS_ROLE_ARN: ${{ secrets.AWS_ROLE_ARN }}
AWS_REGION: sa-east-1
REPOSITORY_NAME: my-repository-name
RUN_TASK_ID: ${{ matrix.task.runTaskId }}
CONTAINER_URL: my/container-url # not mandatory
FEATURES_TERRAFORM_MODULES: ... # not mandatory
OUTPUT_FILE: outputs_file_name.json # not mandatory
PATH_TO_MOUNT: path/to/mount
LOCALEXEC_ENABLED: true # not mandatory
TF_LOG_PROVIDER: info # not mandatory
CHECKOUT_BRANCH: 'true' # not mandatory
```

* * *

## ▶️ Action Inputs

Field | Mandatory | Observation
------------ | ------------ | -------------
**FEATURES_LEVEL_LOG** | YES | Log Level
**CLIENT_ID** | YES | [StackSpot](https://stackspot.com/en/settings/access-token) Client ID.
**CLIENT_KEY** | YES | [StackSpot](https://stackspot.com/en/settings/access-token) Client KEY.
**CLIENT_REALM** | YES | [StackSpot](https://stackspot.com/en/settings/access-token) Client Realm.
**AWS_ACCESS_KEY_ID** | NO | [AWS](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html) Access Key ID
**AWS_SECRET_ACCESS_KEY** | NO | [AWS](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html) Secret Access Key
**AWS_SESSION_TOKEN** | NO | [AWS](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html) Session Token
**AWS_ROLE_ARN** | NO | AWS IAM ROLE (necessary if AWS credentials not informed)
**AWS_REGION** | YES | AWS region where resources with be provisioned. Used for tf backend as well (e.g: `us-east-1`).
**RUN_TASK_ID** | YES | StackSpot Runtime task id to be executed, according to [runtime-manager-action](https://github.com/stack-spot/runtime-manager-action).
**REPOSITORY_NAME** | YES | Repository name to checkout during task process.
**CONTAINER_URL** | NO | Container url reference (e.g `stackspot/image`)
**FEATURES_TERRAFORM_MODULES** | NO | List of external terraform modules allowed
**PATH_TO_MOUNT** | YES | Path provided to be used as a volume within the docker image that will be used with terraform
**OUTPUT_FILE** | NO | Filename where outputs will be saved (default value: `outputs.json`)
**LOCALEXEC_ENABLED** | NO | Whether or not terraform will be enable to perform local exec operations or not (default: `false`)
**TF_LOG_PROVIDER** | NO | If there is a need to check Terraform's own log, it is now possible to pass the levels of the Terraform provider, allowing you to analyze what happens within Terraform's CLI (info, trace, debug and warn).
**CHECKOUT_BRANCH** | NO | Whether or not checkout is enabled. (default: `'false'`)

* * *

## License

[Apache License 2.0](https://github.com/stack-spot/runtime-github-action-deploy/blob/main/LICENSE)