Initial copy-across of some trunk parts
This commit is contained in:
parent
9acb203b58
commit
baf62da1a0
16 changed files with 257 additions and 0 deletions
36
.github/workflows/trunk.cache.yml
vendored
Normal file
36
.github/workflows/trunk.cache.yml
vendored
Normal 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
33
.github/workflows/trunk.check.yml
vendored
Normal 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
47
.github/workflows/trunk.upgrade.yml
vendored
Normal 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
9
.trunk/.gitignore
vendored
Normal file
|
@ -0,0 +1,9 @@
|
|||
*out
|
||||
*logs
|
||||
*actions
|
||||
*notifications
|
||||
*tools
|
||||
plugins
|
||||
user_trunk.yaml
|
||||
user.yaml
|
||||
tmp
|
3
.trunk/configs/.checkov.yaml
Normal file
3
.trunk/configs/.checkov.yaml
Normal file
|
@ -0,0 +1,3 @@
|
|||
---
|
||||
skip-check:
|
||||
- CKV_SECRET_* # Skip all checks that start with CKV_SECRET, we already have gitleaks doing this.
|
3
.trunk/configs/.gitleaks.toml
Normal file
3
.trunk/configs/.gitleaks.toml
Normal file
|
@ -0,0 +1,3 @@
|
|||
title = "Gitleaks config"
|
||||
[extend]
|
||||
useDefault = true
|
0
.trunk/configs/.gitleaksignore
Normal file
0
.trunk/configs/.gitleaksignore
Normal file
3
.trunk/configs/.hadolint.yaml
Normal file
3
.trunk/configs/.hadolint.yaml
Normal file
|
@ -0,0 +1,3 @@
|
|||
ignored:
|
||||
- DL3006
|
||||
- DL3008
|
10
.trunk/configs/.markdownlint.yaml
Normal file
10
.trunk/configs/.markdownlint.yaml
Normal 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
|
1
.trunk/configs/.markdownlintignore
Normal file
1
.trunk/configs/.markdownlintignore
Normal file
|
@ -0,0 +1 @@
|
|||
LICENCE.md
|
6
.trunk/configs/.shellcheckrc
Normal file
6
.trunk/configs/.shellcheckrc
Normal 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
|
16
.trunk/configs/.tflint.hcl
Normal file
16
.trunk/configs/.tflint.hcl
Normal 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"
|
||||
}
|
2
.trunk/configs/.trivyignore
Normal file
2
.trunk/configs/.trivyignore
Normal file
|
@ -0,0 +1,2 @@
|
|||
AVD-DS-0001
|
||||
AVD-DS-0002
|
15
.trunk/configs/.yamllint.yaml
Normal file
15
.trunk/configs/.yamllint.yaml
Normal 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
|
14
.trunk/configs/svgo.config.js
Normal file
14
.trunk/configs/svgo.config.js
Normal 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
59
.trunk/trunk.yaml
Normal 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
|
Reference in a new issue