apiVersion: template.openshift.io/v1
|
|
kind: Template
|
|
metadata:
|
|
name: 'api-template'
|
|
objects:
|
|
- apiVersion: apps.openshift.io/v1
|
|
kind: DeploymentConfig
|
|
metadata:
|
|
labels:
|
|
app: ${APPLICATION_NAME}
|
|
name: ${APPLICATION_NAME}
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
app: ${APPLICATION_NAME}
|
|
deploymentconfig: ${APPLICATION_NAME}
|
|
strategy:
|
|
type: Rolling
|
|
revisionHistoryLimit: 2
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: ${APPLICATION_NAME}
|
|
deploymentconfig: ${APPLICATION_NAME}
|
|
spec:
|
|
containers:
|
|
- image: docker-registry.default.svc:5000/${IMAGE_REGISTRY_PROJECT_NAME}/${APPLICATION_NAME}:latest
|
|
imagePullPolicy: Always
|
|
name: ${APPLICATION_NAME}
|
|
ports:
|
|
- containerPort: 8080
|
|
protocol: TCP
|
|
resources: {}
|
|
terminationMessagePath: /dev/termination-log
|
|
terminationMessagePolicy: File
|
|
dnsPolicy: ClusterFirst
|
|
restartPolicy: Always
|
|
schedulerName: default-scheduler
|
|
securityContext: {}
|
|
terminationGracePeriodSeconds: 30
|
|
triggers:
|
|
- type: ConfigChange
|
|
- imageChangeParams:
|
|
automatic: true
|
|
containerNames:
|
|
- ${APPLICATION_NAME}
|
|
from:
|
|
kind: ImageStreamTag
|
|
name: ${APPLICATION_NAME}:latest
|
|
namespace: ${IMAGE_REGISTRY_PROJECT_NAME}
|
|
type: ImageChange
|
|
- apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
labels:
|
|
app: ${APPLICATION_NAME}
|
|
name: ${APPLICATION_NAME}
|
|
spec:
|
|
ports:
|
|
- name: 8080-tcp
|
|
port: 8080
|
|
protocol: TCP
|
|
targetPort: 8080
|
|
selector:
|
|
app: ${APPLICATION_NAME}
|
|
deploymentconfig: ${APPLICATION_NAME}
|
|
sessionAffinity: None
|
|
type: ClusterIP
|
|
status:
|
|
loadBalancer: {}
|
|
parameters:
|
|
- description: The name for the application.
|
|
displayName: Application Name
|
|
name: APPLICATION_NAME
|
|
required: true
|
|
- description: The OpenShift project name that is hosting the image registry.
|
|
displayName: Image Registry Project Name
|
|
name: IMAGE_REGISTRY_PROJECT_NAME
|
|
required: true
|