2 changed files with 159 additions and 0 deletions
@ -0,0 +1,158 @@ |
|||
apiVersion: v1 |
|||
kind: ServiceAccount |
|||
metadata: |
|||
name: tekton-listener |
|||
--- |
|||
apiVersion: rbac.authorization.k8s.io/v1 |
|||
kind: Role |
|||
metadata: |
|||
name: tekton-listener |
|||
rules: |
|||
# EventListeners need to be able to fetch all namespaced resources |
|||
- apiGroups: ["triggers.tekton.dev"] |
|||
resources: ["eventlisteners", "triggerbindings", "triggertemplates", "triggers", "clusterinterceptors"] |
|||
verbs: ["get", "list", "watch"] |
|||
- apiGroups: [""] |
|||
# secrets are only needed for GitHub/GitLab interceptors |
|||
# configmaps is needed for updating logging config |
|||
resources: ["configmaps", "secrets"] |
|||
verbs: ["get", "list", "watch"] |
|||
# Permissions to create resources in associated TriggerTemplates |
|||
- apiGroups: ["tekton.dev"] |
|||
resources: ["pipelineruns", "pipelineresources", "taskruns"] |
|||
verbs: ["create"] |
|||
- apiGroups: [""] |
|||
resources: ["serviceaccounts"] |
|||
verbs: ["impersonate"] |
|||
--- |
|||
apiVersion: rbac.authorization.k8s.io/v1 |
|||
kind: ClusterRoleBinding |
|||
metadata: |
|||
name: tekton-listener |
|||
subjects: |
|||
- kind: ServiceAccount |
|||
name: tekton-listener |
|||
namespace: demo-appdev |
|||
roleRef: |
|||
apiGroup: rbac.authorization.k8s.io |
|||
kind: ClusterRole |
|||
name: tekton-triggers-eventlistener-clusterroles |
|||
--- |
|||
apiVersion: rbac.authorization.k8s.io/v1 |
|||
kind: RoleBinding |
|||
metadata: |
|||
name: tekton-listener |
|||
subjects: |
|||
- kind: ServiceAccount |
|||
name: tekton-listener |
|||
roleRef: |
|||
apiGroup: rbac.authorization.k8s.io |
|||
kind: Role |
|||
name: tekton-listener |
|||
--- |
|||
apiVersion: triggers.tekton.dev/v1beta1 |
|||
kind: TriggerTemplate |
|||
metadata: |
|||
name: demo-appdev |
|||
spec: |
|||
params: |
|||
- name: gitRepositoryURL |
|||
description: The git repository url |
|||
- name: gitRevision |
|||
description: The git revision to checkout |
|||
resourcetemplates: |
|||
- apiVersion: tekton.dev/v1beta1 |
|||
kind: PipelineRun |
|||
metadata: |
|||
generateName: demo-appdev- |
|||
spec: |
|||
serviceAccountName: tekton-robot |
|||
pipelineRef: |
|||
name: build-and-deploy |
|||
params: |
|||
- name: gitRepositoryURL |
|||
value: $(tt.params.gitRepositoryURL) |
|||
- name: outputContainerImage |
|||
value: image-registry.openshift-image-registry.svc:5000/demo-appdev/function |
|||
workspaces: |
|||
- name: scratch |
|||
volumeClaimTemplate: |
|||
spec: |
|||
accessModes: |
|||
- ReadWriteOnce |
|||
resources: |
|||
requests: |
|||
storage: 1Gi |
|||
--- |
|||
apiVersion: triggers.tekton.dev/v1beta1 |
|||
kind: TriggerBinding |
|||
metadata: |
|||
name: demo-appdev |
|||
spec: |
|||
params: |
|||
- name: gitRepositoryURL |
|||
value: $(body.repository.url) |
|||
- name: gitRevision |
|||
value: $(body.head_commit.id) |
|||
--- |
|||
apiVersion: v1 |
|||
kind: Secret |
|||
metadata: |
|||
name: github-secret |
|||
type: Opaque |
|||
stringData: |
|||
sharedSecret: "secret" |
|||
--- |
|||
apiVersion: triggers.tekton.dev/v1beta1 |
|||
kind: Trigger |
|||
metadata: |
|||
name: demo-appdev |
|||
spec: |
|||
serviceAccountName: tekton-listener |
|||
interceptors: |
|||
- ref: |
|||
name: "github" |
|||
kind: ClusterInterceptor |
|||
apiVersion: triggers.tekton.dev |
|||
params: |
|||
- name: "secretRef" |
|||
value: |
|||
secretName: github-secret |
|||
secretKey: sharedSecret |
|||
- name: "eventTypes" |
|||
value: ["push"] |
|||
- ref: |
|||
name: "cel" |
|||
kind: ClusterInterceptor |
|||
apiVersion: triggers.tekton.dev |
|||
params: |
|||
- name: "filter" |
|||
value: "header.match('X-GitHub-Event', 'push')" |
|||
bindings: |
|||
- ref: demo-appdev |
|||
template: |
|||
ref: demo-appdev |
|||
--- |
|||
apiVersion: triggers.tekton.dev/v1beta1 |
|||
kind: EventListener |
|||
metadata: |
|||
name: demo-appdev |
|||
spec: |
|||
serviceAccountName: tekton-listener |
|||
triggers: |
|||
- triggerRef: demo-appdev |
|||
--- |
|||
apiVersion: route.openshift.io/v1 |
|||
kind: Route |
|||
metadata: |
|||
name: el-demo-appdev |
|||
spec: |
|||
port: |
|||
targetPort: 8080 |
|||
tls: |
|||
insecureEdgeTerminationPolicy: Redirect |
|||
termination: Edge |
|||
to: |
|||
kind: Service |
|||
name: el-demo-appdev |
|||
weight: 100 |
|||
Loading…
Reference in new issue