|
|
|
@ -1,9 +1,13 @@
|
|
|
|
|
apiVersion: tekton.dev/v1beta1
|
|
|
|
|
kind: PipelineRun
|
|
|
|
|
metadata:
|
|
|
|
|
name: clippy
|
|
|
|
|
name: rust-clippy
|
|
|
|
|
spec:
|
|
|
|
|
pipelineSpec:
|
|
|
|
|
timeouts:
|
|
|
|
|
pipeline: "2h0m0s"
|
|
|
|
|
tasks: "1h0m40s"
|
|
|
|
|
finally: "0h30m0s"
|
|
|
|
|
params:
|
|
|
|
|
- name: image-name
|
|
|
|
|
description: The name for the built image
|
|
|
|
@ -14,35 +18,17 @@ spec:
|
|
|
|
|
- name: path-to-dockerfile
|
|
|
|
|
description: The path to the Dockerfile
|
|
|
|
|
type: string
|
|
|
|
|
- name: GIT_USER_NAME
|
|
|
|
|
description: The username for git
|
|
|
|
|
type: string
|
|
|
|
|
default: "fluxcdbot"
|
|
|
|
|
- name: GIT_USER_EMAIL
|
|
|
|
|
description: The email for git
|
|
|
|
|
type: string
|
|
|
|
|
default: "fluxcdbot@users.noreply.github.com"
|
|
|
|
|
tasks:
|
|
|
|
|
- name: do-stuff
|
|
|
|
|
taskSpec:
|
|
|
|
|
metadata: {}
|
|
|
|
|
stepTemplate:
|
|
|
|
|
image: alpine:3.19
|
|
|
|
|
name: ""
|
|
|
|
|
resources:
|
|
|
|
|
requests:
|
|
|
|
|
cpu: 10m
|
|
|
|
|
memory: 600Mi
|
|
|
|
|
workingDir: /workspace/source
|
|
|
|
|
steps:
|
|
|
|
|
- image: alpine:3.19
|
|
|
|
|
name: do-stuff-step
|
|
|
|
|
script: |
|
|
|
|
|
#!/usr/bin/env sh
|
|
|
|
|
echo "hello world"
|
|
|
|
|
- name: report-pending
|
|
|
|
|
taskRef:
|
|
|
|
|
name: gitea-set-status
|
|
|
|
|
resolver: git
|
|
|
|
|
params:
|
|
|
|
|
- name: url
|
|
|
|
|
value: https://github.com/tektoncd/catalog.git
|
|
|
|
|
- name: revision
|
|
|
|
|
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
|
|
|
|
- name: pathInRepo
|
|
|
|
|
value: task/gitea-set-status/0.1/gitea-set-status.yaml
|
|
|
|
|
runAfter:
|
|
|
|
|
- fetch-repository
|
|
|
|
|
params:
|
|
|
|
@ -62,7 +48,14 @@ spec:
|
|
|
|
|
value: "https://tekton.fizz.buzz/#/namespaces/$(context.pipelineRun.namespace)/pipelineruns/$(context.pipelineRun.name)"
|
|
|
|
|
- name: fetch-repository
|
|
|
|
|
taskRef:
|
|
|
|
|
name: git-clone
|
|
|
|
|
resolver: git
|
|
|
|
|
params:
|
|
|
|
|
- name: url
|
|
|
|
|
value: https://github.com/tektoncd/catalog.git
|
|
|
|
|
- name: revision
|
|
|
|
|
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
|
|
|
|
- name: pathInRepo
|
|
|
|
|
value: task/git-clone/0.9/git-clone.yaml
|
|
|
|
|
workspaces:
|
|
|
|
|
- name: output
|
|
|
|
|
workspace: git-source
|
|
|
|
@ -75,7 +68,14 @@ spec:
|
|
|
|
|
value: "true"
|
|
|
|
|
- name: build-image
|
|
|
|
|
taskRef:
|
|
|
|
|
name: kaniko
|
|
|
|
|
resolver: git
|
|
|
|
|
params:
|
|
|
|
|
- name: url
|
|
|
|
|
value: https://github.com/tektoncd/catalog.git
|
|
|
|
|
- name: revision
|
|
|
|
|
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
|
|
|
|
- name: pathInRepo
|
|
|
|
|
value: task/kaniko/0.6/kaniko.yaml
|
|
|
|
|
params:
|
|
|
|
|
- name: IMAGE
|
|
|
|
|
value: "$(params.image-name):$(tasks.fetch-repository.results.commit)"
|
|
|
|
@ -102,9 +102,47 @@ spec:
|
|
|
|
|
workspace: docker-credentials
|
|
|
|
|
runAfter:
|
|
|
|
|
- fetch-repository
|
|
|
|
|
- name: clippy
|
|
|
|
|
taskRef:
|
|
|
|
|
name: run-docker-image
|
|
|
|
|
- name: run-cargo-clippy
|
|
|
|
|
taskSpec:
|
|
|
|
|
metadata: {}
|
|
|
|
|
params:
|
|
|
|
|
- name: docker-image
|
|
|
|
|
type: string
|
|
|
|
|
description: Docker image to run.
|
|
|
|
|
default: alpine:3.18
|
|
|
|
|
stepTemplate:
|
|
|
|
|
image: alpine:3.18
|
|
|
|
|
name: ""
|
|
|
|
|
resources:
|
|
|
|
|
requests:
|
|
|
|
|
cpu: 10m
|
|
|
|
|
memory: 600Mi
|
|
|
|
|
workingDir: /workspace/source
|
|
|
|
|
workspaces:
|
|
|
|
|
- name: source
|
|
|
|
|
mountPath: /source
|
|
|
|
|
- name: cargo-cache
|
|
|
|
|
mountPath: /usr/local/cargo/registry
|
|
|
|
|
optional: true
|
|
|
|
|
steps:
|
|
|
|
|
- name: run
|
|
|
|
|
image: $(params.docker-image)
|
|
|
|
|
workingDir: "$(workspaces.source.path)"
|
|
|
|
|
command:
|
|
|
|
|
[
|
|
|
|
|
"cargo",
|
|
|
|
|
"clippy",
|
|
|
|
|
"--no-deps",
|
|
|
|
|
"--all-targets",
|
|
|
|
|
"--all-features",
|
|
|
|
|
"--",
|
|
|
|
|
"-D",
|
|
|
|
|
"warnings",
|
|
|
|
|
]
|
|
|
|
|
args: []
|
|
|
|
|
env:
|
|
|
|
|
- name: CARGO_TARGET_DIR
|
|
|
|
|
value: /target
|
|
|
|
|
workspaces:
|
|
|
|
|
- name: source
|
|
|
|
|
workspace: git-source
|
|
|
|
@ -122,7 +160,14 @@ spec:
|
|
|
|
|
operator: in
|
|
|
|
|
values: ["Succeeded", "Completed"]
|
|
|
|
|
taskRef:
|
|
|
|
|
name: gitea-set-status
|
|
|
|
|
resolver: git
|
|
|
|
|
params:
|
|
|
|
|
- name: url
|
|
|
|
|
value: https://github.com/tektoncd/catalog.git
|
|
|
|
|
- name: revision
|
|
|
|
|
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
|
|
|
|
- name: pathInRepo
|
|
|
|
|
value: task/gitea-set-status/0.1/gitea-set-status.yaml
|
|
|
|
|
params:
|
|
|
|
|
- name: CONTEXT
|
|
|
|
|
value: "$(params.JOB_NAME)"
|
|
|
|
@ -144,7 +189,14 @@ spec:
|
|
|
|
|
operator: in
|
|
|
|
|
values: ["Failed"]
|
|
|
|
|
taskRef:
|
|
|
|
|
name: gitea-set-status
|
|
|
|
|
resolver: git
|
|
|
|
|
params:
|
|
|
|
|
- name: url
|
|
|
|
|
value: https://github.com/tektoncd/catalog.git
|
|
|
|
|
- name: revision
|
|
|
|
|
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
|
|
|
|
- name: pathInRepo
|
|
|
|
|
value: task/gitea-set-status/0.1/gitea-set-status.yaml
|
|
|
|
|
params:
|
|
|
|
|
- name: CONTEXT
|
|
|
|
|
value: "$(params.JOB_NAME)"
|
|
|
|
@ -160,9 +212,46 @@ spec:
|
|
|
|
|
value: failure
|
|
|
|
|
- name: TARGET_URL
|
|
|
|
|
value: "https://tekton.fizz.buzz/#/namespaces/$(context.pipelineRun.namespace)/pipelineruns/$(context.pipelineRun.name)"
|
|
|
|
|
- name: cargo-cache-autoclean
|
|
|
|
|
taskSpec:
|
|
|
|
|
metadata: {}
|
|
|
|
|
params:
|
|
|
|
|
- name: docker-image
|
|
|
|
|
type: string
|
|
|
|
|
description: Docker image to run.
|
|
|
|
|
default: alpine:3.18
|
|
|
|
|
stepTemplate:
|
|
|
|
|
image: alpine:3.18
|
|
|
|
|
name: ""
|
|
|
|
|
resources:
|
|
|
|
|
requests:
|
|
|
|
|
cpu: 10m
|
|
|
|
|
memory: 600Mi
|
|
|
|
|
workingDir: /workspace/source
|
|
|
|
|
workspaces:
|
|
|
|
|
- name: source
|
|
|
|
|
mountPath: /source
|
|
|
|
|
- name: cargo-cache
|
|
|
|
|
mountPath: /usr/local/cargo/registry
|
|
|
|
|
optional: true
|
|
|
|
|
steps:
|
|
|
|
|
- name: run
|
|
|
|
|
image: $(params.docker-image)
|
|
|
|
|
workingDir: "$(workspaces.source.path)"
|
|
|
|
|
command: [cargo, cache, --autoclean]
|
|
|
|
|
args: []
|
|
|
|
|
workspaces:
|
|
|
|
|
- name: source
|
|
|
|
|
workspace: git-source
|
|
|
|
|
- name: cargo-cache
|
|
|
|
|
workspace: cargo-cache
|
|
|
|
|
params:
|
|
|
|
|
- name: docker-image
|
|
|
|
|
value: "$(params.image-name):$(tasks.fetch-repository.results.commit)"
|
|
|
|
|
workspaces:
|
|
|
|
|
- name: git-source
|
|
|
|
|
- name: docker-credentials
|
|
|
|
|
- name: cargo-cache
|
|
|
|
|
workspaces:
|
|
|
|
|
- name: git-source
|
|
|
|
|
volumeClaimTemplate:
|
|
|
|
@ -181,7 +270,6 @@ spec:
|
|
|
|
|
secret:
|
|
|
|
|
secretName: harbor-plain
|
|
|
|
|
serviceAccountName: build-bot
|
|
|
|
|
timeout: 240h0m0s
|
|
|
|
|
params:
|
|
|
|
|
- name: image-name
|
|
|
|
|
value: "harbor.fizz.buzz/private/organic-clippy"
|