Added Catalog API deployment
This commit is contained in:
parent
5a10ce4fa4
commit
48f8378d48
@ -14,6 +14,7 @@ variables:
|
||||
CatalogApiUrl: http://$(CatalogApiHostName):8080
|
||||
CatalogApiUrlExternal: https://$(CatalogPublicHostName)
|
||||
CatalogApiHc: $(CatalogApiUrl)/hc
|
||||
PicBaseUrl: $(CatalogApiUrlExternal)/api/v1/catalog/items/[0]/pic/
|
||||
LocationsApiHostName: locationsapi.$(OpenShiftProject).svc
|
||||
LocationsApiUrl: http://$(LocationsApiHostName):8080
|
||||
LocationsApiHc: $(LocationsApiUrl)/hc
|
||||
|
36
deploy/aro/catalog-api/azure-pipelines.yml
Normal file
36
deploy/aro/catalog-api/azure-pipelines.yml
Normal file
@ -0,0 +1,36 @@
|
||||
variables:
|
||||
OpenShiftServiceConnection: 'OpenShift on ARO'
|
||||
trigger:
|
||||
branches:
|
||||
include:
|
||||
- master
|
||||
- dev
|
||||
paths:
|
||||
include:
|
||||
- deploy/aro/basket-api/*
|
||||
- deploy/aro/openshift-templates/*
|
||||
stages:
|
||||
- stage: development
|
||||
displayName: Development
|
||||
variables:
|
||||
OpenShiftProject: development
|
||||
SourceImageRegistryProjectName: development
|
||||
EnvironmentName: dev
|
||||
jobs:
|
||||
- job: CatalogApiDeployment
|
||||
displayName: 'Catalog API Deployment'
|
||||
variables:
|
||||
- template: ../azure-devops-templates/variables.yml
|
||||
pool:
|
||||
vmImage: 'windows-latest'
|
||||
steps:
|
||||
- task: redhat.openshift-vsts.oc-setup-task.oc-setup@2
|
||||
displayName: 'Setup Openshift CLI'
|
||||
inputs:
|
||||
openshiftService: $(OpenShiftServiceConnection)
|
||||
- script: 'oc project $(OpenShiftProject)'
|
||||
failOnStderr: true
|
||||
displayName: 'Set OpenShift Project Context'
|
||||
- script: 'oc process -f ./deploy/aro/openshift-templates/catalogapi-deploy-template.yml -p IMAGE_REGISTRY_PROJECT_NAME=$(SourceImageRegistryProjectName) -p PIC_BASE_URL=$(PicBaseUrl) -p RABBITMQ_HOSTNAME=$(RabbitMqHostname) | oc apply -f-'
|
||||
failOnStderr: true
|
||||
displayName: 'Ensure Identity API OpenShift DeploymentConfig and Service'
|
@ -17,7 +17,7 @@ stages:
|
||||
SourceImageRegistryProjectName: development
|
||||
EnvironmentName: dev
|
||||
jobs:
|
||||
- job: Configuration_Deployment
|
||||
- job: IdentityApiDeployment
|
||||
displayName: 'Identity API Deployment'
|
||||
variables:
|
||||
- template: ../azure-devops-templates/variables.yml
|
||||
|
117
deploy/aro/openshift-templates/catalogapi-deploy-template.yml
Normal file
117
deploy/aro/openshift-templates/catalogapi-deploy-template.yml
Normal file
@ -0,0 +1,117 @@
|
||||
apiVersion: template.openshift.io/v1
|
||||
kind: Template
|
||||
metadata:
|
||||
name: ${TEMPLATE_NAME}
|
||||
objects:
|
||||
- apiVersion: apps.openshift.io/v1
|
||||
kind: DeploymentConfig
|
||||
metadata:
|
||||
labels:
|
||||
app: ${APPLICATION_NAME}
|
||||
template: ${TEMPLATE_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:
|
||||
- env:
|
||||
- name: PicBaseUrl
|
||||
value: ${PIC_BASE_URL}
|
||||
- name: EventBusConnection
|
||||
value: ${RABBITMQ_HOSTNAME}
|
||||
- name: PORT
|
||||
value: "8080"
|
||||
- name: GRPC_PORT
|
||||
value: "8081"
|
||||
- name: PATH_BASE
|
||||
value: /catalog-api
|
||||
- name: ConnectionString
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
key: ConnectionString
|
||||
name: catalog-db-connection-secret
|
||||
image: docker-registry.default.svc:5000/${IMAGE_REGISTRY_PROJECT_NAME}/${APPLICATION_NAME}:latest
|
||||
imagePullPolicy: Always
|
||||
name: ${APPLICATION_NAME}
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
protocol: TCP
|
||||
- containerPort: 8081
|
||||
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}
|
||||
template: ${TEMPLATE_NAME}
|
||||
name: ${APPLICATION_NAME}
|
||||
spec:
|
||||
ports:
|
||||
- name: 8080-tcp
|
||||
port: 8080
|
||||
protocol: TCP
|
||||
targetPort: 8080
|
||||
- name: 8081-tcp-grpc
|
||||
port: 8081
|
||||
protocol: TCP
|
||||
targetPort: 8081
|
||||
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
|
||||
value: catalogapi
|
||||
- description: The OpenShift project name that is hosting the image registry.
|
||||
displayName: Image Registry Project Name
|
||||
name: IMAGE_REGISTRY_PROJECT_NAME
|
||||
required: true
|
||||
- description: The template name.
|
||||
displayName: Template Name
|
||||
name: TEMPLATE_NAME
|
||||
required: true
|
||||
value: catalogapi-deploy-template
|
||||
- description: The public base URL for the catalog pictures
|
||||
displayName: Pictures Base URL
|
||||
name: PIC_BASE_URL
|
||||
required: true
|
||||
- description: The hostname of the RabbitMQ service
|
||||
displayName: RabbitMQ Hostname
|
||||
name: RABBITMQ_HOSTNAME
|
||||
required: true
|
Loading…
x
Reference in New Issue
Block a user