cara/app-config/openshift/application.yaml

291 lines
7.5 KiB
YAML

---
kind: "Template"
apiVersion: "v1"
metadata:
name: "cara-application"
creationTimestamp: null
annotations:
description: "CARA application OpenShift template."
tags: "cara-application"
labels:
template: "cara-application"
objects:
-
kind: BuildConfig
apiVersion: v1
metadata:
name: auth-service
spec:
source:
git:
ref: ${GIT_BRANCH}
uri: ${GIT_REPO}
contextDir: app-config/auth-service
sourceSecret:
name: sshdeploykey
output:
to:
kind: ImageStreamTag
name: 'auth-service:latest'
strategy:
sourceStrategy:
from:
kind: ImageStreamTag
name: 'python:3.6'
namespace: openshift
type: Source
triggers:
- imageChange:
type: ImageChange
- generic:
secretReference:
name: gitlab-cara-webhook-secret
type: Generic
-
kind: ImageStream
apiVersion: v1
metadata:
name: auth-service
-
kind: BuildConfig
apiVersion: v1
metadata:
name: cara-router
spec:
source:
git:
ref: ${GIT_BRANCH}
uri: ${GIT_REPO}
contextDir: app-config/nginx
sourceSecret:
name: sshdeploykey
output:
to:
kind: ImageStreamTag
name: 'cara-router:latest'
strategy:
sourceStrategy:
from:
kind: ImageStreamTag
name: 'nginx:1.12'
namespace: openshift
type: Source
triggers:
- generic:
secretReference:
name: gitlab-cara-webhook-secret
type: Generic
-
kind: ImageStream
apiVersion: v1
metadata:
name: cara-app
-
kind: BuildConfig
apiVersion: v1
metadata:
name: cara-router
spec:
source:
git:
ref: ${GIT_BRANCH}
uri: ${GIT_REPO}
contextDir: app-config/nginx
sourceSecret:
name: sshdeploykey
output:
to:
kind: ImageStreamTag
name: 'cara-router:latest'
strategy:
sourceStrategy:
from:
kind: ImageStreamTag
name: 'nginx:1.12'
namespace: openshift
type: Source
triggers:
- generic:
secretReference:
name: gitlab-cara-webhook-secret
type: Generic
-
kind: ImageStream
apiVersion: v1
metadata:
name: cara-router
-
kind: BuildConfig
apiVersion: v1
metadata:
name: cara-webservice
spec:
source:
git:
ref: ${GIT_BRANCH}
uri: ${GIT_REPO}
sourceSecret:
name: sshdeploykey
output:
to:
kind: ImageStreamTag
name: 'cara-webservice:latest'
strategy:
sourceStrategy:
from:
kind: ImageStreamTag
name: 'python:3.6'
namespace: openshift
type: Source
triggers:
- generic:
secretReference:
name: gitlab-cara-webhook-secret
type: Generic
-
kind: ImageStream
apiVersion: v1
metadata:
name: cara-webservice
-
apiVersion: v1
kind: DeploymentConfig
metadata:
name: auth-service
spec:
replicas;: 1
template:
metadata:
labels:
app: auth-service
spec:
containers:
- name: auth-service
image: '${PROJECT_NAME}/auth-service'
ports:
- containerPort: 8080
protocol: TCP
- envFrom:
- configMapRef:
name: auth-service
- secretRef:
name: auth-service-secrets
triggers:
- type: ConfigChange
- type: ImageChange
imageChangeParams:
automatic: true
containerNames:
- auth-service
from:
kind: ImageStreamTag
name: 'auth-service:latest'
namespace: ${PROJECT_NAME}
-
apiVersion: v1
kind: DeploymentConfig
metadata:
name: cara-app
spec:
replicas;: 1
template:
metadata:
labels:
app: cara-app
spec:
containers:
- name: cara-app
env:
- name: APP_NAME
value: cara-voila
image: '${PROJECT_NAME}/cara-webservice'
ports:
- containerPort: 8080
protocol: TCP
triggers:
- type: ConfigChange
- type: ImageChange
imageChangeParams:
automatic: true
containerNames:
- cara-app
from:
kind: ImageStreamTag
name: 'cara-webservice:latest'
namespace: ${PROJECT_NAME}
-
apiVersion: v1
kind: DeploymentConfig
metadata:
name: cara-router
spec:
replicas;: 1
template:
metadata:
labels:
app: cara-router
spec:
containers:
- name: cara-router
image: '${PROJECT_NAME}/cara-router'
ports:
- containerPort: 8080
protocol: TCP
- containerPort: 8443
protocol: TCP
triggers:
- type: ConfigChange
- type: ImageChange
imageChangeParams:
automatic: true
containerNames:
- cara-router
from:
kind: ImageStreamTag
name: 'cara-router:latest'
namespace: ${PROJECT_NAME}
- type: ConfigChange
-
apiVersion: v1
kind: DeploymentConfig
metadata:
name: cara-webservice
spec:
replicas;: 1
template:
metadata:
labels:
app: cara-webservice
spec:
containers:
- name: cara-webservice
env:
- name: APP_NAME
value: cara-webservice
image: '${PROJECT_NAME}/cara-webservice'
ports:
- containerPort: 8080
protocol: TCP
triggers:
- type: ConfigChange
- type: ImageChange
imageChangeParams:
automatic: true
containerNames:
- cara-webservice
from:
kind: ImageStreamTag
name: 'cara-webservice:latest'
namespace: ${PROJECT_NAME}
- type: ConfigChange
parameters:
- name: PROJECT_NAME
description: The name of this project, e.g. test-cara
required: true
- name: GIT_REPO
description: The GIT repo URL
value: 'ssh://git@gitlab.cern.ch:7999/cara/cara.git'
- name: GIT_BRANCH
description: The name of the GIT branch to use when building the app, e.g. `live/test-cara` in TEST, `master` in prod
required: true