Initial seperation of containers

This commit is contained in:
Greyscale 2024-05-17 09:49:09 +02:00
parent db772fab53
commit 9fa69be8ba
No known key found for this signature in database
GPG key ID: 74BAFF55434DA4B2
20 changed files with 413 additions and 201 deletions

10
.actrc
View file

@ -1,10 +1,8 @@
--action-cache-path .github/cache/act/actions
--artifact-server-path .github/cache/act/artifacts
--artifact-server-port 24000
--cache-server-path .github/cache/act/cache
--use-new-action-cache --use-new-action-cache
--var-file .github/act.vars --action-cache-path=.github/cache/act/actions
--secret-file .github/act.secrets --cache-server-path=.github/cache/act/cache
--artifact-server-path=.github/cache/act/artifacts
--artifact-server-port=34017
--platform self-hosted=ghcr.io/catthehacker/ubuntu:act-latest --platform self-hosted=ghcr.io/catthehacker/ubuntu:act-latest
--platform ubuntu-latest=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-22.04=ghcr.io/catthehacker/ubuntu:act-22.04

View file

@ -1,17 +1,22 @@
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
env:
ACTION_TOKEN: ${{ github.token }}
jobs: jobs:
phpcsfixer: phpcsfixer:
name: PHP-CS-Fixer name: PHP-CS-Fixer

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

2
.gitignore vendored
View file

@ -7,4 +7,4 @@
/.coverage /.coverage
/phpunit.xml /phpunit.xml
/.github/cache /.github/cache
/.github/act.secrets /.secrets

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

@ -1,2 +1,10 @@
# Prettier friendly markdownlint config (all formatting rules disabled) # Autoformatter friendly markdownlint config (all formatting rules disabled)
extends: markdownlint/style/prettier 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,34 +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:
- checkov@3.2.60 - gitleaks@8.18.2
- markdownlint@0.40.0
- taplo@0.8.1
- actionlint@1.7.0
- checkov@3.2.92
- git-diff-check - git-diff-check
- markdownlint@0.39.0
- 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: tools:
enabled: enabled:
- act@0.2.61 - 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,17 +1,22 @@
# 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 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._
# Unacceptable Behaviour - **Be friendly and patient.**
* Offensive comments related to gender, sexual orientation, disability, mental illness, physical appearance, body size, race, age, regional discrimination, political or religious affiliation. - **Be welcoming** _We strive to be a community that welcomes and supports people of all backgrounds and identities._
* Threats of violence, both physical and psycological. - **Be respectful** _Not all of us will agree all the time, but disagreement is no excuse for poor behavior and poor manners._
* 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.
# Interactions ## Unacceptable Behaviour
* 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. - Offensive comments related to gender, sexual orientation, disability, mental illness, physical appearance, body size, race, age, regional discrimination, political or religious affiliation.
* We encourage everyone to participate and are committed to building a community for all, we seek to treat everyone both as fairly and equally as possible. - 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.
- Continued communication after requests to cease.
## 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 reject contributions that are partially complete and then go and commit your own version. Try to work with the author to complete their work.
- We encourage everyone to participate and are committed to building a community for all, we seek to treat everyone both as fairly and equally as possible.