@@ -379,6 +379,18 @@ extends:
379
379
# Debug output to verify version variable
380
380
echo "Version from previous step: $VERSION"
381
381
displayName: 'Verify version variable'
382
+
383
+ - script : |
384
+ docker run --privileged --rm tonistiigi/binfmt --install all
385
+ displayName: "Enable multi-platform builds"
386
+
387
+ - script : |
388
+ docker buildx create --use --name mybuilder
389
+ displayName: "Set up Docker BuildX"
390
+
391
+ - script : |
392
+ docker buildx inspect --bootstrap
393
+ displayName: "Ensure BuildX is working"
382
394
383
395
- bash : |
384
396
echo "Build Number: $(Build.BuildNumber)"
@@ -413,27 +425,24 @@ extends:
413
425
echo "Building Docker image..."
414
426
echo "Using build date: ${BUILDDATE}"
415
427
# Using quotes around tags to prevent flag interpretation
416
- docker build \
417
- --platform linux/amd64 \
428
+ docker buildx build \
429
+ --platform linux/amd64,linux/arm64/v8,linux/arm/v7 \
430
+ --push \
418
431
-t "$(REGISTRY)/$(IMAGE_NAME):nightly" \
419
432
-t "$(REGISTRY)/$(IMAGE_NAME):${VERSION}.${BUILDDATE}${RUNNUMBER}" \
420
433
"$(Build.SourcesDirectory)"
421
-
422
- echo "Pushing Docker image with nightly tag..."
423
- docker push "$(REGISTRY)/$(IMAGE_NAME):nightly"
424
- docker push "$(REGISTRY)/$(IMAGE_NAME):${VERSION}.${BUILDDATE}${RUNNUMBER}"
434
+
425
435
displayName: 'Build and Push Nightly Image'
426
436
condition: eq(variables['Build.SourceBranch'], variables['PREVIEW_BRANCH'])
427
437
428
438
- bash : |
429
439
echo "Building Docker image for release..."
430
- docker build \
440
+ docker buildx build \
441
+ --platform linux/amd64,linux/arm64/v8,linux/arm/v7 \
442
+ --push \
431
443
-t "$(REGISTRY)/$(IMAGE_NAME):latest" \
432
444
-t "$(REGISTRY)/$(IMAGE_NAME):${VERSION}.${BUILDDATE}${RUNNUMBER}" \
433
445
"$(Build.SourcesDirectory)"
434
-
435
- echo "Pushing Docker image with latest and version tags..."
436
- docker push "$(REGISTRY)/$(IMAGE_NAME):latest"
437
- docker push "$(REGISTRY)/$(IMAGE_NAME):${VERSION}.${BUILDDATE}${RUNNUMBER}"
446
+
438
447
displayName: 'Build and Push Release Image'
439
448
condition: contains(variables['Build.SourceBranch'], 'refs/tags/v')
0 commit comments