apiVersion: v1 kind: Template objects: #- apiVersion: v1 # kind: PersistentVolumeClaim # metadata: # name: ${APP}-data # labels: # app: ${APP} # spec: # accessModes: # - ReadWriteOnce # resources: # requests: # storage: ${STORAGE_SIZE} - apiVersion: v1 kind: DeploymentConfig metadata: name: ${APP} labels: app: ${APP} spec: replicas: ${REPLICAS} selector: app: ${APP} deploymentconfig: ${APP} template: metadata: labels: app: ${APP} deploymentconfig: ${APP} spec: containers: - image: ${PROJECT_BASE}-${BUILD_ENV}/${APP}:${ENV} imagePullPolicy: Always name: ${APP} ports: - containerPort: 8080 protocol: TCP triggers: - type: ImageChange imageChangeParams: automatic: false containerNames: - ${APP} from: kind: ImageStreamTag name: ${APP}:${ENV} namespace: ${PROJECT_BASE}-${BUILD_ENV} - apiVersion: v1 kind: Service metadata: name: ${APP} labels: app: ${APP} spec: ports: - name: 8080-tcp port: 8080 protocol: TCP targetPort: 8080 selector: app: ${APP} deploymentconfig: ${APP} - apiVersion: v1 kind: Route metadata: name: ${APP} labels: app: ${APP} spec: port: targetPort: 8080-tcp to: kind: Service name: ${APP} parameters: - description: The project base name. displayName: Project base name name: PROJECT_BASE value: rubex - description: The application name. displayName: Application name name: APP value: frontend - description: The environment in which the image stream is built. displayName: Build environment name: BUILD_ENV value: dev - description: The environment into which the app is deployed. displayName: Environment name: ENV - description: The number of replicas. displayName: Replicas name: REPLICAS value: "1" - description: The size of the storage to reclaim. displayName: Storage size name: STORAGE_SIZE value: 5Gi