Add tekton pipelines

This commit is contained in:
2024-04-02 19:15:40 +02:00
parent 217a105a5c
commit e97a9f7f24
23 changed files with 711 additions and 76 deletions

View File

@ -0,0 +1,30 @@
apiVersion: tekton.dev/v1beta1
kind: Pipeline
metadata:
name: hetzner-cleanup
namespace: {{ .Values.pipelineNamespace }}
labels:
{{- include "tekton-pipelines.labels" . | nindent 4 }}
spec:
params:
- name: environment
type: string
- name: namespace
type: string
tasks:
- name: cleanup-hetzner-infra
retries: 3
taskRef:
resolver: cluster
params:
- name: kind
value: task
- name: name
value: cleanup-hetzner-infra
- name: namespace
value: tekton-pipelines
params:
- name: environment
value: $(params.environment)
- name: namespace
value: $(params.namespace)

View File

@ -0,0 +1,99 @@
apiVersion: tekton.dev/v1beta1
kind: Pipeline
metadata:
name: hetzner-k3s
namespace: {{ .Values.pipelineNamespace }}
labels:
{{- include "tekton-pipelines.labels" . | nindent 4 }}
spec:
params:
- name: environment
type: string
- name: namespace
type: string
workspaces:
- name: ssh-keys
- name: inventory
- name: kubeconfig-output
tasks:
- name: generate-ssh-keys
taskRef:
resolver: cluster
params:
- name: kind
value: task
- name: name
value: generate-ssh-keys
- name: namespace
value: tekton-pipelines
workspaces:
- name: ssh-keys
workspace: ssh-keys
params:
- name: environment
value: $(params.environment)
- name: namespace
value: $(params.namespace)
- name: prepare-hetzner-infra
retries: 3
runAfter:
- generate-ssh-keys
taskRef:
resolver: cluster
params:
- name: kind
value: task
- name: name
value: prepare-hetzner-infra
- name: namespace
value: tekton-pipelines
workspaces:
- name: outputs
workspace: inventory
params:
- name: environment
value: $(params.environment)
- name: namespace
value: $(params.namespace)
- name: bootstrap-k3s
retries: 3
runAfter:
- prepare-hetzner-infra
taskRef:
resolver: cluster
params:
- name: kind
value: task
- name: name
value: bootstrap-k3s
- name: namespace
value: tekton-pipelines
params:
- name: environment
value: $(params.environment)
- name: namespace
value: $(params.namespace)
workspaces:
- name: outputs
workspace: kubeconfig-output
- name: deploy-helmfile-base
runAfter:
- bootstrap-k3s
retries: 3
taskRef:
resolver: cluster
params:
- name: kind
value: task
- name: name
value: deploy-helmfile-base
- name: namespace
value: tekton-pipelines
params:
- name: environment
value: $(params.environment)
- name: namespace
value: $(params.namespace)
workspaces:
- name: outputs
workspace: kubeconfig-output