Skip to content

Commit

Permalink
adding config + pipeline
Browse files Browse the repository at this point in the history
  • Loading branch information
ConnorOKane-Kainos committed Jul 5, 2024
1 parent 8da493d commit bb19213
Showing 1 changed file with 55 additions and 22 deletions.
77 changes: 55 additions & 22 deletions .github/workflows/pipeline.yaml
Original file line number Diff line number Diff line change
@@ -1,61 +1,94 @@
name: Rule Sets Pipeline

on:
pull_request:
branches:
- rule-sets-DTSPO-17918
push:
branches:
- rule-sets-DTSPO-17918

permissions:
id-token: write
contents: read

jobs:
plan-and-apply:
plan:
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
- name: Checkout code
uses: actions/checkout@v2

- name: Log in to Azure
uses: azure/login@v1
with:
creds: ${{ secrets.AZURE_CREDENTIALS }}

- name: Setup Terraform
uses: hashicorp/setup-terraform@v1

- name: Change directory to Terraform config
run: cd components

- name: Initialize Terraform
working-directory: components
with:
terraform_version: 1.5.7

- name: Initialize and Plan Terraform
working-directory: ./components
env:
ARM_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
ARM_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
ARM_SUBSCRIPTION_ID: ${{ secrets.DCD_CFT_SANDBOX_SUBSCRIPTION }}
ARM_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}
run: |
terraform init \
-backend-config="resource_group_name=rule-set-rg" \
terraform init -backend-config="resource_group_name=rule-set-rg" \
-backend-config="storage_account_name=rulesetsa" \
-backend-config="container_name=tfstate" \
-backend-config="key=terraform.tfstate"
- name: Plan and Apply Terraform
working-directory: components
terraform plan -out=tfplan \
-var="location=UK South" \
-var="override_action=plan" \
-var="github_token=${{ secrets.PAT_TOKEN }}"
- name: Upload Terraform plan
uses: actions/upload-artifact@v2
with:
name: tfplan
path: components/tfplan

apply:
runs-on: ubuntu-latest
needs: plan
timeout-minutes: 60
steps:
- name: Checkout code
uses: actions/checkout@v2

- name: Log in to Azure
uses: azure/login@v1
with:
creds: ${{ secrets.AZURE_CREDENTIALS }}

- name: Setup Terraform
uses: hashicorp/setup-terraform@v1
with:
terraform_version: 1.5.7

- name: Download Terraform plan
uses: actions/download-artifact@v2
with:
name: tfplan
path: components

- name: Initialize and Apply Terraform
working-directory: ./components
env:
ARM_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
ARM_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
ARM_SUBSCRIPTION_ID: ${{ secrets.DCD_CFT_SANDBOX_SUBSCRIPTION }}
ARM_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}
run: |
terraform plan -out=tfplan \
-var="location=UK South" \
-var="override_action=plan" \
-var="github_token=${{ secrets.PAT_TOKEN }}"
terraform apply -auto-approve tfplan
terraform init -backend-config="resource_group_name=rule-set-rg" \
-backend-config="storage_account_name=rulesetsa" \
-backend-config="container_name=tfstate" \
-backend-config="key=terraform.tfstate"
terraform apply -auto-approve tfplan

0 comments on commit bb19213

Please sign in to comment.