From f7609872baba6c39cbeba9e9980f69953ed89ed3 Mon Sep 17 00:00:00 2001 From: Chris Kaczor Date: Sun, 13 Oct 2019 09:59:25 -0400 Subject: [PATCH] Attempt new multi-stage pipeline --- Power/Service/deploy/azure-pipelines.yml | 79 ++++++++++++++---------- 1 file changed, 48 insertions(+), 31 deletions(-) diff --git a/Power/Service/deploy/azure-pipelines.yml b/Power/Service/deploy/azure-pipelines.yml index 49c6d52..38a42f4 100644 --- a/Power/Service/deploy/azure-pipelines.yml +++ b/Power/Service/deploy/azure-pipelines.yml @@ -9,35 +9,52 @@ trigger: include: - Power/Service -pool: - name: Hosted Ubuntu 1604 - -steps: -- task: Docker@0 - displayName: 'Build an image' - inputs: - containerregistrytype: 'Container Registry' - dockerRegistryConnection: 'Docker Hub' - dockerFile: 'Power/Service/Dockerfile' - imageName: 'ckaczor/home-monitor-power-service:$(Build.BuildNumber)' - includeLatestTag: true +stages: +- stage: Build + jobs: + - job: Build + pool: + name: Hosted Ubuntu 1604 + steps: + - task: Docker@0 + displayName: 'Build an image' + inputs: + containerregistrytype: 'Container Registry' + dockerRegistryConnection: 'Docker Hub' + dockerFile: 'Power/Service/Dockerfile' + imageName: 'ckaczor/home-monitor-power-service:$(Build.BuildNumber)' + includeLatestTag: true + - task: Docker@0 + displayName: 'Push an image' + inputs: + containerregistrytype: 'Container Registry' + dockerRegistryConnection: 'Docker Hub' + action: 'Push an image' + imageName: 'ckaczor/home-monitor-power-service:$(Build.BuildNumber)' + includeLatestTag: true + - task: Bash@3 + inputs: + targetType: 'inline' + script: 'sed -i s/#BUILD_BUILDNUMBER#/$BUILD_BUILDNUMBER/ Power/Service/deploy/manifest.yaml' + - task: PublishBuildArtifacts@1 + inputs: + PathtoPublish: 'Power/Service/deploy/manifest.yaml' + ArtifactName: 'Manifest' + publishLocation: 'Container' -- task: Docker@0 - displayName: 'Push an image' - inputs: - containerregistrytype: 'Container Registry' - dockerRegistryConnection: 'Docker Hub' - action: 'Push an image' - imageName: 'ckaczor/home-monitor-power-service:$(Build.BuildNumber)' - includeLatestTag: true - -- task: Bash@3 - inputs: - targetType: 'inline' - script: 'sed -i s/#BUILD_BUILDNUMBER#/$BUILD_BUILDNUMBER/ Power/Service/deploy/manifest.yaml' - -- task: PublishBuildArtifacts@1 - inputs: - PathtoPublish: 'Power/Service/deploy/manifest.yaml' - ArtifactName: 'Manifest' - publishLocation: 'Container' \ No newline at end of file +- stage: Deploy + jobs: + - job: Deploy + pool: + name: Hosted Ubuntu 1604 + steps: + - task: Kubernetes@1 + inputs: + connectionType: 'Kubernetes Service Connection' + kubernetesServiceEndpoint: 'Kubernetes' + namespace: 'home-monitor' + command: 'apply' + useConfigurationFile: true + configuration: '$(System.DefaultWorkingDirectory)/Manifest/Manifest/manifest.yaml' + secretType: 'dockerRegistry' + containerRegistryType: 'Azure Container Registry' \ No newline at end of file