aboutsummaryrefslogtreecommitdiffstats
path: root/.github/workflows
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/deploy.yml37
-rw-r--r--.github/workflows/on-commit.yml50
2 files changed, 87 insertions, 0 deletions
diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
new file mode 100644
index 0000000..372d0b3
--- /dev/null
+++ b/.github/workflows/deploy.yml
@@ -0,0 +1,37 @@
+name: deploy-terraform
+
+on:
+ push:
+ branches:
+ - test-ci/** # Adjust the branch based on our deployment strategy
+
+jobs:
+ deploy-terraform:
+ name: Deploy Terraform
+ runs-on: ubuntu-latest
+ environment: test-env
+ steps:
+ - name: Checkout Repo
+ uses: actions/checkout@v4
+
+ - name: Install Terraform
+ uses: hashicorp/setup-terraform@v3
+
+ - name: Configure AWS Credentials
+ uses: aws-actions/configure-aws-credentials@v4
+ with:
+ aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
+ aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
+ aws-region: ${{ secrets.AWS_REGION }}
+
+ - name: Terraform Init
+ working-directory: terraform
+ run: terraform init
+
+ - name: Terraform Plan
+ working-directory: terraform
+ run: terraform plan
+
+ - name: Terraform Apply
+ working-directory: terraform
+ run: terraform apply --auto-approve \ No newline at end of file
diff --git a/.github/workflows/on-commit.yml b/.github/workflows/on-commit.yml
new file mode 100644
index 0000000..fd9ffb8
--- /dev/null
+++ b/.github/workflows/on-commit.yml
@@ -0,0 +1,50 @@
+name: commit-qc-checks
+
+on:
+ push:
+ branches-ignore:
+ - 'main'
+
+jobs:
+ python-quality-checks:
+ runs-on: ubuntu-latest
+ steps:
+ - uses : actions/checkout@v4
+ - name : 'Python: Setup'
+ uses : actions/setup-python@v5
+ with:
+ python-version: 3.11
+ - name : 'Python: Install Dependencies'
+ run: |
+ python -m pip install --upgrade pip
+ pip install flake8 pylint black bandit safety
+ continue-on-error: true
+ - name : 'Python: Linting'
+ run: |
+ flake8 .
+ find . -name "*.py" | xargs pylint
+ continue-on-error: true
+ - name : 'Python: Formatting'
+ run: |
+ black --check .
+ continue-on-error: true
+ terraform-quality-checks:
+ runs-on: ubuntu-latest
+ steps:
+ - uses : actions/checkout@v4
+ - name: 'Terraform: Setup'
+ uses: hashicorp/setup-terraform@v3
+ with:
+ terraform_version: latest
+ - name: 'Terraform: Formatting'
+ working-directory: terraform
+ run: terraform fmt -check -recursive
+ continue-on-error: true
+ - name: 'Terraform: Initialise'
+ working-directory: terraform
+ run: terraform init -backend=false
+ continue-on-error: true
+ - name: 'Terraform: Validate'
+ working-directory: terraform
+ run: terraform validate
+ continue-on-error: true \ No newline at end of file
git.ajschof.me — hosted by ajschofield — powered by cgit