diff --git a/azure-pipelines.yml b/azure-pipelines.yml index ad5b550..3ab3396 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -12,7 +12,9 @@ variables: dockerRegistryServiceConnection: 'docker-registry-olympus' imageName: 'apollo' shortCommitSha: '' - envName: "aks-olympus" + envName: 'aks-olympus' + azurecontainerRegistry: 'olympusreg.azurecr.io' + resourceName: 'olympus' stages: - stage: Build @@ -33,7 +35,7 @@ stages: - script: | echo "Building the first repository..." ls -lrth - displayName: 'List olympus-common' + displayName: 'list files' - task: Maven@3 inputs: @@ -50,30 +52,38 @@ stages: - script: | echo "Listing the docker images..." docker images - displayName: 'List docker images1' + displayName: 'list docker images' - task: Docker@2 inputs: command: 'buildAndPush' - containerRegistry: $(dockerRegistryServiceConnection) repository: '$(imageName)' - tags: '$(shortCommitSha)' Dockerfile: 'apollo/Dockerfile' + containerRegistry: $(dockerRegistryServiceConnection) + tags: '$(shortCommitSha)' + displayName: 'Build and push an image to container registry' - script: | echo "Listing the docker images..." docker images displayName: 'List docker images' + + - upload: apollo/manifests + artifact: manifests - stage: Deploy displayName: Deploy stage + dependsOn: Build + jobs: - deployment: Deploy - displayName: "Deploy to ${{variables.envName}}" condition: succeeded() + displayName: "Deploy to ${{variables.envName}}" pool: name: azureselfhosted - environment: $(envName) + environment: + name: $(envName).$(resourceName) + resourceType: Kubernetes strategy: runOnce: deploy: @@ -87,21 +97,16 @@ stages: - script: | echo $(shortCommitSha) echo "Updating imageName in deployment.yaml" - echo "Before Substitution" - cat apollo-deployment.yaml - echo "###############################################" - echo "current shell: $SHELL" - echo "imagename bracket : $(imageName)" - echo "###############################################" - sed -i "s|image: olympusreg.azurecr.io/$(imageName):.*|image: olympusreg.azurecr.io/$(imageName):$(shortCommitSha)|" apollo-deployment.yaml - echo "After Substitution" - cat apollo-deployment.yaml displayName: 'Update ImageName in YAML file' - - script: | - echo "deployment using kubectl" - kubectl apply -f apollo-deployment.yaml - displayName: 'Deployment using kubectl' + - task: KubernetesManifest@0 + displayName: Deploy to Kubernetes cluster + inputs: + action: deploy + manifests: | + $(Pipeline.Workspace)/manifests/apollo-deployment.yaml + containers: | + $(azurecontainerRegistry)/$(imageName):$(shortCommitSha) - script: | echo "Removing Docker images to clean up..."