This commit is contained in:
2025-08-04 01:59:39 +00:00
parent ac3d1cc6a7
commit 7dc67ca8ac
9 changed files with 117 additions and 0 deletions

3
Dockerfile Normal file
View File

@ -0,0 +1,3 @@
FROM nginx:alpine
COPY index.html /usr/share/nginx/html/index.html

1
index.html Normal file
View File

@ -0,0 +1 @@
<p> test - 01 </p>

View File

@ -0,0 +1,24 @@
# pipeline-build.yaml
apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
name: nginx-build-pipeline
namespace: tekton-demo
spec:
params:
- name: GIT_URL
- name: GIT_REVISION
default: "main"
- name: IMAGE
tasks:
- name: build
taskRef:
name: build-and-push
params:
- name: GIT_URL
value: $(params.GIT_URL)
- name: GIT_REVISION
value: $(params.GIT_REVISION)
- name: IMAGE
value: $(params.IMAGE)

View File

@ -0,0 +1,34 @@
#task-build.yaml
apiVersion: tekton.dev/v1
kind: Task
metadata:
name: build-and-push
namespace: tekton-demo
spec:
params:
- name: IMAGE
type: string
description: "Target image"
- name: GIT_URL
type: string
- name: GIT_REVISION
type: string
default: "main"
steps:
- name: git-clone
image: alpine/git
script: |
#!/bin/sh
git clone $(params.GIT_URL) source
cd source
git checkout $(params.GIT_REVISION)
- name: build-image
image: gcr.io/kaniko-project/executor:latest
args:
- "--dockerfile=source/Dockerfile"
- "--context=source/"
- "--destination=$(params.IMAGE)"
- "--insecure"
- "--skip-tls-verify"

54
k8s/tekton/trigger.yaml Normal file
View File

@ -0,0 +1,54 @@
# trigger.yaml
apiVersion: triggers.tekton.dev/v1beta1
kind: TriggerTemplate
metadata:
name: nginx-build-template
namespace: tekton-demo
spec:
params:
- name: git-repo-url
- name: git-revision
resourcetemplates:
- apiVersion: tekton.dev/v1
kind: PipelineRun
metadata:
generateName: nginx-build-run-
spec:
pipelineRef:
name: nginx-build-pipeline
params:
- name: GIT_URL
value: $(tt.params.git-repo-url)
- name: GIT_REVISION
value: $(tt.params.git-revision)
- name: IMAGE
value: harbor.icurfer.com/open/nginx-demo:latest
---
apiVersion: triggers.tekton.dev/v1beta1
kind: TriggerBinding
metadata:
name: nginx-build-binding
namespace: tekton-demo
spec:
params:
- name: git-repo-url
value: $(body.repository.clone_url)
- name: git-revision
value: $(body.ref)
---
apiVersion: triggers.tekton.dev/v1beta1
kind: EventListener
metadata:
name: nginx-build-listener
namespace: tekton-demo
spec:
serviceAccountName: tekton-triggers-sa
triggers:
- name: nginx-build-trigger
bindings:
- ref: nginx-build-binding
template:
ref: nginx-build-template

1
tmp Normal file
View File

@ -0,0 +1 @@
1