Skip to content

feat: scaleway provider upgrade #84

feat: scaleway provider upgrade

feat: scaleway provider upgrade #84

Workflow file for this run

name: deploy
on:
workflow_dispatch:
push:
paths:
- wm-infra/**
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
environment: production
concurrency:
group: deploy_production
cancel-in-progress: true
steps:
- uses: hashicorp/setup-terraform@v2
with:
terraform_version: "1.5.7"
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10.7'
- name: Checkout
uses: actions/checkout@v3
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
working-directory: wm-infra
- name: Output versions
run: |
terraform version
python --version
ansible-playbook --version
- name: Terraform init
run: terraform init
working-directory: wm-infra/deploy/prod
env:
AWS_REGION: fr-par
AWS_ACCESS_KEY_ID: ${{ secrets.SCW_ACCESS_KEY }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.SCW_SECRET_KEY }}
- name: Add SSH key
env:
SSH_AUTH_SOCK: /tmp/ssh_agent.sock
run: |
mkdir -p /home/runner/.ssh
ssh-keyscan ${{ secrets.SERVICE_FQDN }} >> /home/runner/.ssh/known_hosts
echo "${{ secrets.SCW_SSH_KEY }}" > /home/runner/.ssh/id_rsa_ishtanzar
chmod 600 /home/runner/.ssh/id_rsa_ishtanzar
ssh-agent -a $SSH_AUTH_SOCK > /dev/null
ssh-add /home/runner/.ssh/id_rsa_ishtanzar
- name: Terraform apply
run: |
export ANSIBLE_MITOGEN=$(python -c "import ansible_mitogen as _; print(_.__path__[0])")
export ANSIBLE_STRATEGY_PLUGINS=${ANSIBLE_MITOGEN}/plugins/strategy
export ANSIBLE_STRATEGY=mitogen_linear
terraform apply -auto-approve
working-directory: wm-infra/deploy/prod
env:
SCW_ACCESS_KEY: ${{ secrets.SCW_ACCESS_KEY }}
SCW_SECRET_KEY: ${{ secrets.SCW_SECRET_KEY }}
SCW_DEFAULT_PROJECT_ID: ${{ secrets.SCW_DEFAULT_PROJECT_ID }}
SCW_SSH_KEY_ID: ${{ secrets.SCW_SSH_KEY_ID }}
SCW_TOKEN: ${{ secrets.SCW_SECRET_KEY }}
SCW_REGION: fr-par
TF_VAR_gandi_key: ${{ secrets.GANDI_KEY }}
TF_VAR_scw_ssh_key_id: ${{ secrets.SCW_SSH_KEY_ID }}
AWS_REGION: fr-par
AWS_ACCESS_KEY_ID: ${{ secrets.SCW_ACCESS_KEY }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.SCW_SECRET_KEY }}
FOUNDRY_VERSION: 0.8.9
FOUNDRY_BUCKET_ACCESS_KEY_ID: ${{ secrets.FOUNDRY_BUCKET_ACCESS_KEY_ID }}
FOUNDRY_BUCKET_SECRET_ACCESS_KEY: ${{ secrets.FOUNDRY_BUCKET_SECRET_ACCESS_KEY }}
FOUNDRY_S3_ACCESS_KEY_ID: ${{ secrets.FOUNDRY_S3_ACCESS_KEY_ID }}
FOUNDRY_S3_SECRET_KEY: ${{ secrets.FOUNDRY_S3_SECRET_KEY }}
INFLUXDB_ADMIN_SECRET: ${{ secrets.INFLUXDB_ADMIN_SECRET }}
INFLUXDB_ADMIN_TOKEN: ${{ secrets.INFLUXDB_ADMIN_TOKEN }}
DISCORD_BOT_SECRET: ${{ secrets.DISCORD_BOT_SECRET }}
DISCORD_OWNER_ID: ${{ secrets.DISCORD_OWNER_ID }}
DISCORD_BOT_PUBLIC_KEY: ${{ secrets.DISCORD_BOT_PUBLIC_KEY }}
DISCORD_AWS_ACCESS_KEY_ID: ${{ secrets.DISCORD_AWS_ACCESS_KEY_ID }}
DISCORD_AWS_SECRET_KEY: ${{ secrets.DISCORD_AWS_SECRET_KEY }}
DISCORD_AWS_REGION: eu-west-3
OAUTH_CLIENT: ${{ secrets.OAUTH_CLIENT }}
OAUTH_SECRET: ${{ secrets.OAUTH_SECRET }}
KOFI_VERIFICATION: ${{ secrets.KOFI_VERIFICATION }}
KANKA_TOKEN: ${{ secrets.KANKA_TOKEN }}
KANKA_CAMPAIGN: ${{ secrets.KANKA_CAMPAIGN }}
KANKA_OAUTH_CLIENT: ${{ secrets.KANKA_OAUTH_CLIENT }}
KANKA_OAUTH_SECRET: ${{ secrets.KANKA_OAUTH_SECRET }}
JWT_SHARED_KEY: ${{ secrets.JWT_SHARED_KEY }}
FOUNDRY_ADMIN_KEY: ${{ secrets.FOUNDRY_ADMIN_KEY }}
BACKUP_S3_ENDPOINT: https://s3.fr-par.scw.cloud