Skip to content

chore(deps)(deps): bump @opentelemetry/semantic-conventions from 1.42.0 to 1.43.0 in /apps/api #623

chore(deps)(deps): bump @opentelemetry/semantic-conventions from 1.42.0 to 1.43.0 in /apps/api

chore(deps)(deps): bump @opentelemetry/semantic-conventions from 1.42.0 to 1.43.0 in /apps/api #623

name: validate
on:
push:
branches: [main]
pull_request:
branches: [main]
permissions:
contents: read
concurrency:
group: infra-bootstrap-validate-${{ github.ref }}
cancel-in-progress: true
jobs:
validate:
name: tofu fmt + validate
defaults:
run:
working-directory: infra/bootstrap
runs-on: ubuntu-24.04
timeout-minutes: 10
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Detect relevant changes
uses: dorny/paths-filter@ceb8a2b8f2d89434be7ff52d3de7ec3738c5cc9d # v4.0.3
id: filter
with:
filters: |
code:
- 'infra/bootstrap/**'
- '.github/workflows/infra-bootstrap-validate.yml'
- name: Install OpenTofu
if: steps.filter.outputs.code == 'true'
uses: opentofu/setup-opentofu@a1320f892987e89d278cc92dc5adc984fb93aca4 # v2.0.2
with:
tofu_version: "1.12.0"
tofu_wrapper: false
- name: Check formatting
if: steps.filter.outputs.code == 'true'
run: tofu fmt -check -recursive -diff
# `-backend=false` lets us run without configuring real cloud credentials.
# Validate parses + type-checks the whole graph (root + every module),
# so it catches "unexpected attribute" / wrong-provider-syntax / missing
# variable errors before they hit `apply`.
- name: Initialize (no backend)
if: steps.filter.outputs.code == 'true'
run: tofu init -backend=false -input=false
- name: Validate root + every module
if: steps.filter.outputs.code == 'true'
run: |
set -euo pipefail
tofu validate -no-color
for module in modules/*/; do
echo "::group::tofu validate $module"
(cd "$module" && tofu init -backend=false -input=false >/dev/null && tofu validate -no-color)
echo "::endgroup::"
done