Added sample application and pipeline.
This commit is contained in:
@ -4,7 +4,7 @@ COPY go.mod /guestbook/
|
||||
COPY go.sum /guestbook/
|
||||
RUN cd /guestbook && go build
|
||||
|
||||
FROM docker.io/ubuntu:latest
|
||||
FROM docker.io/ubuntu:jammy-20230522
|
||||
|
||||
COPY --from=builder /guestbook/guestbook /app/guestbook
|
||||
|
||||
|
||||
51
2023-07-31-acs-workflows/guestbook/manifests/deployment.yaml
Normal file
51
2023-07-31-acs-workflows/guestbook/manifests/deployment.yaml
Normal file
@ -0,0 +1,51 @@
|
||||
---
|
||||
kind: Deployment
|
||||
apiVersion: apps/v1
|
||||
metadata:
|
||||
annotations:
|
||||
alpha.image.policy.openshift.io/resolve-names: '*'
|
||||
app.openshift.io/route-disabled: 'false'
|
||||
app.openshift.io/vcs-ref: main
|
||||
app.openshift.io/vcs-uri: 'https://github.com/jmhbnz/talks.git'
|
||||
deployment.kubernetes.io/revision: '1'
|
||||
image.openshift.io/triggers: >-
|
||||
[{"from":{"kind":"ImageStreamTag","name":"guestbook:latest","namespace":"guestbook"},"fieldPath":"spec.template.spec.containers[?(@.name==\"guestbook\")].image","pause":"false"}]
|
||||
openshift.io/generated-by: OpenShiftWebConsole
|
||||
name: guestbook
|
||||
namespace: guestbook
|
||||
labels:
|
||||
app.kubernetes.io/component: guestbook
|
||||
app.kubernetes.io/instance: guestbook
|
||||
app.kubernetes.io/name: guestbook
|
||||
app.kubernetes.io/part-of: guestbook
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: guestbook
|
||||
template:
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
app: guestbook
|
||||
deployment: guestbook
|
||||
spec:
|
||||
containers:
|
||||
- name: guestbook
|
||||
image: image-registry.openshift-image-registry.svc:5000/guestbook/guestbook:latest
|
||||
resources: {}
|
||||
terminationMessagePath: /dev/termination-log
|
||||
terminationMessagePolicy: File
|
||||
imagePullPolicy: Always
|
||||
restartPolicy: Always
|
||||
terminationGracePeriodSeconds: 30
|
||||
dnsPolicy: ClusterFirst
|
||||
securityContext: {}
|
||||
schedulerName: default-scheduler
|
||||
strategy:
|
||||
type: RollingUpdate
|
||||
rollingUpdate:
|
||||
maxUnavailable: 25%
|
||||
maxSurge: 25%
|
||||
revisionHistoryLimit: 10
|
||||
progressDeadlineSeconds: 600
|
||||
@ -0,0 +1,17 @@
|
||||
---
|
||||
kind: ImageStream
|
||||
apiVersion: image.openshift.io/v1
|
||||
metadata:
|
||||
annotations:
|
||||
app.openshift.io/vcs-ref: main
|
||||
app.openshift.io/vcs-uri: 'https://github.com/jmhbnz/talks.git'
|
||||
name: guestbook
|
||||
namespace: guestbook
|
||||
labels:
|
||||
app.kubernetes.io/component: guestbook
|
||||
app.kubernetes.io/instance: guestbook
|
||||
app.kubernetes.io/name: guestbook
|
||||
app.kubernetes.io/part-of: guestbook
|
||||
spec:
|
||||
lookupPolicy:
|
||||
local: false
|
||||
97
2023-07-31-acs-workflows/guestbook/manifests/pipeline.yaml
Normal file
97
2023-07-31-acs-workflows/guestbook/manifests/pipeline.yaml
Normal file
@ -0,0 +1,97 @@
|
||||
---
|
||||
apiVersion: tekton.dev/v1beta1
|
||||
kind: Pipeline
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/instance: guestbook
|
||||
app.kubernetes.io/name: guestbook
|
||||
operator.tekton.dev/operand-name: openshift-pipelines-addons
|
||||
pipeline.openshift.io/strategy: docker
|
||||
pipeline.openshift.io/type: kubernetes
|
||||
name: guestbook
|
||||
namespace: guestbook
|
||||
spec:
|
||||
params:
|
||||
- default: guestbook
|
||||
name: APP_NAME
|
||||
type: string
|
||||
- default: 'https://github.com/jmhbnz/talks.git'
|
||||
name: GIT_REPO
|
||||
type: string
|
||||
- default: main
|
||||
name: GIT_REVISION
|
||||
type: string
|
||||
- default: 'image-registry.openshift-image-registry.svc:5000/guestbook/guestbook'
|
||||
name: IMAGE_NAME
|
||||
type: string
|
||||
- default: 2023-07-31-acs-workflows/guestbook
|
||||
name: PATH_CONTEXT
|
||||
type: string
|
||||
tasks:
|
||||
- name: fetch-repository
|
||||
params:
|
||||
- name: url
|
||||
value: $(params.GIT_REPO)
|
||||
- name: revision
|
||||
value: $(params.GIT_REVISION)
|
||||
- name: subdirectory
|
||||
value: ''
|
||||
- name: deleteExisting
|
||||
value: 'true'
|
||||
taskRef:
|
||||
kind: ClusterTask
|
||||
name: git-clone
|
||||
workspaces:
|
||||
- name: output
|
||||
workspace: workspace
|
||||
- name: build
|
||||
params:
|
||||
- name: IMAGE
|
||||
value: $(params.IMAGE_NAME)
|
||||
- name: TLSVERIFY
|
||||
value: 'false'
|
||||
- name: CONTEXT
|
||||
value: $(params.PATH_CONTEXT)
|
||||
runAfter:
|
||||
- fetch-repository
|
||||
taskRef:
|
||||
kind: ClusterTask
|
||||
name: buildah
|
||||
workspaces:
|
||||
- name: source
|
||||
workspace: workspace
|
||||
- name: image-scan
|
||||
params:
|
||||
- name: image
|
||||
value: image-registry.openshift-image-registry.svc:5000/guestbook/guestbook
|
||||
- name: rox_api_token
|
||||
value: roxsecrets
|
||||
- name: rox_central_endpoint
|
||||
value: roxsecrets
|
||||
- name: output_format
|
||||
value: pretty
|
||||
taskRef:
|
||||
kind: ClusterTask
|
||||
name: rox-image-scan
|
||||
- name: image-check
|
||||
params:
|
||||
- name: image
|
||||
value: image-registry.openshift-image-registry.svc:5000/guestbook/guestbook
|
||||
- name: rox_api_token
|
||||
value: roxsecrets
|
||||
- name: rox_central_endpoint
|
||||
value: roxsecrets
|
||||
taskRef:
|
||||
kind: ClusterTask
|
||||
name: rox-image-check
|
||||
- name: deploy
|
||||
params:
|
||||
- name: SCRIPT
|
||||
value: oc rollout status deploy/$(params.APP_NAME)
|
||||
runAfter:
|
||||
- build
|
||||
taskRef:
|
||||
kind: ClusterTask
|
||||
name: openshift-client
|
||||
workspaces:
|
||||
- name: workspace
|
||||
@ -0,0 +1,43 @@
|
||||
---
|
||||
apiVersion: tekton.dev/v1beta1
|
||||
kind: PipelineRun
|
||||
metadata:
|
||||
name: guestbook-initial
|
||||
namespace: guestbook
|
||||
labels:
|
||||
app.kubernetes.io/instance: guestbook
|
||||
app.kubernetes.io/name: guestbook
|
||||
operator.tekton.dev/operand-name: openshift-pipelines-addons
|
||||
pipeline.openshift.io/strategy: docker
|
||||
pipeline.openshift.io/type: kubernetes
|
||||
tekton.dev/pipeline: guestbook
|
||||
spec:
|
||||
params:
|
||||
- name: APP_NAME
|
||||
value: guestbook
|
||||
- name: GIT_REPO
|
||||
value: 'https://github.com/jmhbnz/talks.git'
|
||||
- name: GIT_REVISION
|
||||
value: main
|
||||
- name: IMAGE_NAME
|
||||
value: 'image-registry.openshift-image-registry.svc:5000/guestbook/guestbook'
|
||||
- name: PATH_CONTEXT
|
||||
value: 2023-07-31-acs-workflows/guestbook
|
||||
pipelineRef:
|
||||
name: guestbook
|
||||
serviceAccountName: pipeline
|
||||
timeout: 1h0m0s
|
||||
workspaces:
|
||||
- name: workspace
|
||||
volumeClaimTemplate:
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 1Gi
|
||||
storageClassName: gp3-csi
|
||||
volumeMode: Filesystem
|
||||
status: {}
|
||||
Reference in New Issue
Block a user