@@ -443,11 +443,40 @@ stages:
443443 exit 1
444444 fi
445445
446+ API_APP_NAME=$(azd env get-values | sed -n 's/^SERVICE_API_NAME="\(.*\)"/\1/p')
447+ UI_APP_NAME=$(azd env get-values | sed -n 's/^SERVICE_UI_NAME="\(.*\)"/\1/p')
448+
449+ API_PREVIEW_REVISION=""
450+ UI_PREVIEW_REVISION=""
451+
452+ if [[ -n "${API_APP_NAME}" ]]; then
453+ API_PREVIEW_REVISION=$(az containerapp ingress traffic show \
454+ --resource-group "${AZURE_RESOURCE_GROUP}" \
455+ --name "${API_APP_NAME}" \
456+ --query "[?label=='${API_PREVIEW_LABEL}'].revisionName | [0]" \
457+ -o tsv 2>/dev/null || true)
458+ fi
459+
460+ if [[ -n "${UI_APP_NAME}" ]]; then
461+ UI_PREVIEW_REVISION=$(az containerapp ingress traffic show \
462+ --resource-group "${AZURE_RESOURCE_GROUP}" \
463+ --name "${UI_APP_NAME}" \
464+ --query "[?label=='${UI_PREVIEW_LABEL}'].revisionName | [0]" \
465+ -o tsv 2>/dev/null || true)
466+ fi
467+
468+ if [[ -z "${API_PREVIEW_REVISION}" || -z "${UI_PREVIEW_REVISION}" ]]; then
469+ echo "Unable to resolve preview revision names for promotion."
470+ echo "API preview revision: ${API_PREVIEW_REVISION:-<none>}"
471+ echo "UI preview revision: ${UI_PREVIEW_REVISION:-<none>}"
472+ exit 1
473+ fi
474+
446475 echo "Promoting API from package: ${API_PACKAGE_REF}"
447- azd deploy api --from-package "${API_PACKAGE_REF}" --no-prompt
476+ API_PRODUCTION_REVISION_NAME="${API_PREVIEW_REVISION}" azd deploy api --from-package "${API_PACKAGE_REF}" --no-prompt
448477
449478 echo "Promoting UI from package: ${UI_PACKAGE_REF}"
450- azd deploy ui --from-package "${UI_PACKAGE_REF}" --no-prompt
479+ UI_PRODUCTION_REVISION_NAME="${UI_PREVIEW_REVISION}" azd deploy ui --from-package "${UI_PACKAGE_REF}" --no-prompt
451480 env :
452481 AZURE_SUBSCRIPTION_ID : $(azureSubscriptionId)
453482 AZURE_ENV_NAME : $(azureEnvName)
@@ -458,9 +487,11 @@ stages:
458487 UI_ACTIVE_LABEL : $(uiActiveLabel)
459488 UI_PROMOTE_PREVIEW : " true"
460489 UI_PRODUCTION_REVISION_NAME : " "
490+ UI_PREVIEW_LABEL : $(uiPreviewLabel)
461491 API_ACTIVE_LABEL : $(apiActiveLabel)
462492 API_PROMOTE_PREVIEW : " true"
463493 API_PRODUCTION_REVISION_NAME : " "
494+ API_PREVIEW_LABEL : $(apiPreviewLabel)
464495 API_PACKAGE_REF : $(apiPackageRef)
465496 UI_PACKAGE_REF : $(uiPackageRef)
466497 VITE_APP_VERSION : $(uiSemVerVersionTag)
0 commit comments