Initial seperation of containers

This commit is contained in:
Greyscale 2024-05-17 09:49:08 +02:00
parent 4b3b2343f6
commit ce0b0b3e3f
No known key found for this signature in database
GPG key ID: 74BAFF55434DA4B2
20 changed files with 245 additions and 16 deletions

10
.actrc Normal file
View file

@ -0,0 +1,10 @@
--use-new-action-cache
--action-cache-path=.github/cache/act/actions
--cache-server-path=.github/cache/act/cache
--artifact-server-path=.github/cache/act/artifacts
--artifact-server-port=34018
--platform self-hosted=ghcr.io/catthehacker/ubuntu:act-latest
--platform ubuntu-latest=ghcr.io/catthehacker/ubuntu:act-latest
--platform ubuntu-22.04=ghcr.io/catthehacker/ubuntu:act-22.04
--platform ubuntu-20.04=ghcr.io/catthehacker/ubuntu:act-20.04
--platform ubuntu-18.04=ghcr.io/catthehacker/ubuntu:act-18.04

View file

@ -1,12 +1,20 @@
name: Tests name: Tests
permissions:
contents: read
packages: write
on: on:
push: workflow_call:
workflow_dispatch: workflow_dispatch:
pull_request: push:
branches:
- main
schedule:
- cron: "0 14 * * 2" # 2pm Patch Tuesday
concurrency: concurrency:
group: tests-${{ github.head_ref || github.run_id }} group: ${{ github.head_ref || github.run_id }}
cancel-in-progress: true cancel-in-progress: true
jobs: jobs:

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 }}

4
.gitignore vendored
View file

@ -1,4 +1,4 @@
/vendor/ /vendor/
/.idea /.idea
/.github/act.secrets /.secrets
/composer.lock /composer.lock

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

@ -1,7 +1,15 @@
extends: relaxed
rules: rules:
quoted-strings: quoted-strings:
required: only-when-needed required: only-when-needed
extra-allowed: ["{|}"] extra-allowed: ["{|*}"]
empty-values:
forbid-in-block-mappings: false
forbid-in-flow-mappings: false
ignore:
- .github/workflows/*.yml
key-duplicates: {} key-duplicates: {}
octal-values: octal-values:
forbid-implicit-octal: true 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,
},
},
},
],
};

View file

@ -2,31 +2,58 @@
# To learn more about the format of this file, see https://docs.trunk.io/reference/trunk-yaml # To learn more about the format of this file, see https://docs.trunk.io/reference/trunk-yaml
version: 0.1 version: 0.1
cli: cli:
version: 1.21.0 version: 1.22.1
# Trunk provides extensibility via plugins. (https://docs.trunk.io/plugins) # Trunk provides extensibility via plugins. (https://docs.trunk.io/plugins)
plugins: plugins:
sources: sources:
- id: trunk - id: trunk
ref: v1.4.5 ref: v1.5.0
uri: https://github.com/trunk-io/plugins uri: https://github.com/trunk-io/plugins
# Many linters and tools depend on runtimes - configure them here. (https://docs.trunk.io/runtimes) # Many linters and tools depend on runtimes - configure them here. (https://docs.trunk.io/runtimes)
runtimes: runtimes:
enabled: enabled:
- go@1.21.0
- node@18.12.1 - node@18.12.1
- python@3.10.8 - python@3.10.8
# This is the section where you manage your linters. (https://docs.trunk.io/check/configuration) # This is the section where you manage your linters. (https://docs.trunk.io/check/configuration)
lint: lint:
enabled: enabled:
- actionlint@1.6.27 - gitleaks@8.18.2
- checkov@3.2.60 - markdownlint@0.40.0
- taplo@0.8.1
- actionlint@1.7.0
- checkov@3.2.92
- git-diff-check - git-diff-check
- prettier@3.2.5 - prettier@3.2.5
- trivy@0.50.1 - trivy@0.51.1
- trufflehog@3.71.0 - trufflehog@3.76.2
- yamllint@1.35.1 - yamllint@1.35.1
definitions:
- name: markdownlint
direct_configs:
- .markdownlintignore
- .markdownlint.yaml
actions: actions:
disabled:
- trunk-upgrade-available
enabled: enabled:
- trunk-announce - trunk-announce
- trunk-check-pre-push - trunk-check-pre-push
- trunk-fmt-pre-commit - trunk-fmt-pre-commit
- trunk-upgrade-available tools:
enabled:
- tfupdate@0.8.2
- phpstan@1.10.58
- gh@2.49.2
- jq@jq-1.7.1
- yq@4.44.1
- awscli@1.32.107
- action-validator@0.6.0
- act@0.2.62
- shellcheck@0.10.0
- hadolint@2.12.0
- svgo@3.3.2
- tofu@1.7.1
- trunk-toolbox@0.3.1
- tflint@0.51.1
- terraform@1.1.4

View file

@ -1,19 +1,21 @@
# Code of Conduct
This code of conduct outlines our expectations for participants within the open source community. Anyone who violates this code of conduct may be banned from contributing here. This code of conduct outlines our expectations for participants within the open source community. Anyone who violates this code of conduct may be banned from contributing here.
# Requirements ## Requirements
- **Be friendly and patient.** - **Be friendly and patient.**
- **Be welcoming** _We strive to be a community that welcomes and supports people of all backgrounds and identities._ - **Be welcoming** _We strive to be a community that welcomes and supports people of all backgrounds and identities._
- **Be respectful** _Not all of us will agree all the time, but disagreement is no excuse for poor behavior and poor manners._ - **Be respectful** _Not all of us will agree all the time, but disagreement is no excuse for poor behavior and poor manners._
# Unacceptable Behaviour ## Unacceptable Behaviour
- Offensive comments related to gender, sexual orientation, disability, mental illness, physical appearance, body size, race, age, regional discrimination, political or religious affiliation. - Offensive comments related to gender, sexual orientation, disability, mental illness, physical appearance, body size, race, age, regional discrimination, political or religious affiliation.
- Threats of violence, both physical and psycological. - Threats of violence, both physical and psycological.
- Incitement of violence towards any individual, including encouraging a person to commit suicide or to engage in self-harm. - Incitement of violence towards any individual, including encouraging a person to commit suicide or to engage in self-harm.
- Continued communication after requests to cease. - Continued communication after requests to cease.
# Interactions ## Interactions
- Don't just tell somebody they are wrong, or what they have done is wrong. You must always explain what is wrong, and why it is wrong. - Don't just tell somebody they are wrong, or what they have done is wrong. You must always explain what is wrong, and why it is wrong.
- Don't reject contributions that are partially complete and then go and commit your own version. Try to work with the author to complete their work. - Don't reject contributions that are partially complete and then go and commit your own version. Try to work with the author to complete their work.