Skip to content

chore: Bump aws-actions/configure-aws-credentials to v4 #86

chore: Bump aws-actions/configure-aws-credentials to v4

chore: Bump aws-actions/configure-aws-credentials to v4 #86

name: pre-commit & tests
env:
AWS_REGION: af-south-1
AWS_ROLE_ARN: arn:aws:iam::353444730604:role/cat-genrl-prd-infra-github-workflows
on:
workflow_dispatch:
pull_request:
branches:
- main
- master
- develop
permissions:
id-token: write
contents: read
defaults:
# Set shell for steps inside containers (default=sh)
run:
shell: bash
jobs:
#--------------------------------------------------------------
# PRE-COMMIT
#--------------------------------------------------------------
pre_commit:
name: 💍 pre-commit
# For public repos use runs-on: ubuntu-latest
# For private repos use runs-on: self-hosted
runs-on: ubuntu-latest
container: bjorncloudandthings/terraform-aws-github:latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: 3.11
- uses: hashicorp/setup-terraform@v2
- name: Install requirements
run: |
python -m venv .venv
source .venv/bin/activate
pip install pre-commit
- name: pre-commit run
run: |
source .venv/bin/activate
if [[ "${{ env.GITHUB_REPOSITORY}}" == "cloudandthings/terraform-aws-template" ]]; then
export SKIP=no-vanilla-readme
fi
echo ...running developer pre-commit checks...
pre-commit run --config .pre-commit-config.yaml --all-files --show-diff-on-failure
if [[ -f .github/.pre-commit-config.yaml ]]; then
echo ...running remote pre-commit checks...
pip install checkov
pre-commit run --config .github/.pre-commit-config.yaml --all-files --show-diff-on-failure
fi
- name: cat pre-commit log
if: failure()
run: |
LOG_FILE=~/.cache/pre-commit/pre-commit.log
[ -f $LOG_FILE ] && cat $LOG_FILE
#--------------------------------------------------------------
# TESTS
#--------------------------------------------------------------
tests:
needs: [pre_commit]
name: ✅ tests
# For public repos use runs-on: ubuntu-latest
# For private repos use runs-on: self-hosted
runs-on: ubuntu-latest
container: bjorncloudandthings/terraform-aws-github:latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: 3.11
- uses: hashicorp/setup-terraform@v2
- uses: aws-actions/configure-aws-credentials@v4
with:
aws-region: ${{ env.AWS_REGION }}
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
role-to-assume: ${{ env.AWS_ROLE_ARN }}
role-duration-seconds: 3600
- name: Install requirements
run: |
python -m venv .venv
source .venv/bin/activate
pip install -r tests/requirements.txt
- name: Run
run: |
source .venv/bin/activate
echo "::echo::off"
pytest
env:
PYTEST_ADDOPTS: "--color=yes"
timeout-minutes: 10