This commit is contained in:
2024-04-22 19:50:34 +02:00
parent aa63ce8451
commit d92bc212f7
7 changed files with 576 additions and 95 deletions

View File

@@ -21,44 +21,67 @@ resource "kubectl_manifest" "cd-trigger-create" {
labels: ${jsonencode(local.create-labels)}
spec:
bindings:
- name: gitrepositoryname
value: $(body.repository.name)
- name: deployurl
value: $(extensions.deploy-url)
- name: artifactory-url
value: "$(extensions.artifactory-url)"
- name: project-name
value: "$(extensions.project-name)"
- name: project-path
value: "$(extensions.project-path)"
- name: git-repository-url
value: "$(extensions.git-repository-url)"
- name: deploy-url
value: $(extensions.deploy-url)
template:
spec:
params:
- name: gitrepositoryname
- name: artifactory-url
description: The url of the current artifactory
- name: project-name
description: The git repository name
- name: deployurl
description: The git url for the deploy repository
- name: project-path
description: The path of the current project
- name: git-repository-url
description: The git repository url
- name: deploy-url
description: The git repository url for the deploy project
resourcetemplates:
- apiVersion: tekton.dev/v1beta1
kind: PipelineRun
kind: TaskRun
metadata:
generateName: $(tt.params.gitrepositoryname)-create-
generateName: auto-cd-create-$(tt.params.project-name)-
annotations:
"mayfly.cloud.namecheap.com/expire": "336h" # 2 weeks
spec:
pipelineRef:
name: "${var.instance}-${var.component}-auto-create"
taskRef:
name: "auto-ci-create"
params:
- name: artifactory-url
value: $(tt.params.artifactory-url)
- name: project-name
value: $(tt.params.gitrepositoryname)
value: $(tt.params.project-name)
- name: project-path
value: $(tt.params.project-path)
- name: git-url
value: $(tt.params.git-repository-url)
- name: deploy-url
value: $(tt.params.deployurl)
value: $(tt.params.deploy-url)
workspaces:
- name: source
volumeClaimTemplate:
metadata:
annotations:
"mayfly.cloud.namecheap.com/expire": "2h"
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
persistentVolumeClaim:
claimName: source
subPath: "$(extensions.git-revision)"
- name: dockerconfig
secret:
secretName: gitea-docker
items:
- key: ".dockerconfigjson"
path: "config.json"
- name: sslcertdir
secret:
secretName: gitea
items:
- key: "ca.crt"
path: "ca.crt"
- name: ssh
secret:
secretName: ssh-credentials
@@ -83,44 +106,67 @@ resource "kubectl_manifest" "cd-trigger-activate" {
labels: ${jsonencode(local.activate-labels)}
spec:
bindings:
- name: gitrepositoryname
value: $(body.repository.name)
- name: deployurl
value: $(extensions.deploy-url)
- name: artifactory-url
value: "$(extensions.artifactory-url)"
- name: project-name
value: "$(extensions.project-name)"
- name: project-path
value: "$(extensions.project-path)"
- name: git-repository-url
value: "$(extensions.git-repository-url)"
- name: deploy-url
value: $(extensions.deploy-url)
template:
spec:
params:
- name: gitrepositoryname
- name: artifactory-url
description: The url of the current artifactory
- name: project-name
description: The git repository name
- name: deployurl
description: The git url for the deploy repository
- name: project-path
description: The path of the current project
- name: git-repository-url
description: The git repository url
- name: deploy-url
description: The git repository url for the deploy project
resourcetemplates:
- apiVersion: tekton.dev/v1beta1
kind: PipelineRun
kind: TaskRun
metadata:
generateName: $(tt.params.gitrepositoryname)-activate-
generateName: auto-cd-activate-$(tt.params.project-name)-
annotations:
"mayfly.cloud.namecheap.com/expire": "336h" # 2 weeks
spec:
pipelineRef:
name: "${var.instance}-${var.component}-auto-activate"
taskRef:
name: "auto-ci-activate"
params:
- name: artifactory-url
value: $(tt.params.artifactory-url)
- name: project-name
value: $(tt.params.gitrepositoryname)
value: $(tt.params.project-name)
- name: project-path
value: $(tt.params.project-path)
- name: git-url
value: $(tt.params.git-repository-url)
- name: deploy-url
value: $(tt.params.deployurl)
value: $(tt.params.deploy-url)
workspaces:
- name: source
volumeClaimTemplate:
metadata:
annotations:
"mayfly.cloud.namecheap.com/expire": "2h"
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
persistentVolumeClaim:
claimName: source
subPath: "$(extensions.git-revision)"
- name: dockerconfig
secret:
secretName: gitea-docker
items:
- key: ".dockerconfigjson"
path: "config.json"
- name: sslcertdir
secret:
secretName: gitea
items:
- key: "ca.crt"
path: "ca.crt"
- name: ssh
secret:
secretName: ssh-credentials
@@ -145,44 +191,67 @@ resource "kubectl_manifest" "ci-trigger-delete" {
labels: ${jsonencode(local.delete-labels)}
spec:
bindings:
- name: gitrepositoryname
value: $(body.repository.name)
- name: deployurl
value: $(extensions.deploy-url)
- name: artifactory-url
value: "$(extensions.artifactory-url)"
- name: project-name
value: "$(extensions.project-name)"
- name: project-path
value: "$(extensions.project-path)"
- name: git-repository-url
value: "$(extensions.git-repository-url)"
- name: deploy-url
value: $(extensions.deploy-url)
template:
spec:
params:
- name: gitrepositoryname
- name: artifactory-url
description: The url of the current artifactory
- name: project-name
description: The git repository name
- name: deployurl
description: The git url for the deploy repository
- name: project-path
description: The path of the current project
- name: git-repository-url
description: The git repository url
- name: deploy-url
description: The git repository url for the deploy project
resourcetemplates:
- apiVersion: tekton.dev/v1beta1
kind: PipelineRun
kind: TaskRun
metadata:
generateName: $(tt.params.gitrepositoryname)-delete-
generateName: auto-cd-delete-$(tt.params.project-name)-
annotations:
"mayfly.cloud.namecheap.com/expire": "1440h" # 2 months
"mayfly.cloud.namecheap.com/expire": "336h" # 2 weeks
spec:
pipelineRef:
name: "${var.instance}-${var.component}-delete"
taskRef:
name: "auto-ci-delete"
params:
- name: artifactory-url
value: $(tt.params.artifactory-url)
- name: project-name
value: $(tt.params.gitrepositoryname)
value: $(tt.params.project-name)
- name: project-path
value: $(tt.params.project-path)
- name: git-url
value: $(tt.params.git-repository-url)
- name: deploy-url
value: $(tt.params.deployurl)
value: $(tt.params.deploy-url)
workspaces:
- name: source
volumeClaimTemplate:
metadata:
annotations:
"mayfly.cloud.namecheap.com/expire": "2h"
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
persistentVolumeClaim:
claimName: source
subPath: "$(extensions.git-revision)"
- name: dockerconfig
secret:
secretName: gitea-docker
items:
- key: ".dockerconfigjson"
path: "config.json"
- name: sslcertdir
secret:
secretName: gitea
items:
- key: "ca.crt"
path: "ca.crt"
- name: ssh
secret:
secretName: ssh-credentials