-
Notifications
You must be signed in to change notification settings - Fork 13
47 lines (40 loc) · 1.15 KB
/
tofu.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
name: Tofu Apply
on:
push:
branches:
- main
paths:
- 'infrastructure/**'
defaults:
run:
working-directory: infrastructure/equinix-metal
jobs:
tofu:
name: OpenTofu
runs-on: ubuntu-latest
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
TF_VAR_equinix_auth_token: ${{ secrets.EQUINIX_AUTH_TOKEN }}
TF_VAR_equinix_project_id: ${{ secrets.EQUINIX_PROJECT_ID }}
TF_VAR_flux_github_token: ${{ secrets.FLUX_GITHUB_TOKEN }}
TF_VAR_k3s_token: ${{ secrets.K3S_TOKEN }}
TF_VAR_ssh_public_key: ${{ secrets.SSH_PUBLIC_KEY }}
steps:
- uses: actions/checkout@v3
- uses: opentofu/setup-opentofu@v1
- name: Add SSH key
run: |
mkdir -p ~/.ssh
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
ssh-agent -a $SSH_AUTH_SOCK > /dev/null
ssh-add ~/.ssh/id_rsa
env:
SSH_AUTH_SOCK: /tmp/ssh_agent.sock
- name: tofu init
run: tofu init
- name: tofu plan
run: tofu plan
- name: tofu apply
run: tofu apply -auto-approve