Initial copy-across of some trunk parts
Some checks failed
Trunk Cache / Trunk Cache (push) Failing after 3s
Trunk Check / Trunk Check Runner (push) Failing after 1s
Trunk Upgrade / Upgrade Trunk (push) Failing after 1s

This commit is contained in:
Greyscale 2024-06-27 23:46:10 +02:00
parent 9acb203b58
commit baf62da1a0
16 changed files with 257 additions and 0 deletions

36
.github/workflows/trunk.cache.yml vendored Normal file
View file

@ -0,0 +1,36 @@
name: Trunk Cache
permissions: read-all
on:
workflow_call:
workflow_dispatch:
push:
branches:
- main
paths:
- .trunk/trunk.yaml
schedule:
- cron: "0 9 * * 1" # 9am Tooling Monday
concurrency:
group: ${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
trunk-cache:
name: Trunk Cache
runs-on: ubuntu-latest
permissions:
actions: write
steps:
- name: "Setup PHP"
uses: shivammathur/setup-php@v2
with:
php-version: 8.3
- name: "Checkout"
uses: actions/checkout@v4
- name: "Trunk Cache"
uses: trunk-io/trunk-action@v1
with:
check-mode: populate_cache_only

33
.github/workflows/trunk.check.yml vendored Normal file
View file

@ -0,0 +1,33 @@
name: Trunk Check
permissions: read-all
on:
workflow_call:
workflow_dispatch:
push:
branches:
- main
schedule:
- cron: "0 11 * * 2" # 11am Patch Tuesday
concurrency:
group: ${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
trunk-check:
name: Trunk Check Runner
runs-on: ubuntu-latest
permissions:
checks: write # For trunk to post annotations
contents: read # For repo checkout
steps:
- name: "Setup PHP"
uses: shivammathur/setup-php@v2
with:
php-version: 8.3
- name: "Checkout"
uses: actions/checkout@v4
- name: "Trunk Check"
uses: trunk-io/trunk-action@v1

47
.github/workflows/trunk.upgrade.yml vendored Normal file
View file

@ -0,0 +1,47 @@
name: Trunk Upgrade
permissions: read-all
on:
workflow_call:
workflow_dispatch:
push:
branches:
- main
paths:
- .trunk/trunk.yaml
- .github/workflows/trunk.upgrade.yml
schedule:
- cron: "0 11 * * 1" # 11am Tooling Monday
concurrency:
group: ${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
trunk-upgrade:
name: Upgrade Trunk
runs-on: ubuntu-latest
permissions:
contents: write # For trunk to create PRs
pull-requests: write # For trunk to create PRs
steps:
- name: "Setup PHP"
uses: shivammathur/setup-php@v2
with:
php-version: 8.3
- name: "Checkout"
uses: actions/checkout@v4
- name: "Trunk Upgrade"
uses: trunk-io/trunk-action/upgrade@v1
- name: "PR: Find Pull Request"
uses: juliangruber/find-pull-request-action@v1
id: find-pull-request
with:
labels: trunk
- name: "PR: Enable Pull Request Automerge"
continue-on-error: true
uses: peter-evans/enable-pull-request-automerge@v3
with:
token: ${{ secrets.GITHUB_TOKEN }}
pull-request-number: ${{ steps.find-pull-request.outputs.number }}

9
.trunk/.gitignore vendored Normal file
View file

@ -0,0 +1,9 @@
*out
*logs
*actions
*notifications
*tools
plugins
user_trunk.yaml
user.yaml
tmp

View file

@ -0,0 +1,3 @@
---
skip-check:
- CKV_SECRET_* # Skip all checks that start with CKV_SECRET, we already have gitleaks doing this.

View file

@ -0,0 +1,3 @@
title = "Gitleaks config"
[extend]
useDefault = true

View file

View file

@ -0,0 +1,3 @@
ignored:
- DL3006
- DL3008

View file

@ -0,0 +1,10 @@
# Autoformatter friendly markdownlint config (all formatting rules disabled)
default: true
blank_lines: false
bullet: false
html: false
indentation: false
line_length: false
spaces: false
url: false
whitespace: false

View file

@ -0,0 +1 @@
LICENCE.md

View file

@ -0,0 +1,6 @@
enable=all
source-path=SCRIPTDIR
# If you're having issues with shellcheck following source, disable the errors via:
# disable=SC1090
# disable=SC1091

View file

@ -0,0 +1,16 @@
config {
format = "compact"
module = true
plugin_dir = "~/.tflint.d/plugins"
}
plugin "terraform" {
enabled = true
preset = "recommended"
}
plugin "aws" {
enabled = true
version = "0.27.0"
source = "github.com/terraform-linters/tflint-ruleset-aws"
}

View file

@ -0,0 +1,2 @@
AVD-DS-0001
AVD-DS-0002

View file

@ -0,0 +1,15 @@
extends: relaxed
rules:
quoted-strings:
required: only-when-needed
extra-allowed: ["{|*}"]
empty-values:
forbid-in-block-mappings: false
forbid-in-flow-mappings: false
ignore:
- .github/workflows/*.yml
key-duplicates: {}
octal-values:
forbid-implicit-octal: true
document-start: disable
line-length: disable

View file

@ -0,0 +1,14 @@
module.exports = {
plugins: [
{
name: "preset-default",
params: {
overrides: {
removeViewBox: false, // https://github.com/svg/svgo/issues/1128
sortAttrs: true,
removeOffCanvasPaths: true,
},
},
},
],
};

59
.trunk/trunk.yaml Normal file
View file

@ -0,0 +1,59 @@
# This file controls the behavior of Trunk: https://docs.trunk.io/cli
# To learn more about the format of this file, see https://docs.trunk.io/reference/trunk-yaml
version: 0.1
cli:
version: 1.22.2
# Trunk provides extensibility via plugins. (https://docs.trunk.io/plugins)
plugins:
sources:
- id: trunk
ref: v1.6.0
uri: https://github.com/trunk-io/plugins
# Many linters and tools depend on runtimes - configure them here. (https://docs.trunk.io/runtimes)
runtimes:
enabled:
- go@1.21.0
- node@18.12.1
- python@3.10.8
# This is the section where you manage your linters. (https://docs.trunk.io/check/configuration)
lint:
disabled:
- trufflehog # Trufflehog duplicates gitleaks functionality.
- terrascan
- trivy
enabled:
- tflint@0.51.1
- gitleaks@8.18.4
- markdownlint@0.41.0
- taplo@0.8.1
- actionlint@1.7.1
- checkov@3.2.148
- git-diff-check
- prettier@3.3.2
- yamllint@1.35.1
definitions:
- name: markdownlint
direct_configs:
- .markdownlintignore
- .markdownlint.yaml
actions:
enabled:
- trunk-announce
- trunk-check-pre-push
- trunk-fmt-pre-commit
- trunk-upgrade-available
tools:
enabled:
- tfupdate@0.8.2
- gh@2.49.2
- jq@jq-1.7.1
- yq@4.44.1
- awscli@1.33.9
- action-validator@0.6.0
- act@0.2.63
- shellcheck@0.10.0
- hadolint@2.12.0
- tofu@1.7.2
- trunk-toolbox@0.3.2
- tflint@0.51.1
- terraform@1.1.4