Skip to content

Commit 698c5f4

Browse files
attach EOL during image creation (#8864)
1 parent 6275dda commit 698c5f4

2 files changed

Lines changed: 19 additions & 4 deletions

File tree

.pipelines/containerSourceData/scripts/BuildGoldenContainer.sh

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -204,12 +204,14 @@ function initialization {
204204
# the below value of DISTRO_IDENTIFIER in the image tag.
205205
# TODO: We may need to update this value for Azure Linux 3.0.
206206
DISTRO_IDENTIFIER="cm"
207+
END_OF_LIFE_1_YEAR=$(date -d "+1 year" "+%Y-%m-%dT%H:%M:%SZ")
207208

208209
echo "Golden Image Name -> $GOLDEN_IMAGE_NAME"
209210
echo "Base ACR Container Name -> $BASE_IMAGE_NAME"
210211
echo "Base ACR Container Tag -> $BASE_IMAGE_TAG"
211212
echo "Azure Linux Version -> $AZURE_LINUX_VERSION"
212213
echo "Distro Identifier -> $DISTRO_IDENTIFIER"
214+
echo "End of Life -> $END_OF_LIFE_1_YEAR"
213215
}
214216

215217
function prepare_dockerfile {
@@ -322,16 +324,31 @@ function finalize {
322324
echo "$GOLDEN_IMAGE_NAME_FINAL" >> "$OUTPUT_DIR/PublishedContainers-$IMAGE.txt"
323325
}
324326

327+
function oras_attach {
328+
local image_name=$1
329+
oras attach \
330+
--artifact-type "application/vnd.microsoft.artifact.lifecycle" \
331+
--annotation "vnd.microsoft.artifact.lifecycle.end-of-life.date=$END_OF_LIFE_1_YEAR" \
332+
"$image_name"
333+
}
334+
325335
function publish_to_acr {
326336
CONTAINER_IMAGE=$1
327337
if [[ ! "$PUBLISH_TO_ACR" =~ [Tt]rue ]]; then
328338
echo "+++ Skip publishing to ACR"
329339
return
330340
fi
341+
local oras_access_token
342+
343+
echo "+++ az login into Azure ACR $ACR"
344+
oras_access_token=$(az acr login --name "$ACR" --expose-token --output tsv --query accessToken)
345+
oras login "$ACR.azurecr.io" \
346+
--username "00000000-0000-0000-0000-000000000000" \
347+
--password "$oras_access_token"
348+
331349
echo "+++ Publish container $CONTAINER_IMAGE"
332-
echo "login into ACR: $ACR"
333-
az acr login --name "$ACR"
334350
docker image push "$CONTAINER_IMAGE"
351+
oras_attach "$CONTAINER_IMAGE"
335352
}
336353

337354
function generate_image_sbom {

.pipelines/containerSourceData/scripts/PublishContainers.sh

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -264,13 +264,11 @@ do
264264

265265
amd64_image=${image_name%-*}-amd64
266266
docker pull "$amd64_image"
267-
oras_attach "$amd64_image"
268267

269268
# Some container images are only built for AMD64 architecture.
270269
if [[ $ARCHITECTURE_TO_BUILD == *"ARM64"* ]]; then
271270
arm64_image=${image_name%-*}-arm64
272271
docker pull "$arm64_image"
273-
oras_attach "$arm64_image"
274272
fi
275273

276274
if [[ $container_registry != "$TARGET_ACR" ]]; then

0 commit comments

Comments
 (0)