diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..6cba8c6 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,12 @@ +version: 2 +updates: + # Third-party actions and the platform-workflows reusable workflow (SHA pins with version comments). + - package-ecosystem: github-actions + directory: "/" + schedule: + interval: weekly + commit-message: + prefix: "ci" + groups: + github-actions: + patterns: ["*"] diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 60ce268..f943902 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: validate: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.4.0 - name: install promtool, jsonnet, jb run: | @@ -35,7 +35,7 @@ jobs: - name: make ci run: make ci - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 with: name: dashboards path: build/dashboards/*.json @@ -46,8 +46,8 @@ jobs: run: working-directory: deploy/terraform steps: - - uses: actions/checkout@v4 - - uses: hashicorp/setup-terraform@v3 + - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.4.0 + - uses: hashicorp/setup-terraform@b9cd54a3c349d3f38e8881555d616ced269862dd # v3.1.2 - run: terraform fmt -check - run: terraform init -backend=false -input=false - run: terraform validate diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml new file mode 100644 index 0000000..18e1a29 --- /dev/null +++ b/.github/workflows/release-please.yml @@ -0,0 +1,18 @@ +name: release-please + +on: + push: + branches: [main] + +permissions: + contents: write + pull-requests: write + +jobs: + release-please: + runs-on: ubuntu-latest + steps: + - uses: googleapis/release-please-action@45996ed1f6d02564a971a2fa1b5860e934307cf7 # v5.0.0 + with: + config-file: release-please-config.json + manifest-file: .release-please-manifest.json diff --git a/.github/workflows/security.yml b/.github/workflows/security.yml new file mode 100644 index 0000000..a8c5b83 --- /dev/null +++ b/.github/workflows/security.yml @@ -0,0 +1,22 @@ +name: security + +on: + pull_request: + push: + branches: [main] + schedule: + - cron: "17 6 * * 1" # weekly, catches newly published advisories + +permissions: + contents: read + +jobs: + trivy: + uses: Krustytoe/platform-workflows/.github/workflows/trivy-scan.yml@a8f5915241bbd0c5639a81428fca888cc2b79da6 # v0.1.0 + permissions: + contents: read + security-events: write + with: + scan_type: config + target: . + severity: HIGH,CRITICAL diff --git a/.release-please-manifest.json b/.release-please-manifest.json new file mode 100644 index 0000000..466df71 --- /dev/null +++ b/.release-please-manifest.json @@ -0,0 +1,3 @@ +{ + ".": "0.1.0" +} diff --git a/release-please-config.json b/release-please-config.json new file mode 100644 index 0000000..a61c749 --- /dev/null +++ b/release-please-config.json @@ -0,0 +1,10 @@ +{ + "$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json", + "packages": { + ".": { + "release-type": "simple", + "include-component-in-tag": false, + "changelog-path": "CHANGELOG.md" + } + } +}