summaryrefslogtreecommitdiff
path: root/data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates
diff options
context:
space:
mode:
Diffstat (limited to 'data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates')
-rw-r--r--data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates/fetch-git.yaml46
-rw-r--r--data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates/project-bashtard.yaml92
-rw-r--r--data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates/qa-reuse.yaml31
3 files changed, 169 insertions, 0 deletions
diff --git a/data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates/fetch-git.yaml b/data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates/fetch-git.yaml
new file mode 100644
index 0000000..785028d
--- /dev/null
+++ b/data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates/fetch-git.yaml
@@ -0,0 +1,46 @@
+---
+apiVersion: argoproj.io/v1alpha1
+kind: WorkflowTemplate
+metadata:
+ name: fetch-git
+ namespace: cicd-system
+spec:
+ arguments:
+ parameters:
+ - name: repo
+ value: ""
+ - name: ref
+ value: master
+ - name: path
+ value: "/usr/src"
+ templates:
+ - name: main
+ inputs:
+ parameters:
+ - name: repo
+ value: "{{workflow.parameters.repo}}"
+ - name: ref
+ value: "{{workflow.parameters.ref}}"
+ - name: path
+ value: "{{workflow.parameters.path}}"
+ outputs:
+ artifacts:
+ - name: src
+ path: "{{inputs.parameters.path}}"
+ script:
+ image: debian
+ command:
+ - dash
+ source: |
+ export DEBIAN_FRONTEND=noninteractive
+ export GIT_WORK_TREE="{{inputs.parameters.path}}"
+ export GIT_DIR="$(mktemp -d)"
+ mkdir -pv -- "$GIT_WORK_TREE"
+
+ apt update && apt install -y git
+
+ git init
+ git remote add origin "{{inputs.parameters.repo}}"
+ git fetch origin -a
+ git reset --hard "origin/{{inputs.parameters.ref}}"
+...
diff --git a/data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates/project-bashtard.yaml b/data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates/project-bashtard.yaml
new file mode 100644
index 0000000..e2b399d
--- /dev/null
+++ b/data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates/project-bashtard.yaml
@@ -0,0 +1,92 @@
+---
+apiVersion: argoproj.io/v1alpha1
+kind: WorkflowTemplate
+metadata:
+ name: project-bashtard
+ namespace: cicd-system
+spec:
+ podGC:
+ deleteDelayDuration: 1h
+ arguments:
+ parameters:
+ - name: ref
+ value: master
+ templates:
+ - name: main
+ steps:
+ - - name: fetch
+ templateRef:
+ name: fetch-git
+ template: main
+ arguments:
+ parameters:
+ - name: ref
+ value: "{{workflow.parameters.ref}}"
+ - name: repo
+ value: "https://git.tyil.nl/bashtard"
+ - - name: qa-reuse
+ templateRef:
+ name: qa-reuse
+ template: main
+ arguments:
+ artifacts:
+ - name: src
+ from: "{{steps.fetch.outputs.artifacts.src}}"
+ - name: qa-shellcheck
+ template: qa-shellcheck
+ arguments:
+ artifacts:
+ - name: src
+ from: "{{steps.fetch.outputs.artifacts.src}}"
+ - - name: dist-tar-gz
+ template: dist
+ arguments:
+ artifacts:
+ - name: src
+ from: "{{steps.fetch.outputs.artifacts.src}}"
+ parameters:
+ - name: format
+ value: targz
+ - name: dist-deb
+ template: dist
+ arguments:
+ artifacts:
+ - name: src
+ from: "{{steps.fetch.outputs.artifacts.src}}"
+ parameters:
+ - name: format
+ value: debian
+
+ - name: qa-shellcheck
+ inputs:
+ artifacts:
+ - name: src
+ path: "/code"
+ script:
+ image: pipelinecomponents/shellcheck
+ command:
+ - bash
+ source: |-
+ shellcheck -s sh bin/bashtard
+ shellcheck -x -s bash **/*.bash
+
+ - name: dist
+ inputs:
+ artifacts:
+ - name: src
+ path: "/usr/src/bashtard-{{workflow.parameters.ref}}"
+ parameters:
+ - name: format
+ value: "targz"
+ script:
+ image: debian
+ command:
+ - dash
+ source: |-
+ export DEBIAN_FRONTEND=noninteractive
+
+ cd -- "/usr/src/bashtard-{{workflow.parameters.ref}}"
+
+ apt update && apt install -y make
+ make pkg-{{inputs.parameters.format}}
+...
diff --git a/data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates/qa-reuse.yaml b/data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates/qa-reuse.yaml
new file mode 100644
index 0000000..7c7d455
--- /dev/null
+++ b/data.d/k3s-master/manifests.d/tyilnet/cicd-system/resources/workflow-templates/qa-reuse.yaml
@@ -0,0 +1,31 @@
+---
+apiVersion: argoproj.io/v1alpha1
+kind: WorkflowTemplate
+metadata:
+ name: qa-reuse
+ namespace: cicd-system
+spec:
+ arguments:
+ parameters:
+ - name: path
+ value: "/usr/src"
+ artifacts:
+ - name: src
+ from: ""
+ templates:
+ - name: main
+ inputs:
+ parameters:
+ - name: path
+ value: "{{workflow.parameters.path}}"
+ artifacts:
+ - name: src
+ path: "{{workflow.artifacts.path}}"
+ container:
+ image: fsfe/reuse
+ workdir: "{{inputs.parameters.path}}"
+ command:
+ - reuse
+ args:
+ - lint
+...