Skip to content

Commit 5ae9156

Browse files
author
Sheyla Trudo
committed
fixup! Separate Build Changes
1 parent 83eb88d commit 5ae9156

File tree

3 files changed

+52
-17
lines changed

3 files changed

+52
-17
lines changed

.pipelines/containers/container-template.jobs.yaml

Lines changed: 51 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,17 @@
11
parameters:
22
- name: arch
33
type: string
4+
default: ""
5+
values:
6+
- amd64
7+
- arm64
48

59
- name: os
610
type: string
11+
default: ""
12+
values:
13+
- windows
14+
- linux
715

816
- name: images
917
type: object
@@ -19,6 +27,14 @@ jobs:
1927
templateContext:
2028
authenticatedContainerRegistries:
2129
- serviceConnection: $(ACR_SERVICECONNECTION)
30+
${{ if eq(variables.Agent.OSArchitecture, 'ARM' }}:
31+
buildArch: arm64
32+
${{ else }}:
33+
buildArch: amd64
34+
${{ if eq(variables.Agent.OS, 'Linux') }}:
35+
buildOs: linux
36+
${{ else }}:
37+
buildOs: windows
2238

2339
steps:
2440
- checkout: self
@@ -30,6 +46,16 @@ jobs:
3046
- bash: |
3147
set -e
3248
49+
echo >&2 "##vso[task.setvariable variable=${VAR_ID};]$VAR_ID"
50+
displayName: "Get Image ID"
51+
env:
52+
VAR_ID: ${{ image }}_${{ parameters.os }}_${{ parameters.arch }}
53+
54+
- bash: |
55+
set -e
56+
57+
VAR_ID="${IMAGE}_${OS}_${ARCH}"
58+
3359
BUILD_CONTEXT=$(make "$MAKE_BUILD_CONTEXT")
3460
echo >&2 "##vso[task.setvariable variable=BUILD_CONTEXT_${VAR_ID};]$BUILD_CONTEXT"
3561
@@ -46,16 +72,34 @@ jobs:
4672
echo >&2 "##vso[task.setvariable variable=EXTRA_BUILD_ARGS_${VAR_ID};]$EXTRA_BUILD_ARGS"
4773
displayName: "Get Image Build Data"
4874
env:
49-
VAR_ID: ${{ image }}
75+
IMAGE: ${{ image }}
76+
OS: ${{ parameters.os }}
77+
ARCH: ${{ parameters.arch }}
78+
PLATFORM: ${{ parameters.os }}/${{ parameters.arch }}
5079
MAKE_IMAGE_TAG: ${{ image }}-image-tag
5180
MAKE_BUILD_CONTEXT: ${{ image }}-image-build-context
5281
MAKE_IMAGE_NAME_AND_TAG: ${{ image }}-image-name-and-tag
5382
MAKE_DOCKERFILE_PATH: ${{ image }}-dockerfile-path
5483
MAKE_EXTRA_BUILD_ARGS: ${{ image }}-docker-build-args
5584
56-
- template: container-template.steps.yaml
57-
parameters:
58-
name: ${{ image }}
59-
os: ${{ parameters.os }}
60-
arch: ${{ parameters.arch }}
61-
platform: ${{ parameters.os }}/${{ parameters.arch }}
85+
- task: 1ES.BuildContainerImage@1
86+
retryCountOnTaskFailure: 3
87+
inputs:
88+
image: $(IMAGE_NAME_AND_TAG_${{ image }}_${{ parameters.os }}_${{ parameters.arch }})
89+
dockerfile: $(DOCKERFILE_PATH_${{ image }}_${{ parameters.os }}_${{ parameters.arch }})
90+
path: $(Build.SourcesDirectory)
91+
buildArguments: |
92+
--platform "${{ templateContext.targetOs }}/${{ templateContext.targetArch }}" \
93+
--build-arg ARCH="${{ templateContext.buildArch }}" \
94+
--build-arg OS="${{ templateContext.buildOs }}" \
95+
--build-arg VERSION="$(IMAGE_PLATFORM_TAG_${{ image }}_${{ parameters.os }}_${{ parameters.arch }})" \
96+
--target "${{ parameters.os }}" $(EXTRA_BUILD_ARGS_${{ image }}_${{ parameters.os }}_${{ parameters.arch }})
97+
enableNetwork: true
98+
enablePull: false
99+
enableCache: true
100+
useBuildKit: true
101+
102+
- task: 1ES.PushContainerImage@1
103+
condition: ${{ eq(parameters.os, 'windows') }}
104+
inputs:
105+
image: $(IMAGE_NAME_AND_TAG_${{ image }}_${{ parameters.os }}_${{ parameters.arch }})

.pipelines/run-pipeline.yaml

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -84,9 +84,6 @@ stages:
8484
- cns
8585
- ipv6-hp-bpf
8686
- npm
87-
containerRegistry:
88-
name: $(ACR_NAME)
89-
clientId: $(ACR_CLIENTID)
9087
- template: containers/container-template.jobs.yaml
9188
parameters:
9289
arch: arm64
@@ -97,9 +94,6 @@ stages:
9794
- cns
9895
- ipv6-hp-bpf
9996
- npm
100-
containerRegistry:
101-
name: $(ACR_NAME)
102-
clientId: $(ACR_CLIENTID)
10397
- template: containers/container-template.jobs.yaml
10498
parameters:
10599
arch: amd64
@@ -109,9 +103,6 @@ stages:
109103
- cni
110104
- cns
111105
- npm
112-
containerRegistry:
113-
name: $(ACR_NAME)
114-
clientId: $(ACR_CLIENTID)
115106

116107

117108
- stage: publish

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -560,7 +560,7 @@ npm-image-build-context:
560560
@echo "$(BUILD_CONTEXT)"
561561

562562
npm-dockerfile-path:
563-
$(eval DOCKERFILE_PATH := $(REPO_ROOT)/npm/Dockerfile)
563+
$(eval DOCKERFILE_PATH := $(REPO_ROOT)/npm/$(OS).Dockerfile)
564564
@echo "$(DOCKERFILE_PATH)"
565565

566566
npm-docker-build-args:

0 commit comments

Comments
 (0)