@ -1,5 +1,5 @@ | |||||
# ARO build definitions | |||||
# OpenShift on ARO build definitions | |||||
This folder contains the Azure DevOps build definitions in YAML format. Each folder contains one `azure-pipelines.yml` that contains the build definition for one microservice (usually a Docker image, but some microservices generates more than one Docker image). | |||||
This folder contains the Azure DevOps build definitions in YAML format targeting container builds in OpenShift on ARO. Each folder contains one `azure-pipelines.yml` that contains the build definition for one microservice. The container images are built inside of the OpenShift cluster from the latest release of the RHEL .NET Core base image. | |||||
For more information about YAML builds read the [Azure DevOps documentation](https://docs.microsoft.com/azure/devops/pipelines/get-started-yaml?view=azure-devops). | For more information about YAML builds read the [Azure DevOps documentation](https://docs.microsoft.com/azure/devops/pipelines/get-started-yaml?view=azure-devops). |
@ -0,0 +1,79 @@ | |||||
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/development${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: development | |||||
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 |
@ -1,118 +0,0 @@ | |||||
apiVersion: template.openshift.io/v1 | |||||
kind: Template | |||||
metadata: | |||||
creationTimestamp: null | |||||
name: '''basketapi-template''' | |||||
objects: | |||||
- apiVersion: apps.openshift.io/v1 | |||||
kind: DeploymentConfig | |||||
metadata: | |||||
annotations: | |||||
openshift.io/generated-by: OpenShiftNewApp | |||||
creationTimestamp: null | |||||
generation: 6 | |||||
labels: | |||||
app: basketapi | |||||
name: basketapi | |||||
spec: | |||||
replicas: 1 | |||||
revisionHistoryLimit: 10 | |||||
selector: | |||||
app: basketapi | |||||
deploymentconfig: basketapi | |||||
strategy: | |||||
activeDeadlineSeconds: 21600 | |||||
resources: {} | |||||
rollingParams: | |||||
intervalSeconds: 1 | |||||
maxSurge: 25% | |||||
maxUnavailable: 25% | |||||
timeoutSeconds: 600 | |||||
updatePeriodSeconds: 1 | |||||
type: Rolling | |||||
template: | |||||
metadata: | |||||
annotations: | |||||
openshift.io/generated-by: OpenShiftNewApp | |||||
creationTimestamp: null | |||||
labels: | |||||
app: basketapi | |||||
deploymentconfig: basketapi | |||||
spec: | |||||
containers: | |||||
- image: docker-registry.default.svc:5000/development/basketapi-build@sha256:7149637592a2e9bbfa78836762a5c300f6b19220ca001902e4c6c1767cb19c3d | |||||
imagePullPolicy: Always | |||||
livenessProbe: | |||||
failureThreshold: 3 | |||||
httpGet: | |||||
path: /liveness | |||||
port: 8080 | |||||
scheme: HTTP | |||||
initialDelaySeconds: 10 | |||||
periodSeconds: 10 | |||||
successThreshold: 1 | |||||
timeoutSeconds: 3 | |||||
name: basketapi | |||||
ports: | |||||
- containerPort: 8080 | |||||
protocol: TCP | |||||
readinessProbe: | |||||
failureThreshold: 3 | |||||
httpGet: | |||||
path: /hc | |||||
port: 8080 | |||||
scheme: HTTP | |||||
initialDelaySeconds: 10 | |||||
periodSeconds: 10 | |||||
successThreshold: 1 | |||||
timeoutSeconds: 10 | |||||
resources: {} | |||||
terminationMessagePath: /dev/termination-log | |||||
terminationMessagePolicy: File | |||||
dnsPolicy: ClusterFirst | |||||
restartPolicy: Always | |||||
schedulerName: default-scheduler | |||||
securityContext: {} | |||||
terminationGracePeriodSeconds: 30 | |||||
test: false | |||||
triggers: | |||||
- type: ConfigChange | |||||
- imageChangeParams: | |||||
automatic: true | |||||
containerNames: | |||||
- basketapi | |||||
from: | |||||
kind: ImageStreamTag | |||||
name: basketapi-build:latest | |||||
namespace: development | |||||
lastTriggeredImage: docker-registry.default.svc:5000/development/basketapi-build@sha256:7149637592a2e9bbfa78836762a5c300f6b19220ca001902e4c6c1767cb19c3d | |||||
type: ImageChange | |||||
status: | |||||
availableReplicas: 0 | |||||
latestVersion: 0 | |||||
observedGeneration: 0 | |||||
replicas: 0 | |||||
unavailableReplicas: 0 | |||||
updatedReplicas: 0 | |||||
- apiVersion: v1 | |||||
kind: Service | |||||
metadata: | |||||
annotations: | |||||
openshift.io/generated-by: OpenShiftNewApp | |||||
creationTimestamp: null | |||||
labels: | |||||
app: basketapi | |||||
name: basketapi | |||||
spec: | |||||
ports: | |||||
- name: 8080-tcp | |||||
port: 8080 | |||||
protocol: TCP | |||||
targetPort: 8080 | |||||
selector: | |||||
app: basketapi | |||||
deploymentconfig: basketapi | |||||
sessionAffinity: None | |||||
type: ClusterIP | |||||
status: | |||||
loadBalancer: {} |