Merge pull request #204 from clawscli/dependabot/github_actions/actio… #175
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: Integration Test | |
| on: | |
| push: | |
| branches: [main, develop] | |
| pull_request: | |
| branches: [main, develop] | |
| permissions: | |
| contents: read | |
| jobs: | |
| vhs-test: | |
| runs-on: ubuntu-latest | |
| env: | |
| CGO_ENABLED: 0 | |
| AWS_ENDPOINT_URL: http://localhost:4566 | |
| AWS_ACCESS_KEY_ID: test | |
| AWS_SECRET_ACCESS_KEY: test | |
| AWS_DEFAULT_REGION: us-east-1 | |
| AWS_EC2_METADATA_DISABLED: "true" | |
| AWS_CONFIG_FILE: scripts/demo-aws-config/config | |
| AWS_SHARED_CREDENTIALS_FILE: scripts/demo-aws-config/credentials | |
| LOCALSTACK_IMAGE: localstack/localstack:4.12.0 | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-go@v7 | |
| with: | |
| go-version-file: 'go.mod' | |
| cache: true | |
| - uses: cachix/install-nix-action@6b2916c41eac5735ac995c58c9e8561a78c42319 # v31 | |
| - name: Build | |
| run: go build -o claws ./cmd/claws | |
| - name: Start LocalStack | |
| run: | | |
| docker run -d --name localstack -p 4566:4566 "${LOCALSTACK_IMAGE}" | |
| echo "Waiting for LocalStack..." | |
| for i in $(seq 1 30); do | |
| if curl -s http://localhost:4566/_localstack/health | grep -qE '"s3": "(available|running)"'; then | |
| echo "LocalStack is ready" | |
| exit 0 | |
| fi | |
| sleep 1 | |
| done | |
| echo "LocalStack failed to start" | |
| exit 1 | |
| - name: Setup demo data | |
| timeout-minutes: 5 | |
| run: ./scripts/localstack-demo-setup.sh | |
| - name: Run VHS tapes | |
| run: | | |
| set -e | |
| for tape in docs/tapes/*.tape; do | |
| echo "==========================================" | |
| echo "Running: $tape" | |
| echo "==========================================" | |
| nix develop --command vhs "$tape" | |
| done | |
| - name: Upload screenshots on failure | |
| if: failure() | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: vhs-screenshots | |
| path: docs/images/ | |
| retention-days: 7 | |
| - name: Cleanup LocalStack | |
| if: always() | |
| run: docker stop localstack || true |