Skip to content

build(deps): bump @pulumi/gcp from 8.41.1 to 9.2.0 in /infrastructure/pulumi #608

build(deps): bump @pulumi/gcp from 8.41.1 to 9.2.0 in /infrastructure/pulumi

build(deps): bump @pulumi/gcp from 8.41.1 to 9.2.0 in /infrastructure/pulumi #608

Workflow file for this run

name: Continuous Integration
on:
pull_request:
branches:
- main
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
meta:
name: Prepare metadata
runs-on: ubuntu-latest
outputs:
changed: ${{ steps.filter.outputs.changed }}
pulumi: ${{ steps.filter.outputs.pulumi }}
helm: ${{ steps.filter.outputs.helm }}
opentofu: ${{ steps.filter.outputs.opentofu }}
steps:
- name: Checkout
uses: actions/checkout@v5
- uses: dorny/paths-filter@v3.0.2
id: filter
with:
list-files: shell
filters: |
changed:
- '!infrastructure/**'
pulumi:
- 'infrastructure/pulumi/**'
helm:
- 'infrastructure/helm/**'
opentofu:
- 'infrastructure/opentofu/**'
test:
name: Test
needs:
- meta
if: needs.meta.outputs.changed == 'true'
runs-on: ubuntu-latest
env:
VERBOSE: 1
steps:
- name: Checkout
uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version-file: go.mod
cache: true
- name: golangci-lint
uses: golangci/golangci-lint-action@v8
with:
args: --timeout 5m0s
skip-cache: false
- name: Format go files
run: go fmt ./...
- name: Vet go files
run: go vet ./...
- name: Verify dependency tree
run: go mod verify
- name: Run Gosec Security Scanner
uses: securego/gosec@v2.22.8
with:
args: ./...
- name: Run tests
run: go test -v ./...
pulumi:
name: Pulumi
needs:
- meta
if: needs.meta.outputs.pulumi == 'true'
runs-on: ubuntu-latest
defaults:
run:
shell: bash
working-directory: ./infrastructure/pulumi
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup Node
id: node
uses: actions/setup-node@v4
with:
node-version: 20
cache: 'npm'
cache-dependency-path: infrastructure/pulumi/package-lock.json
- name: Install dependencies
run: npm ci
- name: Check formatting
run: npm run format:check
- name: Lint typescript files
run: npm run lint
- name: Run tests
run: npm test
helm:
name: Helm
needs:
- meta
if: needs.meta.outputs.helm == 'true'
runs-on: ubuntu-latest
defaults:
run:
shell: bash
working-directory: ./infrastructure/helm
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Check Helm documentation
uses: losisin/helm-docs-github-action@v1
with:
chart-search-root: infrastructure/helm
git-push: false
- name: Check values schema json
uses: losisin/helm-values-schema-json-action@v2
with:
working-directory: infrastructure/helm
fail-on-diff: true
git-push: false
- name: Lint helm chart
run: helm lint . -f values.yaml --debug
- name: Helm unit tests
shell: bash
run: |
helm plugin install https://github.com/helm-unittest/helm-unittest.git
helm unittest . --failfast --strict --debug --color
opentofu:
name: OpenTofu
needs:
- meta
if: needs.meta.outputs.opentofu == 'true'
runs-on: ubuntu-latest
defaults:
run:
shell: bash
working-directory: ./infrastructure/opentofu
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Install OpenTofu
uses: opentofu/setup-opentofu@v1
with:
tofu_version: 1.7.1
- name: OpenTofu fmt
id: fmt
run: tofu fmt -check
- name: OpenTofu Init
id: init
run: tofu init
- name: OpenTofu Validate
id: validate
run: tofu validate