FEAT(tekton): add develop branch CI/CD triggers

- Add gitea-push-nextjs-dev trigger for jaejadle
- Add gitea-push-fastapi-dev trigger for joossam
- Add nextjs-dev-build-template for -dev deployments
- Add fastapi-dev-build-template for -dev deployments
This commit is contained in:
2026-01-11 21:06:25 +09:00
parent 90f204a0f5
commit 81748614ea
2 changed files with 169 additions and 0 deletions

View File

@@ -64,6 +64,65 @@ spec:
- ref: gitea-push-binding
template:
ref: fastapi-build-template
# Develop branch triggers for -dev deployments
- name: gitea-push-nextjs-dev
interceptors:
- ref:
name: "github"
params:
- name: "secretRef"
value:
secretName: gitea-webhook-secret
secretKey: webhook-secret
- name: "eventTypes"
value: ["push"]
- ref:
name: "cel"
params:
- name: "filter"
value: "body.ref.startsWith('refs/heads/develop')"
- name: "overlays"
value:
- key: branch_name
expression: "body.ref.split('/')[2]"
- ref:
name: "cel"
params:
- name: "filter"
value: "body.repository.name in ['jaejadle']"
bindings:
- ref: gitea-push-binding
template:
ref: nextjs-dev-build-template
- name: gitea-push-fastapi-dev
interceptors:
- ref:
name: "github"
params:
- name: "secretRef"
value:
secretName: gitea-webhook-secret
secretKey: webhook-secret
- name: "eventTypes"
value: ["push"]
- ref:
name: "cel"
params:
- name: "filter"
value: "body.ref.startsWith('refs/heads/develop')"
- name: "overlays"
value:
- key: branch_name
expression: "body.ref.split('/')[2]"
- ref:
name: "cel"
params:
- name: "filter"
value: "body.repository.name in ['joossam']"
bindings:
- ref: gitea-push-binding
template:
ref: fastapi-dev-build-template
resources:
kubernetesResource:
spec:

View File

@@ -55,6 +55,61 @@ spec:
---
apiVersion: triggers.tekton.dev/v1beta1
kind: TriggerTemplate
metadata:
name: nextjs-dev-build-template
namespace: tekton-pipelines
spec:
params:
- name: git-url
description: Git repository URL
- name: git-revision
description: Git commit SHA
- name: git-branch
description: Git branch name
- name: repo-name
description: Repository name
- name: repo-full-name
description: Full repository name (org/repo)
resourcetemplates:
- apiVersion: tekton.dev/v1
kind: PipelineRun
metadata:
generateName: $(tt.params.repo-name)-dev-build-
namespace: tekton-pipelines
labels:
tekton.dev/pipeline: nextjs-build-deploy
app: $(tt.params.repo-name)-dev
branch: $(tt.params.git-branch)
spec:
timeouts:
pipeline: 30m
pipelineRef:
name: nextjs-build-deploy
params:
- name: git-url
value: $(tt.params.git-url)
- name: git-revision
value: $(tt.params.git-branch)
- name: app-name
value: $(tt.params.repo-name)-dev
- name: context-dir
value: ./nextjs
workspaces:
- name: shared-workspace
volumeClaimTemplate:
spec:
accessModes:
- ReadWriteOnce
storageClassName: local-path
resources:
requests:
storage: 1Gi
- name: docker-credentials
secret:
secretName: zot-registry-credentials
---
apiVersion: triggers.tekton.dev/v1beta1
kind: TriggerTemplate
metadata:
name: fastapi-build-template
namespace: tekton-pipelines
@@ -107,3 +162,58 @@ spec:
- name: docker-credentials
secret:
secretName: zot-registry-credentials
---
apiVersion: triggers.tekton.dev/v1beta1
kind: TriggerTemplate
metadata:
name: fastapi-dev-build-template
namespace: tekton-pipelines
spec:
params:
- name: git-url
description: Git repository URL
- name: git-revision
description: Git commit SHA
- name: git-branch
description: Git branch name
- name: repo-name
description: Repository name
- name: repo-full-name
description: Full repository name (org/repo)
resourcetemplates:
- apiVersion: tekton.dev/v1
kind: PipelineRun
metadata:
generateName: $(tt.params.repo-name)-dev-build-
namespace: tekton-pipelines
labels:
tekton.dev/pipeline: fastapi-build-deploy
app: $(tt.params.repo-name)-dev
branch: $(tt.params.git-branch)
spec:
timeouts:
pipeline: 30m
pipelineRef:
name: fastapi-build-deploy
params:
- name: git-url
value: $(tt.params.git-url)
- name: git-revision
value: $(tt.params.git-branch)
- name: app-name
value: $(tt.params.repo-name)-dev
- name: context-dir
value: ./fastapi
workspaces:
- name: shared-workspace
volumeClaimTemplate:
spec:
accessModes:
- ReadWriteOnce
storageClassName: local-path
resources:
requests:
storage: 1Gi
- name: docker-credentials
secret:
secretName: zot-registry-credentials