Repository navigation
Merge pull request #21 from CoreyLeath-code/feat/aws-lambda-snowflake… #3
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: AWS Lambda + Snowflake Validation | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| contract-tests: | |
| name: Serverless and warehouse contracts | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.11' | |
| cache: pip | |
| - name: Install validation dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install 'boto3>=1.34,<2' 'pytest>=8,<10' 'ruff>=0.9,<1' | |
| - name: Lint integration code | |
| run: >- | |
| ruff check | |
| app/core/feedback_sink.py | |
| serverless/feedback_ingestion | |
| scripts/validate_aws_snowflake_assets.py | |
| tests/test_aws_snowflake_feedback.py | |
| - name: Run credential-free integration contracts | |
| run: pytest -q tests/test_aws_snowflake_feedback.py | |
| - name: Validate AWS and Snowflake assets | |
| run: python scripts/validate_aws_snowflake_assets.py | |
| terraform-validation: | |
| name: Terraform static validation | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Set up Terraform | |
| uses: hashicorp/setup-terraform@v3 | |
| with: | |
| terraform_version: '1.9.8' | |
| - name: Check Terraform formatting | |
| run: terraform fmt -check -diff -recursive infra/aws | |
| - name: Initialize providers without backend | |
| run: terraform -chdir=infra/aws init -backend=false | |
| - name: Validate Terraform | |
| run: terraform -chdir=infra/aws validate |