Skip to content

Terraform Deploy Sparta Bot #11

Terraform Deploy Sparta Bot

Terraform Deploy Sparta Bot #11

Workflow file for this run

name: Terraform Deploy Sparta Bot
on:
workflow_dispatch:
permissions:
contents: read
pull-requests: write
env:
TF_LOG: DEBUG
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
jobs:
terraform-sparta:
name: Terraform Sparta Bot
runs-on: ubuntu-latest
defaults:
run:
working-directory: tooling/sparta/terraform
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Terraform
uses: hashicorp/setup-terraform@v3
with:
terraform_version: 1.5.7
- name: Terraform Init
run: terraform init
- name: Terraform Format
run: terraform fmt -check
continue-on-error: true
- name: Terraform Validate
run: terraform validate
- name: Generate terraform.production.tfvars
run: |
cat > terraform.production.tfvars << EOF
# =============================================================================
# AWS Configuration
# =============================================================================
aws_region = "eu-west-2"
environment = "production"
# =============================================================================
# Application Secrets & Configuration
# =============================================================================
# --- Discord ---
bot_token = "${{ secrets.BOT_TOKEN }}"
bot_client_id = "1329079356785688616"
guild_id = "1144692727120937080"
# --- Ethereum ---
ethereum_host = "${{ secrets.ETHEREUM_HOST }}"
staking_asset_handler_address = "0xF739D03e98e23A7B65940848aBA8921fF3bAc4b2"
l1_chain_id = "11155111"
# --- DynamoDB ---
local_dynamo_db = false
dynamodb_local_endpoint = "http://localhost:8000"
# --- Logging ---
log_level = "debug"
log_pretty_print = false
# --- API Configuration ---
api_port = 3000
backend_api_key = "${{ secrets.BACKEND_API_KEY }}"
EOF
- name: Terraform Apply
run: terraform apply -var-file="terraform.production.tfvars" -auto-approve -input=false