Skip to content

releng - run c7n-left tests in ci #547

releng - run c7n-left tests in ci

releng - run c7n-left tests in ci #547

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:
inputs: {}
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
jobs:
Lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Set up Python
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38
with:
python-version: "3.13"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements-dev.txt
- name: Black
run: |
black --check tfparse tests
- name: Flake8
run: |
flake8 tfparse tests
LeftTests:
needs: Lint
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: CheckoutLeft
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
repository: cloud-custodian/cloud-custodian
path: custodian
- name: Set up Python
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38
with:
python-version: 3.12
- name: Set up Terraform
uses: hashicorp/setup-terraform@b9cd54a3c349d3f38e8881555d616ced269862dd
with:
terraform_wrapper: false
- name: Set up Go
uses: actions/setup-go@f111f3307d8850f501ac008e886eec1fd1932a34
with:
go-version: "1.21.5"
cache: true
cache-dependency-path: "gotfparse/go.sum"
- name: Set up Poetry
shell: bash
run: "pipx install poetry==1.5.1"
- name: Setup virtualenv
shell: bash
run: "python -m venv .venv"
- name: Activate virtualenv
run: |
echo "$PWD/.venv/bin" >> $GITHUB_PATH
echo "VIRTUAL_ENV=$PWD/.venv" >> $GITHUB_ENV
- name: Install c7n-left
shell: bash
working-directory: custodian/tools/c7n-left
run: poetry install
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements-dev.txt
- name: Install package
run: |
pip install -e .
- name: Run c7n-left tests
working-directory: custodian
run: pytest tools/c7n_left/tests
Tests:
needs: LeftTests
runs-on: ${{ matrix.runner }}
strategy:
matrix:
python-version: ["3.10", "3.11", "3.12", "3.13"]
runner: ["ubuntu-latest", "windows-latest", "macos-latest"]
exclude:
# just conserving runners by excluding older versions
- runner: macos-latest
python-version: 3.10
- runner: windows-latest
python-version: 3.10
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38
with:
python-version: ${{ matrix.python-version }}
- name: Set up Terraform
uses: hashicorp/setup-terraform@b9cd54a3c349d3f38e8881555d616ced269862dd
with:
terraform_wrapper: false
- name: Set up Go
uses: actions/setup-go@f111f3307d8850f501ac008e886eec1fd1932a34
with:
go-version: "1.21.5"
cache: true
cache-dependency-path: "gotfparse/go.sum"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements-dev.txt
- name: Install package
run: |
pip install -e .
- name: Test with pytest for Python ${{ matrix.python-version }}
run: |
pytest tests