Added tekton pipelines
This commit is contained in:
77
tekton/pipelines/deploy.yaml
Normal file
77
tekton/pipelines/deploy.yaml
Normal file
@@ -0,0 +1,77 @@
|
||||
apiVersion: tekton.dev/v1beta1
|
||||
kind: Pipeline
|
||||
metadata:
|
||||
name: deploy-project
|
||||
namespace: tekton-pipelines
|
||||
spec:
|
||||
params:
|
||||
- name: gitbranch
|
||||
type: string
|
||||
- name: gitrevision
|
||||
type: string
|
||||
- name: projectname
|
||||
type: string
|
||||
- name: isprivate
|
||||
default: "true"
|
||||
type: string
|
||||
- name: dockerregistry
|
||||
type: string
|
||||
description: The Docker registry to push images to
|
||||
default: docker.cloud.cluster.fun/private
|
||||
- name: publicdockerregistry
|
||||
type: string
|
||||
description: The Docker registry to push images to
|
||||
default: docker.cloud.cluster.fun/averagemarcus
|
||||
- name: imagetag
|
||||
type: string
|
||||
description: The Docker image tag
|
||||
default: latest
|
||||
resources:
|
||||
- name: git-source
|
||||
type: git
|
||||
tasks:
|
||||
- name: build-and-publish-latest
|
||||
taskRef:
|
||||
name: docker-build-and-publish
|
||||
params:
|
||||
- name: IMAGE
|
||||
value: $(params.dockerregistry)/$(params.projectname):$(params.imagetag)
|
||||
resources:
|
||||
inputs:
|
||||
- name: src
|
||||
resource: git-source
|
||||
- name: build-and-publish-sha
|
||||
taskRef:
|
||||
name: docker-build-and-publish
|
||||
params:
|
||||
- name: IMAGE
|
||||
value: $(params.dockerregistry)/$(params.projectname):$(params.gitrevision)
|
||||
resources:
|
||||
inputs:
|
||||
- name: src
|
||||
resource: git-source
|
||||
- name: build-and-publish-public
|
||||
conditions:
|
||||
- conditionRef: is-public-project
|
||||
params:
|
||||
- name: isprivate
|
||||
value: $(params.isprivate)
|
||||
taskRef:
|
||||
name: docker-build-and-publish
|
||||
params:
|
||||
- name: IMAGE
|
||||
value: $(params.publicdockerregistry)/$(params.projectname):$(params.imagetag)
|
||||
resources:
|
||||
inputs:
|
||||
- name: src
|
||||
resource: git-source
|
||||
- name: make-release
|
||||
taskRef:
|
||||
name: make
|
||||
params:
|
||||
- name: TARGET
|
||||
value: "release"
|
||||
resources:
|
||||
inputs:
|
||||
- name: src
|
||||
resource: git-source
|
91
tekton/pipelines/pr.yaml
Normal file
91
tekton/pipelines/pr.yaml
Normal file
@@ -0,0 +1,91 @@
|
||||
apiVersion: tekton.dev/v1beta1
|
||||
kind: Pipeline
|
||||
metadata:
|
||||
name: pr-project
|
||||
namespace: tekton-pipelines
|
||||
spec:
|
||||
params:
|
||||
- name: gitbranch
|
||||
type: string
|
||||
- name: gitrevision
|
||||
type: string
|
||||
- name: projectname
|
||||
type: string
|
||||
resources:
|
||||
- name: git-source
|
||||
type: git
|
||||
tasks:
|
||||
- name: pr-start
|
||||
taskRef:
|
||||
name: pr-status
|
||||
params:
|
||||
- name: REPO
|
||||
value: $(params.projectname)
|
||||
- name: SHA
|
||||
value: $(params.gitrevision)
|
||||
- name: STATE
|
||||
value: "pending"
|
||||
- name: make-test
|
||||
# TODO: Re-enable when conditionals can result in skipped rather than failure
|
||||
# conditions:
|
||||
# - conditionRef: has-makefile
|
||||
# resources:
|
||||
# - name: src
|
||||
# resource: git-source
|
||||
taskRef:
|
||||
name: make
|
||||
params:
|
||||
- name: TARGET
|
||||
value: "test"
|
||||
resources:
|
||||
inputs:
|
||||
- name: src
|
||||
resource: git-source
|
||||
- name: make-build
|
||||
# TODO: Re-enable when conditionals can result in skipped rather than failure
|
||||
# conditions:
|
||||
# - conditionRef: has-makefile
|
||||
# resources:
|
||||
# - name: src
|
||||
# resource: git-source
|
||||
taskRef:
|
||||
name: make
|
||||
params:
|
||||
- name: TARGET
|
||||
value: "build"
|
||||
resources:
|
||||
inputs:
|
||||
- name: src
|
||||
resource: git-source
|
||||
- name: make-ci
|
||||
# TODO: Re-enable when conditionals can result in skipped rather than failure
|
||||
# conditions:
|
||||
# - conditionRef: has-makefile
|
||||
# resources:
|
||||
# - name: src
|
||||
# resource: git-source
|
||||
taskRef:
|
||||
name: make
|
||||
params:
|
||||
- name: TARGET
|
||||
value: "ci"
|
||||
resources:
|
||||
inputs:
|
||||
- name: src
|
||||
resource: git-source
|
||||
- name: pr-end
|
||||
taskRef:
|
||||
name: pr-status
|
||||
runAfter:
|
||||
- pr-start
|
||||
- make-test
|
||||
- make-build
|
||||
- make-ci
|
||||
params:
|
||||
- name: REPO
|
||||
value: $(params.projectname)
|
||||
- name: SHA
|
||||
value: $(params.gitrevision)
|
||||
- name: STATE
|
||||
value: "success"
|
||||
|
53
tekton/pipelines/tag.yaml
Normal file
53
tekton/pipelines/tag.yaml
Normal file
@@ -0,0 +1,53 @@
|
||||
apiVersion: tekton.dev/v1beta1
|
||||
kind: Pipeline
|
||||
metadata:
|
||||
name: project-tag
|
||||
namespace: tekton-pipelines
|
||||
spec:
|
||||
params:
|
||||
- name: projectname
|
||||
type: string
|
||||
- name: isprivate
|
||||
default: "true"
|
||||
type: string
|
||||
- name: dockerregistry
|
||||
type: string
|
||||
description: The Docker registry to push images to
|
||||
default: docker.cloud.cluster.fun/private
|
||||
- name: publicdockerregistry
|
||||
type: string
|
||||
description: The Docker registry to push images to
|
||||
default: docker.cloud.cluster.fun/averagemarcus
|
||||
- name: imagetag
|
||||
type: string
|
||||
description: The Docker image tag
|
||||
default: latest
|
||||
resources:
|
||||
- name: git-source
|
||||
type: git
|
||||
tasks:
|
||||
- name: build-and-publish-tag
|
||||
taskRef:
|
||||
name: docker-build-and-publish
|
||||
params:
|
||||
- name: IMAGE
|
||||
value: $(params.dockerregistry)/$(params.projectname):$(params.imagetag)
|
||||
resources:
|
||||
inputs:
|
||||
- name: src
|
||||
resource: git-source
|
||||
- name: build-and-publish-tag-public
|
||||
conditions:
|
||||
- conditionRef: is-public-project
|
||||
params:
|
||||
- name: isprivate
|
||||
value: $(params.isprivate)
|
||||
taskRef:
|
||||
name: docker-build-and-publish
|
||||
params:
|
||||
- name: IMAGE
|
||||
value: $(params.publicdockerregistry)/$(params.projectname):$(params.imagetag)
|
||||
resources:
|
||||
inputs:
|
||||
- name: src
|
||||
resource: git-source
|
Reference in New Issue
Block a user