forked from GoogleCloudPlatform/dotnet-docs-samples
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathci.gar.us.yaml
41 lines (41 loc) · 1.29 KB
/
ci.gar.us.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
resources:
- repo: self
fetchDepth: 1
pool:
vmImage: ubuntu-20.04
trigger:
- main
variables:
TargetFramework: 'net6.0'
BuildConfiguration: 'Release'
DockerImageName: 'playground-259505/images/clouddemo'
steps:
- task: DotNetCoreCLI@2
displayName: Publish
inputs:
projects: 'applications/clouddemo/netcore/CloudDemo.MvcCore.sln'
publishWebProjects: false
command: publish
arguments: '--configuration $(BuildConfiguration) --framework=$(TargetFramework)'
zipAfterPublish: false
modifyOutputPath: false
- task: CmdLine@1
displayName: 'Lock image version in deployment.yaml'
inputs:
filename: /bin/bash
arguments: '-c "awk ''{gsub(\"CLOUDDEMO_IMAGE\", \"us-docker.pkg.dev/$(DockerImageName):$(Build.BuildId)\", $0); print}'' applications/clouddemo/netcore/deployment.yaml > $(build.artifactstagingdirectory)/deployment.yaml"'
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact'
inputs:
PathtoPublish: '$(build.artifactstagingdirectory)'
- task: Docker@2
displayName: 'Login to Container Registry'
inputs:
command: login
containerRegistry: 'gar-us-playground'
- task: Docker@2
displayName: 'Build and push image'
inputs:
Dockerfile: 'applications/clouddemo/netcore/Dockerfile'
command: buildAndPush
repository: '$(DockerImageName)'