From 1fd2522379634f4eb0abbe12366bc7fbbf3bb364 Mon Sep 17 00:00:00 2001 From: Vadim Sitnic Date: Mon, 3 Jun 2019 11:29:47 +0100 Subject: [PATCH] t1 --- azure-pipelines.yml | 86 ++--------------------------------------- azure-pipelines.yml-bkp | 84 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 88 insertions(+), 82 deletions(-) create mode 100644 azure-pipelines.yml-bkp diff --git a/azure-pipelines.yml b/azure-pipelines.yml index f80ddebf7..cfb53e3bc 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -1,84 +1,6 @@ -# Deploy to Azure Kubernetes Service -# Build and push image to Azure Container Registry; Deploy to Azure Kubernetes Service -# https://docs.microsoft.com/azure/devops/pipelines/languages/docker +pool: + vmImage: 'ubuntu-16.04' -trigger: -- master - -resources: -- repo: self - -variables: - - # Container registry service connection established during pipeline creation - dockerRegistryServiceConnection: '{{ containerRegistryConnection.Id }}' - imageRepository: '{{#toAlphaNumericString imageRepository 50}}{{/toAlphaNumericString}}' - containerRegistry: '{{ containerRegistryConnection.Authorization.Parameters.loginServer }}' - dockerfilePath: '**/Dockerfile' - tag: '$(Build.BuildId)' - - # Kubernetes Namespace - k8sNamespace: '{{ k8sResource.Namespace }}' - imagePullSecret: '{{#toAlphaNumericString containerRegistryConnection.Name 50}}{{/toAlphaNumericString}}{{#shortGuid}}{{/shortGuid}}-auth' - - # Agent VM image name - vmImageName: 'ubuntu-latest' - -stages: -- stage: Build - displayName: Build stage - jobs: - - job: Build - displayName: Build - pool: - vmImage: $(vmImageName) - steps: - - task: Docker@2 - displayName: Build and push an image to container registry - inputs: - command: buildAndPush - repository: $(imageRepository) - dockerfile: $(dockerfilePath) - containerRegistry: $(dockerRegistryServiceConnection) - tags: | - $(tag) - - - task: PublishPipelineArtifact@0 - inputs: - artifactName: 'manifests' - targetPath: 'manifests' - -- stage: Deploy - displayName: Deploy stage - dependsOn: Build - jobs: - - deployment: Deploy - displayName: Deploy - pool: - vmImage: $(vmImageName) - environment: '{{ k8sResource.EnvironmentReference.Name }}.{{ k8sResource.Name }}' - strategy: - runOnce: - deploy: - steps: - - task: KubernetesManifest@0 - displayName: Create imagePullSecret - inputs: - action: createSecret - secretName: $(imagePullSecret) - namespace: $(k8sNamespace) - dockerRegistryEndpoint: $(dockerRegistryServiceConnection) - - - task: KubernetesManifest@0 - displayName: Deploy to Kubernetes cluster - inputs: - action: deploy - namespace: $(k8sNamespace) - manifests: | - $(System.ArtifactsDirectory)/manifests/deployment.yml - $(System.ArtifactsDirectory)/manifests/service.yml - imagePullSecrets: | - $(imagePullSecret) - containers: | - $(containerRegistry)/$(imageRepository):$(tag) +# steps: +# - script: docker build -t $(dockerId)/$(imageName) . diff --git a/azure-pipelines.yml-bkp b/azure-pipelines.yml-bkp new file mode 100644 index 000000000..f80ddebf7 --- /dev/null +++ b/azure-pipelines.yml-bkp @@ -0,0 +1,84 @@ +# Deploy to Azure Kubernetes Service +# Build and push image to Azure Container Registry; Deploy to Azure Kubernetes Service +# https://docs.microsoft.com/azure/devops/pipelines/languages/docker + +trigger: +- master + +resources: +- repo: self + +variables: + + # Container registry service connection established during pipeline creation + dockerRegistryServiceConnection: '{{ containerRegistryConnection.Id }}' + imageRepository: '{{#toAlphaNumericString imageRepository 50}}{{/toAlphaNumericString}}' + containerRegistry: '{{ containerRegistryConnection.Authorization.Parameters.loginServer }}' + dockerfilePath: '**/Dockerfile' + tag: '$(Build.BuildId)' + + # Kubernetes Namespace + k8sNamespace: '{{ k8sResource.Namespace }}' + imagePullSecret: '{{#toAlphaNumericString containerRegistryConnection.Name 50}}{{/toAlphaNumericString}}{{#shortGuid}}{{/shortGuid}}-auth' + + # Agent VM image name + vmImageName: 'ubuntu-latest' + +stages: +- stage: Build + displayName: Build stage + jobs: + - job: Build + displayName: Build + pool: + vmImage: $(vmImageName) + steps: + - task: Docker@2 + displayName: Build and push an image to container registry + inputs: + command: buildAndPush + repository: $(imageRepository) + dockerfile: $(dockerfilePath) + containerRegistry: $(dockerRegistryServiceConnection) + tags: | + $(tag) + + - task: PublishPipelineArtifact@0 + inputs: + artifactName: 'manifests' + targetPath: 'manifests' + +- stage: Deploy + displayName: Deploy stage + dependsOn: Build + jobs: + - deployment: Deploy + displayName: Deploy + pool: + vmImage: $(vmImageName) + environment: '{{ k8sResource.EnvironmentReference.Name }}.{{ k8sResource.Name }}' + strategy: + runOnce: + deploy: + steps: + - task: KubernetesManifest@0 + displayName: Create imagePullSecret + inputs: + action: createSecret + secretName: $(imagePullSecret) + namespace: $(k8sNamespace) + dockerRegistryEndpoint: $(dockerRegistryServiceConnection) + + - task: KubernetesManifest@0 + displayName: Deploy to Kubernetes cluster + inputs: + action: deploy + namespace: $(k8sNamespace) + manifests: | + $(System.ArtifactsDirectory)/manifests/deployment.yml + $(System.ArtifactsDirectory)/manifests/service.yml + imagePullSecrets: | + $(imagePullSecret) + containers: | + $(containerRegistry)/$(imageRepository):$(tag) +