@@ -388,6 +388,9 @@ extends:
388388 scriptLocation : inlineScript
389389 inlineScript : |
390390 az acr login --name $(REGISTRY)
391+
392+ - task : NuGetAuthenticate@1
393+ displayName : ' Authenticate Docker build to Azure Artifacts'
391394
392395 - pwsh : |
393396 $content = [XML](Get-Content $(Pipeline.Workspace)/Directory.Build.props)
@@ -473,27 +476,49 @@ extends:
473476 - bash : |
474477 echo "Building Docker image..."
475478 echo "Using build date: ${BUILDDATE}"
479+ if [ -z "${VSS_NUGET_ACCESSTOKEN:-}" ]; then
480+ echo "##vso[task.logissue type=error]VSS_NUGET_ACCESSTOKEN is not available. Ensure NuGetAuthenticate@1 ran successfully before docker build."
481+ exit 1
482+ fi
476483 # Using quotes around tags to prevent flag interpretation
477484 docker buildx build \
478485 --platform linux/amd64,linux/arm64/v8 \
479486 --push \
487+ --build-arg VSS_NUGET_EXTERNAL_FEED_ENDPOINTS \
488+ --build-arg VSS_NUGET_URI_PREFIXES \
489+ --secret id=vss_nuget_accesstoken,env=VSS_NUGET_ACCESSTOKEN \
480490 -t "$(REGISTRY)/$(IMAGE_NAME):nightly" \
481491 -t "$(REGISTRY)/$(IMAGE_NAME):${VERSION}.${BUILDDATE}${RUNNUMBER}" \
482492 "$(Pipeline.Workspace)"
483493
484494 displayName: 'Build and Push Nightly Image'
485495 condition: eq(variables['Build.SourceBranch'], variables['PREVIEW_BRANCH'])
496+ env:
497+ VSS_NUGET_ACCESSTOKEN: $(VSS_NUGET_ACCESSTOKEN)
498+ VSS_NUGET_EXTERNAL_FEED_ENDPOINTS: $(VSS_NUGET_EXTERNAL_FEED_ENDPOINTS)
499+ VSS_NUGET_URI_PREFIXES: $(VSS_NUGET_URI_PREFIXES)
486500
487501 - bash : |
488502 echo "Building Docker image for release..."
489- docker buildx build\
503+ if [ -z "${VSS_NUGET_ACCESSTOKEN:-}" ]; then
504+ echo "##vso[task.logissue type=error]VSS_NUGET_ACCESSTOKEN is not available. Ensure NuGetAuthenticate@1 ran successfully before docker build."
505+ exit 1
506+ fi
507+ docker buildx build \
490508 --platform linux/amd64,linux/arm64/v8 \
491509 --push \
510+ --build-arg VSS_NUGET_EXTERNAL_FEED_ENDPOINTS \
511+ --build-arg VSS_NUGET_URI_PREFIXES \
512+ --secret id=vss_nuget_accesstoken,env=VSS_NUGET_ACCESSTOKEN \
492513 -t "$(REGISTRY)/$(IMAGE_NAME):latest" \
493514 -t "$(REGISTRY)/$(IMAGE_NAME):${VERSION}" \
494515 "$(Pipeline.Workspace)"
495516 displayName: 'Build and Push Release Image'
496517 condition: contains(variables['Build.SourceBranch'], 'refs/tags/v')
518+ env:
519+ VSS_NUGET_ACCESSTOKEN: $(VSS_NUGET_ACCESSTOKEN)
520+ VSS_NUGET_EXTERNAL_FEED_ENDPOINTS: $(VSS_NUGET_EXTERNAL_FEED_ENDPOINTS)
521+ VSS_NUGET_URI_PREFIXES: $(VSS_NUGET_URI_PREFIXES)
497522
498523# once the nuget has been released, fill this form to get the public documentation updated.
499524# https://dev.azure.com/msft-skilling/Content/_workitems/create/User%20Story?templateId=39fb91e3-64a2-4c8a-83db-b2bdf3603dd3&ownerId=c4a28f90-17ae-4384-b514-7273392b082b
0 commit comments