Initial restructured project + trunk + pipelines
This commit is contained in:
parent
2e5213d711
commit
0a0d380cd0
17 changed files with 187 additions and 0 deletions
13
.actrc
Normal file
13
.actrc
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
--action-cache-path .github/cache/act/actions
|
||||||
|
--artifact-server-path .github/cache/act/artifacts
|
||||||
|
--artifact-server-port 22002
|
||||||
|
--cache-server-path .github/cache/act/cache
|
||||||
|
--use-new-action-cache
|
||||||
|
--var-file .act.vars
|
||||||
|
--secret-file .act.secrets
|
||||||
|
--pull=false
|
||||||
|
--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
|
34
.github/workflows/scad.yml
vendored
Normal file
34
.github/workflows/scad.yml
vendored
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
name: Deploy To Production
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
permissions: read-all
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
render:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
part:
|
||||||
|
- Lid
|
||||||
|
- Bottom
|
||||||
|
- Latch
|
||||||
|
- Seal
|
||||||
|
steps:
|
||||||
|
- name: Setup
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
- name: Render
|
||||||
|
run: |
|
||||||
|
docker run \
|
||||||
|
-v ${{ github.workspace }}:/workspace/ \
|
||||||
|
openscad/openscad \
|
||||||
|
-D View=\"${{ matrix.part }}\" \
|
||||||
|
-o /workspace/${{ matrix.part }}.stl \
|
||||||
|
/workspace/smokebox.scad
|
||||||
|
- name: Upload
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: smokebox-${{ matrix.part }}.stl
|
||||||
|
path: ${{ github.workspace }}/${{ matrix.part }}.stl
|
4
.gitignore
vendored
Normal file
4
.gitignore
vendored
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
/.idea
|
||||||
|
/out
|
||||||
|
/.act.secrets
|
||||||
|
/.github/cache
|
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[submodule "lib/openscad-parametric-boxes"]
|
||||||
|
path = lib/openscad-parametric-boxes
|
||||||
|
url = https://code.techinc.nl/grey/openscad-parametric-boxes.git
|
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.
|
12
.trunk/configs/.gitleaks.toml
Normal file
12
.trunk/configs/.gitleaks.toml
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
title = "Gitleaks config"
|
||||||
|
[extend]
|
||||||
|
useDefault = true
|
||||||
|
|
||||||
|
[allowlist]
|
||||||
|
paths = [
|
||||||
|
'''helix/tests/Cassettes/(.*?).cassette''',
|
||||||
|
'''helix/tests/Integration/(.*?).http''',
|
||||||
|
'''helix/tests/Integration/(.*?).env.json''',
|
||||||
|
'''helix/tests/*''',
|
||||||
|
'''.docker/base-image/php/self-signed-certificates/example.key''',
|
||||||
|
]
|
7
.trunk/configs/.hadolint.yaml
Normal file
7
.trunk/configs/.hadolint.yaml
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
ignored:
|
||||||
|
- DL3006
|
||||||
|
- DL3008
|
||||||
|
- SC1090
|
||||||
|
- SC1091
|
||||||
|
- SC2043
|
||||||
|
- SC2312
|
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
|
0
.trunk/configs/.shellcheck
Normal file
0
.trunk/configs/.shellcheck
Normal file
7
.trunk/configs/.shellcheckrc
Normal file
7
.trunk/configs/.shellcheckrc
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
enable=all
|
||||||
|
source-path=SCRIPTDIR
|
||||||
|
disable=SC2154
|
||||||
|
|
||||||
|
# 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"
|
||||||
|
}
|
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,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
};
|
2
.trunk/configs/trivy-secret.yaml
Normal file
2
.trunk/configs/trivy-secret.yaml
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
disable-rules:
|
||||||
|
- DS002
|
37
.trunk/trunk.yaml
Normal file
37
.trunk/trunk.yaml
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
# 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.1
|
||||||
|
uri: https://github.com/trunk-io/plugins
|
||||||
|
# Many linters and tools depend on runtimes - configure them here. (https://docs.trunk.io/runtimes)
|
||||||
|
runtimes:
|
||||||
|
enabled:
|
||||||
|
- node@18.12.1
|
||||||
|
- python@3.10.8
|
||||||
|
# This is the section where you manage your linters. (https://docs.trunk.io/check/configuration)
|
||||||
|
lint:
|
||||||
|
enabled:
|
||||||
|
- actionlint@1.7.1
|
||||||
|
- checkov@3.2.216
|
||||||
|
- git-diff-check
|
||||||
|
- prettier@3.3.3
|
||||||
|
- trivy@0.54.0
|
||||||
|
- trufflehog@3.80.3
|
||||||
|
- yamllint@1.35.1
|
||||||
|
actions:
|
||||||
|
enabled:
|
||||||
|
- trunk-announce
|
||||||
|
- trunk-check-pre-push
|
||||||
|
- trunk-fmt-pre-commit
|
||||||
|
- trunk-upgrade-available
|
||||||
|
tools:
|
||||||
|
enabled:
|
||||||
|
- act@0.2.64
|
||||||
|
disabled:
|
||||||
|
- trufflehog
|
1
lib/openscad-parametric-boxes
Submodule
1
lib/openscad-parametric-boxes
Submodule
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit 6cdf0fafc385e8426998954ebd47613ddc8a69d2
|
Loading…
Reference in a new issue