diff --git a/README.aspnet.md b/README.aspnet.md index 6ab0816419..fc54f3b1cc 100644 --- a/README.aspnet.md +++ b/README.aspnet.md @@ -87,6 +87,11 @@ Tags | Dockerfile | OS Version 10.0.5-noble-chiseled-extra-amd64, 10.0-noble-chiseled-extra-amd64, 10.0.5-noble-chiseled-extra, 10.0-noble-chiseled-extra | [Dockerfile](src/aspnet/10.0/noble-chiseled-extra/amd64/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-composite-amd64, 10.0-noble-chiseled-composite-amd64, 10.0.5-noble-chiseled-composite, 10.0-noble-chiseled-composite | [Dockerfile](src/aspnet/10.0/noble-chiseled-composite/amd64/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-composite-extra-amd64, 10.0-noble-chiseled-composite-extra-amd64, 10.0.5-noble-chiseled-composite-extra, 10.0-noble-chiseled-composite-extra | [Dockerfile](src/aspnet/10.0/noble-chiseled-composite-extra/amd64/Dockerfile) | Ubuntu 24.04 +10.0.5-resolute-amd64, 10.0-resolute-amd64, 10.0.5-resolute, 10.0-resolute | [Dockerfile](src/aspnet/10.0/resolute/amd64/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-amd64, 10.0-resolute-chiseled-amd64, 10.0.5-resolute-chiseled, 10.0-resolute-chiseled | [Dockerfile](src/aspnet/10.0/resolute-chiseled/amd64/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-extra-amd64, 10.0-resolute-chiseled-extra-amd64, 10.0.5-resolute-chiseled-extra, 10.0-resolute-chiseled-extra | [Dockerfile](src/aspnet/10.0/resolute-chiseled-extra/amd64/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-composite-amd64, 10.0-resolute-chiseled-composite-amd64, 10.0.5-resolute-chiseled-composite, 10.0-resolute-chiseled-composite | [Dockerfile](src/aspnet/10.0/resolute-chiseled-composite/amd64/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-composite-extra-amd64, 10.0-resolute-chiseled-composite-extra-amd64, 10.0.5-resolute-chiseled-composite-extra, 10.0-resolute-chiseled-composite-extra | [Dockerfile](src/aspnet/10.0/resolute-chiseled-composite-extra/amd64/Dockerfile) | Ubuntu 26.04 10.0.5-alpine3.23-amd64, 10.0-alpine3.23-amd64, 10.0-alpine-amd64, 10.0.5-alpine3.23, 10.0-alpine3.23, 10.0-alpine | [Dockerfile](src/aspnet/10.0/alpine3.23/amd64/Dockerfile) | Alpine 3.23 10.0.5-alpine3.23-extra-amd64, 10.0-alpine3.23-extra-amd64, 10.0-alpine-extra-amd64, 10.0.5-alpine3.23-extra, 10.0-alpine3.23-extra, 10.0-alpine-extra | [Dockerfile](src/aspnet/10.0/alpine3.23-extra/amd64/Dockerfile) | Alpine 3.23 10.0.5-alpine3.23-composite-amd64, 10.0-alpine3.23-composite-amd64, 10.0.5-alpine3.23-composite, 10.0-alpine3.23-composite | [Dockerfile](src/aspnet/10.0/alpine3.23-composite/amd64/Dockerfile) | Alpine 3.23 @@ -160,6 +165,11 @@ Tags | Dockerfile | OS Version 10.0.5-noble-chiseled-extra-arm64v8, 10.0-noble-chiseled-extra-arm64v8, 10.0.5-noble-chiseled-extra, 10.0-noble-chiseled-extra | [Dockerfile](src/aspnet/10.0/noble-chiseled-extra/arm64v8/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-composite-arm64v8, 10.0-noble-chiseled-composite-arm64v8, 10.0.5-noble-chiseled-composite, 10.0-noble-chiseled-composite | [Dockerfile](src/aspnet/10.0/noble-chiseled-composite/arm64v8/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-composite-extra-arm64v8, 10.0-noble-chiseled-composite-extra-arm64v8, 10.0.5-noble-chiseled-composite-extra, 10.0-noble-chiseled-composite-extra | [Dockerfile](src/aspnet/10.0/noble-chiseled-composite-extra/arm64v8/Dockerfile) | Ubuntu 24.04 +10.0.5-resolute-arm64v8, 10.0-resolute-arm64v8, 10.0.5-resolute, 10.0-resolute | [Dockerfile](src/aspnet/10.0/resolute/arm64v8/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-arm64v8, 10.0-resolute-chiseled-arm64v8, 10.0.5-resolute-chiseled, 10.0-resolute-chiseled | [Dockerfile](src/aspnet/10.0/resolute-chiseled/arm64v8/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-extra-arm64v8, 10.0-resolute-chiseled-extra-arm64v8, 10.0.5-resolute-chiseled-extra, 10.0-resolute-chiseled-extra | [Dockerfile](src/aspnet/10.0/resolute-chiseled-extra/arm64v8/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-composite-arm64v8, 10.0-resolute-chiseled-composite-arm64v8, 10.0.5-resolute-chiseled-composite, 10.0-resolute-chiseled-composite | [Dockerfile](src/aspnet/10.0/resolute-chiseled-composite/arm64v8/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-composite-extra-arm64v8, 10.0-resolute-chiseled-composite-extra-arm64v8, 10.0.5-resolute-chiseled-composite-extra, 10.0-resolute-chiseled-composite-extra | [Dockerfile](src/aspnet/10.0/resolute-chiseled-composite-extra/arm64v8/Dockerfile) | Ubuntu 26.04 10.0.5-alpine3.23-arm64v8, 10.0-alpine3.23-arm64v8, 10.0-alpine-arm64v8, 10.0.5-alpine3.23, 10.0-alpine3.23, 10.0-alpine | [Dockerfile](src/aspnet/10.0/alpine3.23/arm64v8/Dockerfile) | Alpine 3.23 10.0.5-alpine3.23-extra-arm64v8, 10.0-alpine3.23-extra-arm64v8, 10.0-alpine-extra-arm64v8, 10.0.5-alpine3.23-extra, 10.0-alpine3.23-extra, 10.0-alpine-extra | [Dockerfile](src/aspnet/10.0/alpine3.23-extra/arm64v8/Dockerfile) | Alpine 3.23 10.0.5-alpine3.23-composite-arm64v8, 10.0-alpine3.23-composite-arm64v8, 10.0.5-alpine3.23-composite, 10.0-alpine3.23-composite | [Dockerfile](src/aspnet/10.0/alpine3.23-composite/arm64v8/Dockerfile) | Alpine 3.23 @@ -233,6 +243,11 @@ Tags | Dockerfile | OS Version 10.0.5-noble-chiseled-extra-arm32v7, 10.0-noble-chiseled-extra-arm32v7, 10.0.5-noble-chiseled-extra, 10.0-noble-chiseled-extra | [Dockerfile](src/aspnet/10.0/noble-chiseled-extra/arm32v7/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-composite-arm32v7, 10.0-noble-chiseled-composite-arm32v7, 10.0.5-noble-chiseled-composite, 10.0-noble-chiseled-composite | [Dockerfile](src/aspnet/10.0/noble-chiseled-composite/arm32v7/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-composite-extra-arm32v7, 10.0-noble-chiseled-composite-extra-arm32v7, 10.0.5-noble-chiseled-composite-extra, 10.0-noble-chiseled-composite-extra | [Dockerfile](src/aspnet/10.0/noble-chiseled-composite-extra/arm32v7/Dockerfile) | Ubuntu 24.04 +10.0.5-resolute-arm32v7, 10.0-resolute-arm32v7, 10.0.5-resolute, 10.0-resolute | [Dockerfile](src/aspnet/10.0/resolute/arm32v7/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-arm32v7, 10.0-resolute-chiseled-arm32v7, 10.0.5-resolute-chiseled, 10.0-resolute-chiseled | [Dockerfile](src/aspnet/10.0/resolute-chiseled/arm32v7/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-extra-arm32v7, 10.0-resolute-chiseled-extra-arm32v7, 10.0.5-resolute-chiseled-extra, 10.0-resolute-chiseled-extra | [Dockerfile](src/aspnet/10.0/resolute-chiseled-extra/arm32v7/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-composite-arm32v7, 10.0-resolute-chiseled-composite-arm32v7, 10.0.5-resolute-chiseled-composite, 10.0-resolute-chiseled-composite | [Dockerfile](src/aspnet/10.0/resolute-chiseled-composite/arm32v7/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-composite-extra-arm32v7, 10.0-resolute-chiseled-composite-extra-arm32v7, 10.0.5-resolute-chiseled-composite-extra, 10.0-resolute-chiseled-composite-extra | [Dockerfile](src/aspnet/10.0/resolute-chiseled-composite-extra/arm32v7/Dockerfile) | Ubuntu 26.04 10.0.5-alpine3.23-arm32v7, 10.0-alpine3.23-arm32v7, 10.0-alpine-arm32v7, 10.0.5-alpine3.23, 10.0-alpine3.23, 10.0-alpine | [Dockerfile](src/aspnet/10.0/alpine3.23/arm32v7/Dockerfile) | Alpine 3.23 10.0.5-alpine3.23-extra-arm32v7, 10.0-alpine3.23-extra-arm32v7, 10.0-alpine-extra-arm32v7, 10.0.5-alpine3.23-extra, 10.0-alpine3.23-extra, 10.0-alpine-extra | [Dockerfile](src/aspnet/10.0/alpine3.23-extra/arm32v7/Dockerfile) | Alpine 3.23 10.0.5-alpine3.23-composite-arm32v7, 10.0-alpine3.23-composite-arm32v7, 10.0.5-alpine3.23-composite, 10.0-alpine3.23-composite | [Dockerfile](src/aspnet/10.0/alpine3.23-composite/arm32v7/Dockerfile) | Alpine 3.23 diff --git a/README.runtime-deps.md b/README.runtime-deps.md index e20f8066ca..047358b6be 100644 --- a/README.runtime-deps.md +++ b/README.runtime-deps.md @@ -67,6 +67,9 @@ Tags | Dockerfile | OS Version 10.0.5-noble-amd64, 10.0-noble-amd64, 10.0.5-noble, 10.0-noble, 10.0.5, 10.0, latest | [Dockerfile](src/runtime-deps/10.0/noble/amd64/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-amd64, 10.0-noble-chiseled-amd64, 10.0.5-noble-chiseled, 10.0-noble-chiseled | [Dockerfile](src/runtime-deps/10.0/noble-chiseled/amd64/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-extra-amd64, 10.0-noble-chiseled-extra-amd64, 10.0.5-noble-chiseled-extra, 10.0-noble-chiseled-extra | [Dockerfile](src/runtime-deps/10.0/noble-chiseled-extra/amd64/Dockerfile) | Ubuntu 24.04 +10.0.5-resolute-amd64, 10.0-resolute-amd64, 10.0.5-resolute, 10.0-resolute | [Dockerfile](src/runtime-deps/10.0/resolute/amd64/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-amd64, 10.0-resolute-chiseled-amd64, 10.0.5-resolute-chiseled, 10.0-resolute-chiseled | [Dockerfile](src/runtime-deps/10.0/resolute-chiseled/amd64/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-extra-amd64, 10.0-resolute-chiseled-extra-amd64, 10.0.5-resolute-chiseled-extra, 10.0-resolute-chiseled-extra | [Dockerfile](src/runtime-deps/10.0/resolute-chiseled-extra/amd64/Dockerfile) | Ubuntu 26.04 10.0.5-alpine3.23-amd64, 10.0-alpine3.23-amd64, 10.0-alpine-amd64, 10.0.5-alpine3.23, 10.0-alpine3.23, 10.0-alpine | [Dockerfile](src/runtime-deps/10.0/alpine3.23/amd64/Dockerfile) | Alpine 3.23 10.0.5-alpine3.23-extra-amd64, 10.0-alpine3.23-extra-amd64, 10.0-alpine-extra-amd64, 10.0.5-alpine3.23-extra, 10.0-alpine3.23-extra, 10.0-alpine-extra | [Dockerfile](src/runtime-deps/10.0/alpine3.23-extra/amd64/Dockerfile) | Alpine 3.23 10.0.5-azurelinux3.0-amd64, 10.0-azurelinux3.0-amd64, 10.0.5-azurelinux3.0, 10.0-azurelinux3.0 | [Dockerfile](src/runtime-deps/10.0/azurelinux3.0/amd64/Dockerfile) | Azure Linux 3.0 @@ -114,6 +117,9 @@ Tags | Dockerfile | OS Version 10.0.5-noble-arm64v8, 10.0-noble-arm64v8, 10.0.5-noble, 10.0-noble, 10.0.5, 10.0, latest | [Dockerfile](src/runtime-deps/10.0/noble/arm64v8/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-arm64v8, 10.0-noble-chiseled-arm64v8, 10.0.5-noble-chiseled, 10.0-noble-chiseled | [Dockerfile](src/runtime-deps/10.0/noble-chiseled/arm64v8/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-extra-arm64v8, 10.0-noble-chiseled-extra-arm64v8, 10.0.5-noble-chiseled-extra, 10.0-noble-chiseled-extra | [Dockerfile](src/runtime-deps/10.0/noble-chiseled-extra/arm64v8/Dockerfile) | Ubuntu 24.04 +10.0.5-resolute-arm64v8, 10.0-resolute-arm64v8, 10.0.5-resolute, 10.0-resolute | [Dockerfile](src/runtime-deps/10.0/resolute/arm64v8/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-arm64v8, 10.0-resolute-chiseled-arm64v8, 10.0.5-resolute-chiseled, 10.0-resolute-chiseled | [Dockerfile](src/runtime-deps/10.0/resolute-chiseled/arm64v8/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-extra-arm64v8, 10.0-resolute-chiseled-extra-arm64v8, 10.0.5-resolute-chiseled-extra, 10.0-resolute-chiseled-extra | [Dockerfile](src/runtime-deps/10.0/resolute-chiseled-extra/arm64v8/Dockerfile) | Ubuntu 26.04 10.0.5-alpine3.23-arm64v8, 10.0-alpine3.23-arm64v8, 10.0-alpine-arm64v8, 10.0.5-alpine3.23, 10.0-alpine3.23, 10.0-alpine | [Dockerfile](src/runtime-deps/10.0/alpine3.23/arm64v8/Dockerfile) | Alpine 3.23 10.0.5-alpine3.23-extra-arm64v8, 10.0-alpine3.23-extra-arm64v8, 10.0-alpine-extra-arm64v8, 10.0.5-alpine3.23-extra, 10.0-alpine3.23-extra, 10.0-alpine-extra | [Dockerfile](src/runtime-deps/10.0/alpine3.23-extra/arm64v8/Dockerfile) | Alpine 3.23 10.0.5-azurelinux3.0-arm64v8, 10.0-azurelinux3.0-arm64v8, 10.0.5-azurelinux3.0, 10.0-azurelinux3.0 | [Dockerfile](src/runtime-deps/10.0/azurelinux3.0/arm64v8/Dockerfile) | Azure Linux 3.0 @@ -161,6 +167,9 @@ Tags | Dockerfile | OS Version 10.0.5-noble-arm32v7, 10.0-noble-arm32v7, 10.0.5-noble, 10.0-noble, 10.0.5, 10.0, latest | [Dockerfile](src/runtime-deps/10.0/noble/arm32v7/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-arm32v7, 10.0-noble-chiseled-arm32v7, 10.0.5-noble-chiseled, 10.0-noble-chiseled | [Dockerfile](src/runtime-deps/10.0/noble-chiseled/arm32v7/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-extra-arm32v7, 10.0-noble-chiseled-extra-arm32v7, 10.0.5-noble-chiseled-extra, 10.0-noble-chiseled-extra | [Dockerfile](src/runtime-deps/10.0/noble-chiseled-extra/arm32v7/Dockerfile) | Ubuntu 24.04 +10.0.5-resolute-arm32v7, 10.0-resolute-arm32v7, 10.0.5-resolute, 10.0-resolute | [Dockerfile](src/runtime-deps/10.0/resolute/arm32v7/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-arm32v7, 10.0-resolute-chiseled-arm32v7, 10.0.5-resolute-chiseled, 10.0-resolute-chiseled | [Dockerfile](src/runtime-deps/10.0/resolute-chiseled/arm32v7/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-extra-arm32v7, 10.0-resolute-chiseled-extra-arm32v7, 10.0.5-resolute-chiseled-extra, 10.0-resolute-chiseled-extra | [Dockerfile](src/runtime-deps/10.0/resolute-chiseled-extra/arm32v7/Dockerfile) | Ubuntu 26.04 10.0.5-alpine3.23-arm32v7, 10.0-alpine3.23-arm32v7, 10.0-alpine-arm32v7, 10.0.5-alpine3.23, 10.0-alpine3.23, 10.0-alpine | [Dockerfile](src/runtime-deps/10.0/alpine3.23/arm32v7/Dockerfile) | Alpine 3.23 10.0.5-alpine3.23-extra-arm32v7, 10.0-alpine3.23-extra-arm32v7, 10.0-alpine-extra-arm32v7, 10.0.5-alpine3.23-extra, 10.0-alpine3.23-extra, 10.0-alpine-extra | [Dockerfile](src/runtime-deps/10.0/alpine3.23-extra/arm32v7/Dockerfile) | Alpine 3.23 9.0.14-bookworm-slim-arm32v7, 9.0-bookworm-slim-arm32v7, 9.0.14-bookworm-slim, 9.0-bookworm-slim, 9.0.14, 9.0 | [Dockerfile](src/runtime-deps/9.0/bookworm-slim/arm32v7/Dockerfile) | Debian 12 diff --git a/README.runtime.md b/README.runtime.md index 34d38141e7..e1cb0ae387 100644 --- a/README.runtime.md +++ b/README.runtime.md @@ -74,6 +74,9 @@ Tags | Dockerfile | OS Version 10.0.5-noble-amd64, 10.0-noble-amd64, 10.0.5-noble, 10.0-noble, 10.0.5, 10.0, latest | [Dockerfile](src/runtime/10.0/noble/amd64/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-amd64, 10.0-noble-chiseled-amd64, 10.0.5-noble-chiseled, 10.0-noble-chiseled | [Dockerfile](src/runtime/10.0/noble-chiseled/amd64/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-extra-amd64, 10.0-noble-chiseled-extra-amd64, 10.0.5-noble-chiseled-extra, 10.0-noble-chiseled-extra | [Dockerfile](src/runtime/10.0/noble-chiseled-extra/amd64/Dockerfile) | Ubuntu 24.04 +10.0.5-resolute-amd64, 10.0-resolute-amd64, 10.0.5-resolute, 10.0-resolute | [Dockerfile](src/runtime/10.0/resolute/amd64/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-amd64, 10.0-resolute-chiseled-amd64, 10.0.5-resolute-chiseled, 10.0-resolute-chiseled | [Dockerfile](src/runtime/10.0/resolute-chiseled/amd64/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-extra-amd64, 10.0-resolute-chiseled-extra-amd64, 10.0.5-resolute-chiseled-extra, 10.0-resolute-chiseled-extra | [Dockerfile](src/runtime/10.0/resolute-chiseled-extra/amd64/Dockerfile) | Ubuntu 26.04 10.0.5-alpine3.23-amd64, 10.0-alpine3.23-amd64, 10.0-alpine-amd64, 10.0.5-alpine3.23, 10.0-alpine3.23, 10.0-alpine | [Dockerfile](src/runtime/10.0/alpine3.23/amd64/Dockerfile) | Alpine 3.23 10.0.5-alpine3.23-extra-amd64, 10.0-alpine3.23-extra-amd64, 10.0-alpine-extra-amd64, 10.0.5-alpine3.23-extra, 10.0-alpine3.23-extra, 10.0-alpine-extra | [Dockerfile](src/runtime/10.0/alpine3.23-extra/amd64/Dockerfile) | Alpine 3.23 10.0.5-azurelinux3.0-amd64, 10.0-azurelinux3.0-amd64, 10.0.5-azurelinux3.0, 10.0-azurelinux3.0 | [Dockerfile](src/runtime/10.0/azurelinux3.0/amd64/Dockerfile) | Azure Linux 3.0 @@ -121,6 +124,9 @@ Tags | Dockerfile | OS Version 10.0.5-noble-arm64v8, 10.0-noble-arm64v8, 10.0.5-noble, 10.0-noble, 10.0.5, 10.0, latest | [Dockerfile](src/runtime/10.0/noble/arm64v8/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-arm64v8, 10.0-noble-chiseled-arm64v8, 10.0.5-noble-chiseled, 10.0-noble-chiseled | [Dockerfile](src/runtime/10.0/noble-chiseled/arm64v8/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-extra-arm64v8, 10.0-noble-chiseled-extra-arm64v8, 10.0.5-noble-chiseled-extra, 10.0-noble-chiseled-extra | [Dockerfile](src/runtime/10.0/noble-chiseled-extra/arm64v8/Dockerfile) | Ubuntu 24.04 +10.0.5-resolute-arm64v8, 10.0-resolute-arm64v8, 10.0.5-resolute, 10.0-resolute | [Dockerfile](src/runtime/10.0/resolute/arm64v8/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-arm64v8, 10.0-resolute-chiseled-arm64v8, 10.0.5-resolute-chiseled, 10.0-resolute-chiseled | [Dockerfile](src/runtime/10.0/resolute-chiseled/arm64v8/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-extra-arm64v8, 10.0-resolute-chiseled-extra-arm64v8, 10.0.5-resolute-chiseled-extra, 10.0-resolute-chiseled-extra | [Dockerfile](src/runtime/10.0/resolute-chiseled-extra/arm64v8/Dockerfile) | Ubuntu 26.04 10.0.5-alpine3.23-arm64v8, 10.0-alpine3.23-arm64v8, 10.0-alpine-arm64v8, 10.0.5-alpine3.23, 10.0-alpine3.23, 10.0-alpine | [Dockerfile](src/runtime/10.0/alpine3.23/arm64v8/Dockerfile) | Alpine 3.23 10.0.5-alpine3.23-extra-arm64v8, 10.0-alpine3.23-extra-arm64v8, 10.0-alpine-extra-arm64v8, 10.0.5-alpine3.23-extra, 10.0-alpine3.23-extra, 10.0-alpine-extra | [Dockerfile](src/runtime/10.0/alpine3.23-extra/arm64v8/Dockerfile) | Alpine 3.23 10.0.5-azurelinux3.0-arm64v8, 10.0-azurelinux3.0-arm64v8, 10.0.5-azurelinux3.0, 10.0-azurelinux3.0 | [Dockerfile](src/runtime/10.0/azurelinux3.0/arm64v8/Dockerfile) | Azure Linux 3.0 @@ -168,6 +174,9 @@ Tags | Dockerfile | OS Version 10.0.5-noble-arm32v7, 10.0-noble-arm32v7, 10.0.5-noble, 10.0-noble, 10.0.5, 10.0, latest | [Dockerfile](src/runtime/10.0/noble/arm32v7/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-arm32v7, 10.0-noble-chiseled-arm32v7, 10.0.5-noble-chiseled, 10.0-noble-chiseled | [Dockerfile](src/runtime/10.0/noble-chiseled/arm32v7/Dockerfile) | Ubuntu 24.04 10.0.5-noble-chiseled-extra-arm32v7, 10.0-noble-chiseled-extra-arm32v7, 10.0.5-noble-chiseled-extra, 10.0-noble-chiseled-extra | [Dockerfile](src/runtime/10.0/noble-chiseled-extra/arm32v7/Dockerfile) | Ubuntu 24.04 +10.0.5-resolute-arm32v7, 10.0-resolute-arm32v7, 10.0.5-resolute, 10.0-resolute | [Dockerfile](src/runtime/10.0/resolute/arm32v7/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-arm32v7, 10.0-resolute-chiseled-arm32v7, 10.0.5-resolute-chiseled, 10.0-resolute-chiseled | [Dockerfile](src/runtime/10.0/resolute-chiseled/arm32v7/Dockerfile) | Ubuntu 26.04 +10.0.5-resolute-chiseled-extra-arm32v7, 10.0-resolute-chiseled-extra-arm32v7, 10.0.5-resolute-chiseled-extra, 10.0-resolute-chiseled-extra | [Dockerfile](src/runtime/10.0/resolute-chiseled-extra/arm32v7/Dockerfile) | Ubuntu 26.04 10.0.5-alpine3.23-arm32v7, 10.0-alpine3.23-arm32v7, 10.0-alpine-arm32v7, 10.0.5-alpine3.23, 10.0-alpine3.23, 10.0-alpine | [Dockerfile](src/runtime/10.0/alpine3.23/arm32v7/Dockerfile) | Alpine 3.23 10.0.5-alpine3.23-extra-arm32v7, 10.0-alpine3.23-extra-arm32v7, 10.0-alpine-extra-arm32v7, 10.0.5-alpine3.23-extra, 10.0-alpine3.23-extra, 10.0-alpine-extra | [Dockerfile](src/runtime/10.0/alpine3.23-extra/arm32v7/Dockerfile) | Alpine 3.23 9.0.14-bookworm-slim-arm32v7, 9.0-bookworm-slim-arm32v7, 9.0.14-bookworm-slim, 9.0-bookworm-slim, 9.0.14, 9.0 | [Dockerfile](src/runtime/9.0/bookworm-slim/arm32v7/Dockerfile) | Debian 12 diff --git a/README.sdk.md b/README.sdk.md index d2a0d9209a..ed131271a0 100644 --- a/README.sdk.md +++ b/README.sdk.md @@ -69,6 +69,8 @@ Tags | Dockerfile | OS Version ---- | ---------- | ---------- 10.0.201-noble-amd64, 10.0-noble-amd64, 10.0.201-noble, 10.0-noble, 10.0.201, 10.0, latest | [Dockerfile](src/sdk/10.0/noble/amd64/Dockerfile) | Ubuntu 24.04 10.0.201-noble-aot-amd64, 10.0-noble-aot-amd64, 10.0.201-noble-aot, 10.0-noble-aot, 10.0.201-aot, 10.0-aot | [Dockerfile](src/sdk/10.0/noble-aot/amd64/Dockerfile) | Ubuntu 24.04 +10.0.201-resolute-amd64, 10.0-resolute-amd64, 10.0.201-resolute, 10.0-resolute | [Dockerfile](src/sdk/10.0/resolute/amd64/Dockerfile) | Ubuntu 26.04 +10.0.201-resolute-aot-amd64, 10.0-resolute-aot-amd64, 10.0.201-resolute-aot, 10.0-resolute-aot | [Dockerfile](src/sdk/10.0/resolute-aot/amd64/Dockerfile) | Ubuntu 26.04 10.0.201-alpine3.23-amd64, 10.0-alpine3.23-amd64, 10.0-alpine-amd64, 10.0.201-alpine3.23, 10.0-alpine3.23, 10.0-alpine | [Dockerfile](src/sdk/10.0/alpine3.23/amd64/Dockerfile) | Alpine 3.23 10.0.201-alpine3.23-aot-amd64, 10.0-alpine3.23-aot-amd64, 10.0-alpine-aot-amd64, 10.0.201-alpine3.23-aot, 10.0-alpine3.23-aot, 10.0-alpine-aot | [Dockerfile](src/sdk/10.0/alpine3.23-aot/amd64/Dockerfile) | Alpine 3.23 10.0.201-azurelinux3.0-amd64, 10.0-azurelinux3.0-amd64, 10.0.201-azurelinux3.0, 10.0-azurelinux3.0 | [Dockerfile](src/sdk/10.0/azurelinux3.0/amd64/Dockerfile) | Azure Linux 3.0 @@ -100,6 +102,8 @@ Tags | Dockerfile | OS Version ---- | ---------- | ---------- 10.0.201-noble-arm64v8, 10.0-noble-arm64v8, 10.0.201-noble, 10.0-noble, 10.0.201, 10.0, latest | [Dockerfile](src/sdk/10.0/noble/arm64v8/Dockerfile) | Ubuntu 24.04 10.0.201-noble-aot-arm64v8, 10.0-noble-aot-arm64v8, 10.0.201-noble-aot, 10.0-noble-aot, 10.0.201-aot, 10.0-aot | [Dockerfile](src/sdk/10.0/noble-aot/arm64v8/Dockerfile) | Ubuntu 24.04 +10.0.201-resolute-arm64v8, 10.0-resolute-arm64v8, 10.0.201-resolute, 10.0-resolute | [Dockerfile](src/sdk/10.0/resolute/arm64v8/Dockerfile) | Ubuntu 26.04 +10.0.201-resolute-aot-arm64v8, 10.0-resolute-aot-arm64v8, 10.0.201-resolute-aot, 10.0-resolute-aot | [Dockerfile](src/sdk/10.0/resolute-aot/arm64v8/Dockerfile) | Ubuntu 26.04 10.0.201-alpine3.23-arm64v8, 10.0-alpine3.23-arm64v8, 10.0-alpine-arm64v8, 10.0.201-alpine3.23, 10.0-alpine3.23, 10.0-alpine | [Dockerfile](src/sdk/10.0/alpine3.23/arm64v8/Dockerfile) | Alpine 3.23 10.0.201-alpine3.23-aot-arm64v8, 10.0-alpine3.23-aot-arm64v8, 10.0-alpine-aot-arm64v8, 10.0.201-alpine3.23-aot, 10.0-alpine3.23-aot, 10.0-alpine-aot | [Dockerfile](src/sdk/10.0/alpine3.23-aot/arm64v8/Dockerfile) | Alpine 3.23 10.0.201-azurelinux3.0-arm64v8, 10.0-azurelinux3.0-arm64v8, 10.0.201-azurelinux3.0, 10.0-azurelinux3.0 | [Dockerfile](src/sdk/10.0/azurelinux3.0/arm64v8/Dockerfile) | Azure Linux 3.0 @@ -130,6 +134,7 @@ Tags | Dockerfile | OS Version Tags | Dockerfile | OS Version ---- | ---------- | ---------- 10.0.201-noble-arm32v7, 10.0-noble-arm32v7, 10.0.201-noble, 10.0-noble, 10.0.201, 10.0, latest | [Dockerfile](src/sdk/10.0/noble/arm32v7/Dockerfile) | Ubuntu 24.04 +10.0.201-resolute-arm32v7, 10.0-resolute-arm32v7, 10.0.201-resolute, 10.0-resolute | [Dockerfile](src/sdk/10.0/resolute/arm32v7/Dockerfile) | Ubuntu 26.04 10.0.201-alpine3.23-arm32v7, 10.0-alpine3.23-arm32v7, 10.0-alpine-arm32v7, 10.0.201-alpine3.23, 10.0-alpine3.23, 10.0-alpine | [Dockerfile](src/sdk/10.0/alpine3.23/arm32v7/Dockerfile) | Alpine 3.23 9.0.312-bookworm-slim-arm32v7, 9.0-bookworm-slim-arm32v7, 9.0.312-bookworm-slim, 9.0-bookworm-slim, 9.0.312, 9.0 | [Dockerfile](src/sdk/9.0/bookworm-slim/arm32v7/Dockerfile) | Debian 12 9.0.312-alpine3.23-arm32v7, 9.0-alpine3.23-arm32v7, 9.0-alpine-arm32v7, 9.0.312-alpine3.23, 9.0-alpine3.23, 9.0-alpine | [Dockerfile](src/sdk/9.0/alpine3.23/arm32v7/Dockerfile) | Alpine 3.23 diff --git a/eng/mcr-tags-metadata-templates/aspnet-tags.yml b/eng/mcr-tags-metadata-templates/aspnet-tags.yml index 05a88aa580..0e67b502c7 100644 --- a/eng/mcr-tags-metadata-templates/aspnet-tags.yml +++ b/eng/mcr-tags-metadata-templates/aspnet-tags.yml @@ -20,6 +20,11 @@ $(McrTagsYmlTagGroup:10.0-noble-chiseled) $(McrTagsYmlTagGroup:10.0-noble-chiseled-extra) $(McrTagsYmlTagGroup:10.0-noble-chiseled-composite) $(McrTagsYmlTagGroup:10.0-noble-chiseled-composite-extra) +$(McrTagsYmlTagGroup:10.0-resolute) +$(McrTagsYmlTagGroup:10.0-resolute-chiseled) +$(McrTagsYmlTagGroup:10.0-resolute-chiseled-extra) +$(McrTagsYmlTagGroup:10.0-resolute-chiseled-composite) +$(McrTagsYmlTagGroup:10.0-resolute-chiseled-composite-extra) $(McrTagsYmlTagGroup:10.0-alpine3.23) $(McrTagsYmlTagGroup:10.0-alpine3.23-extra) $(McrTagsYmlTagGroup:10.0-alpine3.23-composite) diff --git a/eng/mcr-tags-metadata-templates/runtime-deps-tags.yml b/eng/mcr-tags-metadata-templates/runtime-deps-tags.yml index 6786f6724b..fa6761d2c8 100644 --- a/eng/mcr-tags-metadata-templates/runtime-deps-tags.yml +++ b/eng/mcr-tags-metadata-templates/runtime-deps-tags.yml @@ -10,6 +10,9 @@ $(McrTagsYmlTagGroup:11.0-preview-azurelinux3.0-distroless-extra|.NET 11 Preview $(McrTagsYmlTagGroup:10.0-noble) $(McrTagsYmlTagGroup:10.0-noble-chiseled) $(McrTagsYmlTagGroup:10.0-noble-chiseled-extra) +$(McrTagsYmlTagGroup:10.0-resolute) +$(McrTagsYmlTagGroup:10.0-resolute-chiseled) +$(McrTagsYmlTagGroup:10.0-resolute-chiseled-extra) $(McrTagsYmlTagGroup:10.0-alpine3.23) $(McrTagsYmlTagGroup:10.0-alpine3.23-extra) $(McrTagsYmlTagGroup:10.0-azurelinux3.0) diff --git a/eng/mcr-tags-metadata-templates/runtime-tags.yml b/eng/mcr-tags-metadata-templates/runtime-tags.yml index 655d97f476..2820227662 100644 --- a/eng/mcr-tags-metadata-templates/runtime-tags.yml +++ b/eng/mcr-tags-metadata-templates/runtime-tags.yml @@ -12,6 +12,9 @@ $(McrTagsYmlTagGroup:11.0-preview-windowsservercore-ltsc2025|.NET 11 Preview Tag $(McrTagsYmlTagGroup:10.0-noble) $(McrTagsYmlTagGroup:10.0-noble-chiseled) $(McrTagsYmlTagGroup:10.0-noble-chiseled-extra) +$(McrTagsYmlTagGroup:10.0-resolute) +$(McrTagsYmlTagGroup:10.0-resolute-chiseled) +$(McrTagsYmlTagGroup:10.0-resolute-chiseled-extra) $(McrTagsYmlTagGroup:10.0-alpine3.23) $(McrTagsYmlTagGroup:10.0-alpine3.23-extra) $(McrTagsYmlTagGroup:10.0-azurelinux3.0) diff --git a/eng/mcr-tags-metadata-templates/sdk-tags.yml b/eng/mcr-tags-metadata-templates/sdk-tags.yml index 6cf4a86abe..eafcf9dbe5 100644 --- a/eng/mcr-tags-metadata-templates/sdk-tags.yml +++ b/eng/mcr-tags-metadata-templates/sdk-tags.yml @@ -9,6 +9,8 @@ $(McrTagsYmlTagGroup:11.0-preview-nanoserver-ltsc2025|.NET 11 Preview Tags) $(McrTagsYmlTagGroup:11.0-preview-windowsservercore-ltsc2025|.NET 11 Preview Tags) $(McrTagsYmlTagGroup:10.0-noble) $(McrTagsYmlTagGroup:10.0-noble-aot) +$(McrTagsYmlTagGroup:10.0-resolute) +$(McrTagsYmlTagGroup:10.0-resolute-aot) $(McrTagsYmlTagGroup:10.0-alpine3.23) $(McrTagsYmlTagGroup:10.0-alpine3.23-aot) $(McrTagsYmlTagGroup:10.0-azurelinux3.0) diff --git a/manifest.json b/manifest.json index 4658a638a3..c1b5499060 100644 --- a/manifest.json +++ b/manifest.json @@ -1870,6 +1870,203 @@ } ] }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "sharedTags": { + "$(dotnet|10.0|fixed-tag)-resolute": {}, + "$(dotnet|10.0|minor-tag)-resolute": {} + }, + "platforms": [ + { + "dockerfile": "src/runtime-deps/10.0/resolute/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/runtime-deps/Dockerfile", + "os": "linux", + "osVersion": "resolute", + "tags": { + "$(dotnet|10.0|fixed-tag)-resolute-amd64": {}, + "$(dotnet|10.0|minor-tag)-resolute-amd64": {} + } + }, + { + "architecture": "arm", + "dockerfile": "src/runtime-deps/10.0/resolute/arm32v7", + "dockerfileTemplate": "eng/dockerfile-templates/runtime-deps/Dockerfile", + "os": "linux", + "osVersion": "resolute", + "tags": { + "$(dotnet|10.0|fixed-tag)-resolute-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-resolute-arm32v7": {} + }, + "variant": "v7" + }, + { + "architecture": "arm64", + "dockerfile": "src/runtime-deps/10.0/resolute/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/runtime-deps/Dockerfile", + "os": "linux", + "osVersion": "resolute", + "tags": { + "$(dotnet|10.0|fixed-tag)-resolute-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-resolute-arm64v8": {} + }, + "variant": "v8" + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "sharedTags": { + "$(dotnet|10.0|fixed-tag)-resolute-chiseled": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled": {} + }, + "platforms": [ + { + "dockerfile": "src/runtime-deps/10.0/resolute-chiseled/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/runtime-deps/Dockerfile.chiseled-ubuntu", + "os": "linux", + "osVersion": "resolute-chiseled", + "tags": { + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-amd64": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-amd64": {} + }, + "customBuildLegGroups": [ + { + "name": "test-dependencies", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-amd64" + ] + }, + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-amd64" + ] + } + ] + }, + { + "architecture": "arm64", + "dockerfile": "src/runtime-deps/10.0/resolute-chiseled/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/runtime-deps/Dockerfile.chiseled-ubuntu", + "os": "linux", + "osVersion": "resolute-chiseled", + "tags": { + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-arm64v8": {} + }, + "variant": "v8", + "customBuildLegGroups": [ + { + "name": "test-dependencies", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm64v8" + ] + }, + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm64v8" + ] + } + ] + }, + { + "architecture": "arm", + "dockerfile": "src/runtime-deps/10.0/resolute-chiseled/arm32v7", + "dockerfileTemplate": "eng/dockerfile-templates/runtime-deps/Dockerfile.chiseled-ubuntu", + "os": "linux", + "osVersion": "resolute-chiseled", + "tags": { + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-arm32v7": {} + }, + "variant": "v7", + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm32v7" + ] + } + ] + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "sharedTags": { + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-extra": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-extra": {} + }, + "platforms": [ + { + "dockerfile": "src/runtime-deps/10.0/resolute-chiseled-extra/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/runtime-deps/Dockerfile.chiseled-ubuntu.extra", + "os": "linux", + "osVersion": "resolute-chiseled", + "tags": { + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-extra-amd64": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-extra-amd64": {} + }, + "customBuildLegGroups": [ + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-amd64" + ] + } + ] + }, + { + "architecture": "arm64", + "dockerfile": "src/runtime-deps/10.0/resolute-chiseled-extra/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/runtime-deps/Dockerfile.chiseled-ubuntu.extra", + "os": "linux", + "osVersion": "resolute-chiseled", + "tags": { + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-extra-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-extra-arm64v8": {} + }, + "variant": "v8", + "customBuildLegGroups": [ + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm64v8" + ] + } + ] + }, + { + "architecture": "arm", + "dockerfile": "src/runtime-deps/10.0/resolute-chiseled-extra/arm32v7", + "dockerfileTemplate": "eng/dockerfile-templates/runtime-deps/Dockerfile.chiseled-ubuntu.extra", + "os": "linux", + "osVersion": "resolute-chiseled", + "tags": { + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-extra-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-extra-arm32v7": {} + }, + "variant": "v7", + "customBuildLegGroups": [ + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm32v7" + ] + } + ] + } + ] + }, { "productVersion": "$(dotnet|11.0|product-version)", "sharedTags": { @@ -4574,84 +4771,22 @@ }, { "productVersion": "$(dotnet|10.0|product-version)", - "platforms": [ - { - "dockerfile": "src/runtime/10.0/nanoserver-ltsc2022/amd64", - "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.windows", - "os": "windows", - "osVersion": "nanoserver-ltsc2022", - "tags": { - "$(dotnet|10.0|fixed-tag)-nanoserver-ltsc2022": {}, - "$(dotnet|10.0|minor-tag)-nanoserver-ltsc2022": {} - } - } - ] - }, - { - "productVersion": "$(dotnet|10.0|product-version)", - "platforms": [ - { - "dockerfile": "src/runtime/10.0/nanoserver-ltsc2025/amd64", - "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.windows", - "os": "windows", - "osVersion": "nanoserver-ltsc2025", - "tags": { - "$(dotnet|10.0|fixed-tag)-nanoserver-ltsc2025": {}, - "$(dotnet|10.0|minor-tag)-nanoserver-ltsc2025": {} - } - } - ] - }, - { - "productVersion": "$(dotnet|10.0|product-version)", - "platforms": [ - { - "dockerfile": "src/runtime/10.0/windowsservercore-ltsc2022/amd64", - "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.windows", - "os": "windows", - "osVersion": "windowsservercore-ltsc2022", - "tags": { - "$(dotnet|10.0|fixed-tag)-windowsservercore-ltsc2022": {}, - "$(dotnet|10.0|minor-tag)-windowsservercore-ltsc2022": {} - } - } - ] - }, - { - "productVersion": "$(dotnet|10.0|product-version)", - "platforms": [ - { - "dockerfile": "src/runtime/10.0/windowsservercore-ltsc2025/amd64", - "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.windows", - "os": "windows", - "osVersion": "windowsservercore-ltsc2025", - "tags": { - "$(dotnet|10.0|fixed-tag)-windowsservercore-ltsc2025": {}, - "$(dotnet|10.0|minor-tag)-windowsservercore-ltsc2025": {} - } - } - ] - }, - { - "productVersion": "$(dotnet|11.0|product-version)", "sharedTags": { - "$(dotnet|11.0|fixed-tag)-resolute": {}, - "$(dotnet|11.0|minor-tag)-resolute": {}, - "$(dotnet|11.0|fixed-tag)": {}, - "$(dotnet|11.0|minor-tag)": {} + "$(dotnet|10.0|fixed-tag)-resolute": {}, + "$(dotnet|10.0|minor-tag)-resolute": {} }, "platforms": [ { "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/resolute/amd64", + "dockerfile": "src/runtime/10.0/resolute/amd64", "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", "osVersion": "resolute", "tags": { - "$(dotnet|11.0|fixed-tag)-resolute-amd64": {}, - "$(dotnet|11.0|minor-tag)-resolute-amd64": {} + "$(dotnet|10.0|fixed-tag)-resolute-amd64": {}, + "$(dotnet|10.0|minor-tag)-resolute-amd64": {} } }, { @@ -4659,13 +4794,13 @@ "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/resolute/arm32v7", + "dockerfile": "src/runtime/10.0/resolute/arm32v7", "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", "osVersion": "resolute", "tags": { - "$(dotnet|11.0|fixed-tag)-resolute-arm32v7": {}, - "$(dotnet|11.0|minor-tag)-resolute-arm32v7": {} + "$(dotnet|10.0|fixed-tag)-resolute-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-resolute-arm32v7": {} }, "variant": "v7" }, @@ -4674,189 +4809,306 @@ "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/resolute/arm64v8", + "dockerfile": "src/runtime/10.0/resolute/arm64v8", "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", "osVersion": "resolute", "tags": { - "$(dotnet|11.0|fixed-tag)-resolute-arm64v8": {}, - "$(dotnet|11.0|minor-tag)-resolute-arm64v8": {} + "$(dotnet|10.0|fixed-tag)-resolute-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-resolute-arm64v8": {} }, "variant": "v8" } ] }, { - "productVersion": "$(dotnet|11.0|product-version)", + "productVersion": "$(dotnet|10.0|product-version)", "sharedTags": { - "$(dotnet|11.0|fixed-tag)-alpine3.23": {}, - "$(dotnet|11.0|minor-tag)-alpine3.23": {}, - "$(dotnet|11.0|minor-tag)-alpine": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled": {} }, "platforms": [ { "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/alpine3.23/amd64", + "dockerfile": "src/runtime/10.0/resolute-chiseled/amd64", "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", - "osVersion": "alpine3.23", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|11.0|fixed-tag)-alpine3.23-amd64": {}, - "$(dotnet|11.0|minor-tag)-alpine3.23-amd64": {}, - "$(dotnet|11.0|minor-tag)-alpine-amd64": {} - } + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-amd64": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-amd64": {} + }, + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-amd64" + ] + } + ] }, { - "architecture": "arm", + "architecture": "arm64", "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/alpine3.23/arm32v7", + "dockerfile": "src/runtime/10.0/resolute-chiseled/arm64v8", "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", - "osVersion": "alpine3.23", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|11.0|fixed-tag)-alpine3.23-arm32v7": {}, - "$(dotnet|11.0|minor-tag)-alpine3.23-arm32v7": {}, - "$(dotnet|11.0|minor-tag)-alpine-arm32v7": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-arm64v8": {} }, - "variant": "v7" + "variant": "v8", + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm64v8" + ] + } + ] }, { - "architecture": "arm64", + "architecture": "arm", "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/alpine3.23/arm64v8", + "dockerfile": "src/runtime/10.0/resolute-chiseled/arm32v7", "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", - "osVersion": "alpine3.23", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|11.0|fixed-tag)-alpine3.23-arm64v8": {}, - "$(dotnet|11.0|minor-tag)-alpine3.23-arm64v8": {}, - "$(dotnet|11.0|minor-tag)-alpine-arm64v8": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-arm32v7": {} }, - "variant": "v8" + "variant": "v7", + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm32v7" + ] + } + ] } ] }, { - "productVersion": "$(dotnet|11.0|product-version)", + "productVersion": "$(dotnet|10.0|product-version)", "sharedTags": { - "$(dotnet|11.0|fixed-tag)-alpine3.23-extra": {}, - "$(dotnet|11.0|minor-tag)-alpine3.23-extra": {}, - "$(dotnet|11.0|minor-tag)-alpine-extra": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-extra": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-extra": {} }, "platforms": [ { "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/alpine3.23-extra/amd64", - "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux.extra", + "dockerfile": "src/runtime/10.0/resolute-chiseled-extra/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", - "osVersion": "alpine3.23", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|11.0|fixed-tag)-alpine3.23-extra-amd64": {}, - "$(dotnet|11.0|minor-tag)-alpine3.23-extra-amd64": {}, - "$(dotnet|11.0|minor-tag)-alpine-extra-amd64": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-extra-amd64": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-extra-amd64": {} }, "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-amd64" + ] + }, { "name": "test-dependencies", "type": "Integral", "dependencies": [ - "$(Repo:sdk):$(sdk|11.0|minor-tag)-alpine3.23-amd64" + "$(Repo:runtime):$(dotnet|10.0|minor-tag)-resolute-chiseled-amd64" ] } ] }, { + "architecture": "arm64", "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/alpine3.23-extra/arm32v7", - "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux.extra", + "dockerfile": "src/runtime/10.0/resolute-chiseled-extra/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", - "osVersion": "alpine3.23", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|11.0|fixed-tag)-alpine3.23-extra-arm32v7": {}, - "$(dotnet|11.0|minor-tag)-alpine3.23-extra-arm32v7": {}, - "$(dotnet|11.0|minor-tag)-alpine-extra-arm32v7": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-extra-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-extra-arm64v8": {} }, + "variant": "v8", "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm64v8" + ] + }, { "name": "test-dependencies", "type": "Integral", "dependencies": [ - "$(Repo:sdk):$(sdk|11.0|minor-tag)-alpine3.23-arm32v7" + "$(Repo:runtime):$(dotnet|10.0|minor-tag)-resolute-chiseled-arm64v8" ] } - ], - "architecture": "arm", - "variant": "v7" + ] }, { + "architecture": "arm", "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/alpine3.23-extra/arm64v8", - "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux.extra", + "dockerfile": "src/runtime/10.0/resolute-chiseled-extra/arm32v7", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", - "osVersion": "alpine3.23", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|11.0|fixed-tag)-alpine3.23-extra-arm64v8": {}, - "$(dotnet|11.0|minor-tag)-alpine3.23-extra-arm64v8": {}, - "$(dotnet|11.0|minor-tag)-alpine-extra-arm64v8": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-extra-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-extra-arm32v7": {} }, + "variant": "v7", "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm32v7" + ] + }, { "name": "test-dependencies", "type": "Integral", "dependencies": [ - "$(Repo:sdk):$(sdk|11.0|minor-tag)-alpine3.23-arm64v8" + "$(Repo:runtime):$(dotnet|10.0|minor-tag)-resolute-chiseled-arm32v7" ] } - ], - "architecture": "arm64", - "variant": "v8" + ] + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "platforms": [ + { + "dockerfile": "src/runtime/10.0/nanoserver-ltsc2022/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.windows", + "os": "windows", + "osVersion": "nanoserver-ltsc2022", + "tags": { + "$(dotnet|10.0|fixed-tag)-nanoserver-ltsc2022": {}, + "$(dotnet|10.0|minor-tag)-nanoserver-ltsc2022": {} + } + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "platforms": [ + { + "dockerfile": "src/runtime/10.0/nanoserver-ltsc2025/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.windows", + "os": "windows", + "osVersion": "nanoserver-ltsc2025", + "tags": { + "$(dotnet|10.0|fixed-tag)-nanoserver-ltsc2025": {}, + "$(dotnet|10.0|minor-tag)-nanoserver-ltsc2025": {} + } + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "platforms": [ + { + "dockerfile": "src/runtime/10.0/windowsservercore-ltsc2022/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.windows", + "os": "windows", + "osVersion": "windowsservercore-ltsc2022", + "tags": { + "$(dotnet|10.0|fixed-tag)-windowsservercore-ltsc2022": {}, + "$(dotnet|10.0|minor-tag)-windowsservercore-ltsc2022": {} + } + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "platforms": [ + { + "dockerfile": "src/runtime/10.0/windowsservercore-ltsc2025/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.windows", + "os": "windows", + "osVersion": "windowsservercore-ltsc2025", + "tags": { + "$(dotnet|10.0|fixed-tag)-windowsservercore-ltsc2025": {}, + "$(dotnet|10.0|minor-tag)-windowsservercore-ltsc2025": {} + } } ] }, { "productVersion": "$(dotnet|11.0|product-version)", "sharedTags": { - "$(dotnet|11.0|fixed-tag)-azurelinux3.0": {}, - "$(dotnet|11.0|minor-tag)-azurelinux3.0": {} + "$(dotnet|11.0|fixed-tag)-resolute": {}, + "$(dotnet|11.0|minor-tag)-resolute": {}, + "$(dotnet|11.0|fixed-tag)": {}, + "$(dotnet|11.0|minor-tag)": {} }, "platforms": [ { "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/azurelinux3.0/amd64", + "dockerfile": "src/runtime/11.0/resolute/amd64", "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", - "osVersion": "azurelinux3.0", + "osVersion": "resolute", "tags": { - "$(dotnet|11.0|fixed-tag)-azurelinux3.0-amd64": {}, - "$(dotnet|11.0|minor-tag)-azurelinux3.0-amd64": {} + "$(dotnet|11.0|fixed-tag)-resolute-amd64": {}, + "$(dotnet|11.0|minor-tag)-resolute-amd64": {} } }, + { + "architecture": "arm", + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/runtime/11.0/resolute/arm32v7", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", + "os": "linux", + "osVersion": "resolute", + "tags": { + "$(dotnet|11.0|fixed-tag)-resolute-arm32v7": {}, + "$(dotnet|11.0|minor-tag)-resolute-arm32v7": {} + }, + "variant": "v7" + }, { "architecture": "arm64", "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/azurelinux3.0/arm64v8", + "dockerfile": "src/runtime/11.0/resolute/arm64v8", "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", - "osVersion": "azurelinux3.0", + "osVersion": "resolute", "tags": { - "$(dotnet|11.0|fixed-tag)-azurelinux3.0-arm64v8": {}, - "$(dotnet|11.0|minor-tag)-azurelinux3.0-arm64v8": {} + "$(dotnet|11.0|fixed-tag)-resolute-arm64v8": {}, + "$(dotnet|11.0|minor-tag)-resolute-arm64v8": {} }, "variant": "v8" } @@ -4865,73 +5117,249 @@ { "productVersion": "$(dotnet|11.0|product-version)", "sharedTags": { - "$(dotnet|11.0|fixed-tag)-azurelinux3.0-distroless": {}, - "$(dotnet|11.0|minor-tag)-azurelinux3.0-distroless": {} + "$(dotnet|11.0|fixed-tag)-alpine3.23": {}, + "$(dotnet|11.0|minor-tag)-alpine3.23": {}, + "$(dotnet|11.0|minor-tag)-alpine": {} }, "platforms": [ { "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/azurelinux3.0-distroless/amd64", + "dockerfile": "src/runtime/11.0/alpine3.23/amd64", "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", - "osVersion": "azurelinux3.0-distroless", + "osVersion": "alpine3.23", "tags": { - "$(dotnet|11.0|fixed-tag)-azurelinux3.0-distroless-amd64": {}, - "$(dotnet|11.0|minor-tag)-azurelinux3.0-distroless-amd64": {} + "$(dotnet|11.0|fixed-tag)-alpine3.23-amd64": {}, + "$(dotnet|11.0|minor-tag)-alpine3.23-amd64": {}, + "$(dotnet|11.0|minor-tag)-alpine-amd64": {} + } + }, + { + "architecture": "arm", + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" }, - "customBuildLegGroups": [ - { - "name": "pr-build", - "type": "Supplemental", - "dependencies": [ - "$(Repo:sdk):$(sdk|11.0|minor-tag)-azurelinux3.0-amd64" - ] - } - ] + "dockerfile": "src/runtime/11.0/alpine3.23/arm32v7", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", + "os": "linux", + "osVersion": "alpine3.23", + "tags": { + "$(dotnet|11.0|fixed-tag)-alpine3.23-arm32v7": {}, + "$(dotnet|11.0|minor-tag)-alpine3.23-arm32v7": {}, + "$(dotnet|11.0|minor-tag)-alpine-arm32v7": {} + }, + "variant": "v7" }, { "architecture": "arm64", "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/azurelinux3.0-distroless/arm64v8", + "dockerfile": "src/runtime/11.0/alpine3.23/arm64v8", "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", "os": "linux", - "osVersion": "azurelinux3.0-distroless", + "osVersion": "alpine3.23", "tags": { - "$(dotnet|11.0|fixed-tag)-azurelinux3.0-distroless-arm64v8": {}, - "$(dotnet|11.0|minor-tag)-azurelinux3.0-distroless-arm64v8": {} + "$(dotnet|11.0|fixed-tag)-alpine3.23-arm64v8": {}, + "$(dotnet|11.0|minor-tag)-alpine3.23-arm64v8": {}, + "$(dotnet|11.0|minor-tag)-alpine-arm64v8": {} }, - "variant": "v8", - "customBuildLegGroups": [ - { - "name": "pr-build", - "type": "Supplemental", - "dependencies": [ - "$(Repo:sdk):$(sdk|11.0|minor-tag)-azurelinux3.0-arm64v8" - ] - } - ] + "variant": "v8" } ] }, { "productVersion": "$(dotnet|11.0|product-version)", "sharedTags": { - "$(dotnet|11.0|fixed-tag)-azurelinux3.0-distroless-extra": {}, - "$(dotnet|11.0|minor-tag)-azurelinux3.0-distroless-extra": {} + "$(dotnet|11.0|fixed-tag)-alpine3.23-extra": {}, + "$(dotnet|11.0|minor-tag)-alpine3.23-extra": {}, + "$(dotnet|11.0|minor-tag)-alpine-extra": {} }, "platforms": [ { "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/runtime/11.0/azurelinux3.0-distroless-extra/amd64", + "dockerfile": "src/runtime/11.0/alpine3.23-extra/amd64", "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux.extra", "os": "linux", - "osVersion": "azurelinux3.0-distroless", + "osVersion": "alpine3.23", + "tags": { + "$(dotnet|11.0|fixed-tag)-alpine3.23-extra-amd64": {}, + "$(dotnet|11.0|minor-tag)-alpine3.23-extra-amd64": {}, + "$(dotnet|11.0|minor-tag)-alpine-extra-amd64": {} + }, + "customBuildLegGroups": [ + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|11.0|minor-tag)-alpine3.23-amd64" + ] + } + ] + }, + { + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/runtime/11.0/alpine3.23-extra/arm32v7", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux.extra", + "os": "linux", + "osVersion": "alpine3.23", + "tags": { + "$(dotnet|11.0|fixed-tag)-alpine3.23-extra-arm32v7": {}, + "$(dotnet|11.0|minor-tag)-alpine3.23-extra-arm32v7": {}, + "$(dotnet|11.0|minor-tag)-alpine-extra-arm32v7": {} + }, + "customBuildLegGroups": [ + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|11.0|minor-tag)-alpine3.23-arm32v7" + ] + } + ], + "architecture": "arm", + "variant": "v7" + }, + { + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/runtime/11.0/alpine3.23-extra/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux.extra", + "os": "linux", + "osVersion": "alpine3.23", + "tags": { + "$(dotnet|11.0|fixed-tag)-alpine3.23-extra-arm64v8": {}, + "$(dotnet|11.0|minor-tag)-alpine3.23-extra-arm64v8": {}, + "$(dotnet|11.0|minor-tag)-alpine-extra-arm64v8": {} + }, + "customBuildLegGroups": [ + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|11.0|minor-tag)-alpine3.23-arm64v8" + ] + } + ], + "architecture": "arm64", + "variant": "v8" + } + ] + }, + { + "productVersion": "$(dotnet|11.0|product-version)", + "sharedTags": { + "$(dotnet|11.0|fixed-tag)-azurelinux3.0": {}, + "$(dotnet|11.0|minor-tag)-azurelinux3.0": {} + }, + "platforms": [ + { + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/runtime/11.0/azurelinux3.0/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", + "os": "linux", + "osVersion": "azurelinux3.0", + "tags": { + "$(dotnet|11.0|fixed-tag)-azurelinux3.0-amd64": {}, + "$(dotnet|11.0|minor-tag)-azurelinux3.0-amd64": {} + } + }, + { + "architecture": "arm64", + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/runtime/11.0/azurelinux3.0/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", + "os": "linux", + "osVersion": "azurelinux3.0", + "tags": { + "$(dotnet|11.0|fixed-tag)-azurelinux3.0-arm64v8": {}, + "$(dotnet|11.0|minor-tag)-azurelinux3.0-arm64v8": {} + }, + "variant": "v8" + } + ] + }, + { + "productVersion": "$(dotnet|11.0|product-version)", + "sharedTags": { + "$(dotnet|11.0|fixed-tag)-azurelinux3.0-distroless": {}, + "$(dotnet|11.0|minor-tag)-azurelinux3.0-distroless": {} + }, + "platforms": [ + { + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/runtime/11.0/azurelinux3.0-distroless/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", + "os": "linux", + "osVersion": "azurelinux3.0-distroless", + "tags": { + "$(dotnet|11.0|fixed-tag)-azurelinux3.0-distroless-amd64": {}, + "$(dotnet|11.0|minor-tag)-azurelinux3.0-distroless-amd64": {} + }, + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|11.0|minor-tag)-azurelinux3.0-amd64" + ] + } + ] + }, + { + "architecture": "arm64", + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/runtime/11.0/azurelinux3.0-distroless/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux", + "os": "linux", + "osVersion": "azurelinux3.0-distroless", + "tags": { + "$(dotnet|11.0|fixed-tag)-azurelinux3.0-distroless-arm64v8": {}, + "$(dotnet|11.0|minor-tag)-azurelinux3.0-distroless-arm64v8": {} + }, + "variant": "v8", + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|11.0|minor-tag)-azurelinux3.0-arm64v8" + ] + } + ] + } + ] + }, + { + "productVersion": "$(dotnet|11.0|product-version)", + "sharedTags": { + "$(dotnet|11.0|fixed-tag)-azurelinux3.0-distroless-extra": {}, + "$(dotnet|11.0|minor-tag)-azurelinux3.0-distroless-extra": {} + }, + "platforms": [ + { + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/runtime/11.0/azurelinux3.0-distroless-extra/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/runtime/Dockerfile.linux.extra", + "os": "linux", + "osVersion": "azurelinux3.0-distroless", "tags": { "$(dotnet|11.0|fixed-tag)-azurelinux3.0-distroless-extra-amd64": {}, "$(dotnet|11.0|minor-tag)-azurelinux3.0-distroless-extra-amd64": {} @@ -8190,149 +8618,435 @@ "dockerfile": "src/aspnet/10.0/alpine3.23-composite-extra/arm32v7", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite.extra", "os": "linux", - "osVersion": "alpine3.23", + "osVersion": "alpine3.23", + "tags": { + "$(dotnet|10.0|fixed-tag)-alpine3.23-composite-extra-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-alpine3.23-composite-extra-arm32v7": {} + }, + "customBuildLegGroups": [ + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-alpine3.23-arm32v7" + ] + } + ], + "architecture": "arm", + "variant": "v7" + }, + { + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/aspnet/10.0/alpine3.23-composite-extra/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite.extra", + "os": "linux", + "osVersion": "alpine3.23", + "tags": { + "$(dotnet|10.0|fixed-tag)-alpine3.23-composite-extra-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-alpine3.23-composite-extra-arm64v8": {} + }, + "customBuildLegGroups": [ + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-alpine3.23-arm64v8" + ] + } + ], + "architecture": "arm64", + "variant": "v8" + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "sharedTags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0": {} + }, + "platforms": [ + { + "buildArgs": { + "REPO": "$(Repo:runtime)" + }, + "dockerfile": "src/aspnet/10.0/azurelinux3.0/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", + "os": "linux", + "osVersion": "azurelinux3.0", + "tags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-amd64": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-amd64": {} + } + }, + { + "architecture": "arm64", + "buildArgs": { + "REPO": "$(Repo:runtime)" + }, + "dockerfile": "src/aspnet/10.0/azurelinux3.0/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", + "os": "linux", + "osVersion": "azurelinux3.0", + "tags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-arm64v8": {} + }, + "variant": "v8" + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "sharedTags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless": {} + }, + "platforms": [ + { + "buildArgs": { + "REPO": "$(Repo:runtime)" + }, + "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", + "os": "linux", + "osVersion": "azurelinux3.0-distroless", + "tags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-amd64": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-amd64": {} + }, + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" + ] + }, + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" + ] + } + ] + }, + { + "architecture": "arm64", + "buildArgs": { + "REPO": "$(Repo:runtime)" + }, + "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", + "os": "linux", + "osVersion": "azurelinux3.0-distroless", + "tags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-arm64v8": {} + }, + "variant": "v8", + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" + ] + }, + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" + ] + } + ] + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "sharedTags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-extra": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-extra": {} + }, + "platforms": [ + { + "buildArgs": { + "REPO": "$(Repo:runtime)" + }, + "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless-extra/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux.extra", + "os": "linux", + "osVersion": "azurelinux3.0-distroless", + "tags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-extra-amd64": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-extra-amd64": {} + }, + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" + ] + }, + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" + ] + } + ] + }, + { + "architecture": "arm64", + "buildArgs": { + "REPO": "$(Repo:runtime)" + }, + "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless-extra/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux.extra", + "os": "linux", + "osVersion": "azurelinux3.0-distroless", + "tags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-extra-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-extra-arm64v8": {} + }, + "variant": "v8", + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" + ] + }, + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" + ] + } + ] + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "sharedTags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-composite": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-composite": {} + }, + "platforms": [ + { + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless-composite/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite", + "os": "linux", + "osVersion": "azurelinux3.0-distroless", + "tags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-composite-amd64": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-composite-amd64": {} + }, + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" + ] + }, + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" + ] + } + ] + }, + { + "architecture": "arm64", + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless-composite/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite", + "os": "linux", + "osVersion": "azurelinux3.0-distroless", + "tags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-composite-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-composite-arm64v8": {} + }, + "variant": "v8", + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" + ] + }, + { + "name": "test-dependencies", + "type": "Integral", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" + ] + } + ] + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "sharedTags": { + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-composite-extra": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-composite-extra": {} + }, + "platforms": [ + { + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless-composite-extra/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite.extra", + "os": "linux", + "osVersion": "azurelinux3.0-distroless", "tags": { - "$(dotnet|10.0|fixed-tag)-alpine3.23-composite-extra-arm32v7": {}, - "$(dotnet|10.0|minor-tag)-alpine3.23-composite-extra-arm32v7": {} + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-composite-extra-amd64": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-composite-extra-amd64": {} }, "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" + ] + }, { "name": "test-dependencies", "type": "Integral", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-alpine3.23-arm32v7" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" ] } - ], - "architecture": "arm", - "variant": "v7" + ] }, { + "architecture": "arm64", "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/aspnet/10.0/alpine3.23-composite-extra/arm64v8", + "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless-composite-extra/arm64v8", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite.extra", "os": "linux", - "osVersion": "alpine3.23", + "osVersion": "azurelinux3.0-distroless", "tags": { - "$(dotnet|10.0|fixed-tag)-alpine3.23-composite-extra-arm64v8": {}, - "$(dotnet|10.0|minor-tag)-alpine3.23-composite-extra-arm64v8": {} + "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-composite-extra-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-composite-extra-arm64v8": {} }, + "variant": "v8", "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" + ] + }, { "name": "test-dependencies", "type": "Integral", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-alpine3.23-arm64v8" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" ] } - ], - "architecture": "arm64", - "variant": "v8" + ] } ] }, { "productVersion": "$(dotnet|10.0|product-version)", "sharedTags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0": {} + "$(dotnet|10.0|fixed-tag)-noble-chiseled": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled": {} }, "platforms": [ { "buildArgs": { "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/azurelinux3.0/amd64", + "dockerfile": "src/aspnet/10.0/noble-chiseled/amd64", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", "os": "linux", - "osVersion": "azurelinux3.0", + "osVersion": "noble-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-amd64": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-amd64": {} - } + "$(dotnet|10.0|fixed-tag)-noble-chiseled-amd64": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-amd64": {} + }, + "customBuildLegGroups": [ + { + "name": "pr-build", + "type": "Supplemental", + "dependencies": [ + "$(Repo:sdk):$(sdk|10.0|minor-tag)-noble-amd64" + ] + } + ] }, { "architecture": "arm64", "buildArgs": { "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/azurelinux3.0/arm64v8", - "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", - "os": "linux", - "osVersion": "azurelinux3.0", - "tags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-arm64v8": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-arm64v8": {} - }, - "variant": "v8" - } - ] - }, - { - "productVersion": "$(dotnet|10.0|product-version)", - "sharedTags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless": {} - }, - "platforms": [ - { - "buildArgs": { - "REPO": "$(Repo:runtime)" - }, - "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless/amd64", + "dockerfile": "src/aspnet/10.0/noble-chiseled/arm64v8", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", "os": "linux", - "osVersion": "azurelinux3.0-distroless", + "osVersion": "noble-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-amd64": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-amd64": {} + "$(dotnet|10.0|fixed-tag)-noble-chiseled-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-arm64v8": {} }, + "variant": "v8", "customBuildLegGroups": [ { "name": "pr-build", "type": "Supplemental", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" - ] - }, - { - "name": "test-dependencies", - "type": "Integral", - "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-noble-arm64v8" ] } ] }, { - "architecture": "arm64", + "architecture": "arm", "buildArgs": { "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless/arm64v8", + "dockerfile": "src/aspnet/10.0/noble-chiseled/arm32v7", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", "os": "linux", - "osVersion": "azurelinux3.0-distroless", + "osVersion": "noble-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-arm64v8": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-arm64v8": {} + "$(dotnet|10.0|fixed-tag)-noble-chiseled-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-arm32v7": {} }, - "variant": "v8", + "variant": "v7", "customBuildLegGroups": [ { "name": "pr-build", "type": "Supplemental", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" - ] - }, - { - "name": "test-dependencies", - "type": "Integral", - "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-noble-arm32v7" ] } ] @@ -8342,35 +9056,35 @@ { "productVersion": "$(dotnet|10.0|product-version)", "sharedTags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-extra": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-extra": {} + "$(dotnet|10.0|fixed-tag)-noble-chiseled-extra": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-extra": {} }, "platforms": [ { "buildArgs": { "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless-extra/amd64", + "dockerfile": "src/aspnet/10.0/noble-chiseled-extra/amd64", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux.extra", "os": "linux", - "osVersion": "azurelinux3.0-distroless", + "osVersion": "noble-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-extra-amd64": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-extra-amd64": {} + "$(dotnet|10.0|fixed-tag)-noble-chiseled-extra-amd64": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-extra-amd64": {} }, "customBuildLegGroups": [ { "name": "pr-build", "type": "Supplemental", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-noble-amd64" ] }, { "name": "test-dependencies", "type": "Integral", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" + "$(Repo:aspnet):$(dotnet|10.0|minor-tag)-noble-chiseled-amd64" ] } ] @@ -8380,13 +9094,13 @@ "buildArgs": { "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless-extra/arm64v8", + "dockerfile": "src/aspnet/10.0/noble-chiseled-extra/arm64v8", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux.extra", "os": "linux", - "osVersion": "azurelinux3.0-distroless", + "osVersion": "noble-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-extra-arm64v8": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-extra-arm64v8": {} + "$(dotnet|10.0|fixed-tag)-noble-chiseled-extra-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-extra-arm64v8": {} }, "variant": "v8", "customBuildLegGroups": [ @@ -8394,183 +9108,232 @@ "name": "pr-build", "type": "Supplemental", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-noble-arm64v8" ] }, { "name": "test-dependencies", "type": "Integral", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" + "$(Repo:aspnet):$(dotnet|10.0|minor-tag)-noble-chiseled-arm64v8" ] } ] - } - ] - }, - { - "productVersion": "$(dotnet|10.0|product-version)", - "sharedTags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-composite": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-composite": {} - }, - "platforms": [ + }, { + "architecture": "arm", "buildArgs": { - "REPO": "$(Repo:runtime-deps)" + "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless-composite/amd64", - "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite", + "dockerfile": "src/aspnet/10.0/noble-chiseled-extra/arm32v7", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux.extra", "os": "linux", - "osVersion": "azurelinux3.0-distroless", + "osVersion": "noble-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-composite-amd64": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-composite-amd64": {} + "$(dotnet|10.0|fixed-tag)-noble-chiseled-extra-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-extra-arm32v7": {} }, + "variant": "v7", "customBuildLegGroups": [ { "name": "pr-build", "type": "Supplemental", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-noble-arm32v7" ] }, { "name": "test-dependencies", "type": "Integral", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" + "$(Repo:aspnet):$(dotnet|10.0|minor-tag)-noble-chiseled-arm32v7" ] } ] + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "sharedTags": { + "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-extra": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-extra": {} + }, + "platforms": [ + { + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/aspnet/10.0/noble-chiseled-composite-extra/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite.extra", + "os": "linux", + "osVersion": "noble-chiseled", + "tags": { + "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-extra-amd64": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-extra-amd64": {} + } + }, + { + "architecture": "arm64", + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/aspnet/10.0/noble-chiseled-composite-extra/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite.extra", + "os": "linux", + "osVersion": "noble-chiseled", + "tags": { + "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-extra-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-extra-arm64v8": {} + }, + "variant": "v8" + }, + { + "architecture": "arm", + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/aspnet/10.0/noble-chiseled-composite-extra/arm32v7", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite.extra", + "os": "linux", + "osVersion": "noble-chiseled", + "tags": { + "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-extra-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-extra-arm32v7": {} + }, + "variant": "v7" + } + ] + }, + { + "productVersion": "$(dotnet|10.0|product-version)", + "sharedTags": { + "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-composite": {} + }, + "platforms": [ + { + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/aspnet/10.0/noble-chiseled-composite/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite", + "os": "linux", + "osVersion": "noble-chiseled", + "tags": { + "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-amd64": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-amd64": {} + } }, { "architecture": "arm64", "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless-composite/arm64v8", + "dockerfile": "src/aspnet/10.0/noble-chiseled-composite/arm64v8", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite", "os": "linux", - "osVersion": "azurelinux3.0-distroless", + "osVersion": "noble-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-composite-arm64v8": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-composite-arm64v8": {} + "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-arm64v8": {} }, - "variant": "v8", - "customBuildLegGroups": [ - { - "name": "pr-build", - "type": "Supplemental", - "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" - ] - }, - { - "name": "test-dependencies", - "type": "Integral", - "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" - ] - } - ] + "variant": "v8" + }, + { + "architecture": "arm", + "buildArgs": { + "REPO": "$(Repo:runtime-deps)" + }, + "dockerfile": "src/aspnet/10.0/noble-chiseled-composite/arm32v7", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite", + "os": "linux", + "osVersion": "noble-chiseled", + "tags": { + "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-arm32v7": {} + }, + "variant": "v7" } ] }, { "productVersion": "$(dotnet|10.0|product-version)", "sharedTags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-composite-extra": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-composite-extra": {} + "$(dotnet|10.0|fixed-tag)-resolute": {}, + "$(dotnet|10.0|minor-tag)-resolute": {} }, "platforms": [ { "buildArgs": { - "REPO": "$(Repo:runtime-deps)" + "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless-composite-extra/amd64", - "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite.extra", + "dockerfile": "src/aspnet/10.0/resolute/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", "os": "linux", - "osVersion": "azurelinux3.0-distroless", + "osVersion": "resolute", "tags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-composite-extra-amd64": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-composite-extra-amd64": {} + "$(dotnet|10.0|fixed-tag)-resolute-amd64": {}, + "$(dotnet|10.0|minor-tag)-resolute-amd64": {} + } + }, + { + "architecture": "arm", + "buildArgs": { + "REPO": "$(Repo:runtime)" }, - "customBuildLegGroups": [ - { - "name": "pr-build", - "type": "Supplemental", - "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" - ] - }, - { - "name": "test-dependencies", - "type": "Integral", - "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-amd64" - ] - } - ] + "dockerfile": "src/aspnet/10.0/resolute/arm32v7", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", + "os": "linux", + "osVersion": "resolute", + "tags": { + "$(dotnet|10.0|fixed-tag)-resolute-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-resolute-arm32v7": {} + }, + "variant": "v7" }, { "architecture": "arm64", "buildArgs": { - "REPO": "$(Repo:runtime-deps)" + "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/azurelinux3.0-distroless-composite-extra/arm64v8", - "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite.extra", + "dockerfile": "src/aspnet/10.0/resolute/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", "os": "linux", - "osVersion": "azurelinux3.0-distroless", + "osVersion": "resolute", "tags": { - "$(dotnet|10.0|fixed-tag)-azurelinux3.0-distroless-composite-extra-arm64v8": {}, - "$(dotnet|10.0|minor-tag)-azurelinux3.0-distroless-composite-extra-arm64v8": {} + "$(dotnet|10.0|fixed-tag)-resolute-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-resolute-arm64v8": {} }, - "variant": "v8", - "customBuildLegGroups": [ - { - "name": "pr-build", - "type": "Supplemental", - "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" - ] - }, - { - "name": "test-dependencies", - "type": "Integral", - "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-azurelinux3.0-arm64v8" - ] - } - ] + "variant": "v8" } ] }, { "productVersion": "$(dotnet|10.0|product-version)", "sharedTags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled": {} }, "platforms": [ { "buildArgs": { "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/noble-chiseled/amd64", + "dockerfile": "src/aspnet/10.0/resolute-chiseled/amd64", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", "os": "linux", - "osVersion": "noble-chiseled", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-amd64": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-amd64": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-amd64": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-amd64": {} }, "customBuildLegGroups": [ { "name": "pr-build", "type": "Supplemental", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-noble-amd64" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-amd64" ] } ] @@ -8580,13 +9343,13 @@ "buildArgs": { "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/noble-chiseled/arm64v8", + "dockerfile": "src/aspnet/10.0/resolute-chiseled/arm64v8", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", "os": "linux", - "osVersion": "noble-chiseled", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-arm64v8": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-arm64v8": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-arm64v8": {} }, "variant": "v8", "customBuildLegGroups": [ @@ -8594,7 +9357,7 @@ "name": "pr-build", "type": "Supplemental", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-noble-arm64v8" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm64v8" ] } ] @@ -8604,13 +9367,13 @@ "buildArgs": { "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/noble-chiseled/arm32v7", + "dockerfile": "src/aspnet/10.0/resolute-chiseled/arm32v7", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux", "os": "linux", - "osVersion": "noble-chiseled", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-arm32v7": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-arm32v7": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-arm32v7": {} }, "variant": "v7", "customBuildLegGroups": [ @@ -8618,7 +9381,7 @@ "name": "pr-build", "type": "Supplemental", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-noble-arm32v7" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm32v7" ] } ] @@ -8628,35 +9391,35 @@ { "productVersion": "$(dotnet|10.0|product-version)", "sharedTags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-extra": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-extra": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-extra": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-extra": {} }, "platforms": [ { "buildArgs": { "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/noble-chiseled-extra/amd64", + "dockerfile": "src/aspnet/10.0/resolute-chiseled-extra/amd64", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux.extra", "os": "linux", - "osVersion": "noble-chiseled", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-extra-amd64": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-extra-amd64": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-extra-amd64": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-extra-amd64": {} }, "customBuildLegGroups": [ { "name": "pr-build", "type": "Supplemental", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-noble-amd64" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-amd64" ] }, { "name": "test-dependencies", "type": "Integral", "dependencies": [ - "$(Repo:aspnet):$(dotnet|10.0|minor-tag)-noble-chiseled-amd64" + "$(Repo:aspnet):$(dotnet|10.0|minor-tag)-resolute-chiseled-amd64" ] } ] @@ -8666,13 +9429,13 @@ "buildArgs": { "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/noble-chiseled-extra/arm64v8", + "dockerfile": "src/aspnet/10.0/resolute-chiseled-extra/arm64v8", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux.extra", "os": "linux", - "osVersion": "noble-chiseled", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-extra-arm64v8": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-extra-arm64v8": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-extra-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-extra-arm64v8": {} }, "variant": "v8", "customBuildLegGroups": [ @@ -8680,14 +9443,14 @@ "name": "pr-build", "type": "Supplemental", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-noble-arm64v8" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm64v8" ] }, { "name": "test-dependencies", "type": "Integral", "dependencies": [ - "$(Repo:aspnet):$(dotnet|10.0|minor-tag)-noble-chiseled-arm64v8" + "$(Repo:aspnet):$(dotnet|10.0|minor-tag)-resolute-chiseled-arm64v8" ] } ] @@ -8697,13 +9460,13 @@ "buildArgs": { "REPO": "$(Repo:runtime)" }, - "dockerfile": "src/aspnet/10.0/noble-chiseled-extra/arm32v7", + "dockerfile": "src/aspnet/10.0/resolute-chiseled-extra/arm32v7", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux.extra", "os": "linux", - "osVersion": "noble-chiseled", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-extra-arm32v7": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-extra-arm32v7": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-extra-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-extra-arm32v7": {} }, "variant": "v7", "customBuildLegGroups": [ @@ -8711,14 +9474,14 @@ "name": "pr-build", "type": "Supplemental", "dependencies": [ - "$(Repo:sdk):$(sdk|10.0|minor-tag)-noble-arm32v7" + "$(Repo:sdk):$(sdk|10.0|minor-tag)-resolute-arm32v7" ] }, { "name": "test-dependencies", "type": "Integral", "dependencies": [ - "$(Repo:aspnet):$(dotnet|10.0|minor-tag)-noble-chiseled-arm32v7" + "$(Repo:aspnet):$(dotnet|10.0|minor-tag)-resolute-chiseled-arm32v7" ] } ] @@ -8728,21 +9491,21 @@ { "productVersion": "$(dotnet|10.0|product-version)", "sharedTags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-extra": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-extra": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-composite-extra": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-composite-extra": {} }, "platforms": [ { "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/aspnet/10.0/noble-chiseled-composite-extra/amd64", + "dockerfile": "src/aspnet/10.0/resolute-chiseled-composite-extra/amd64", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite.extra", "os": "linux", - "osVersion": "noble-chiseled", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-extra-amd64": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-extra-amd64": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-composite-extra-amd64": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-composite-extra-amd64": {} } }, { @@ -8750,13 +9513,13 @@ "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/aspnet/10.0/noble-chiseled-composite-extra/arm64v8", + "dockerfile": "src/aspnet/10.0/resolute-chiseled-composite-extra/arm64v8", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite.extra", "os": "linux", - "osVersion": "noble-chiseled", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-extra-arm64v8": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-extra-arm64v8": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-composite-extra-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-composite-extra-arm64v8": {} }, "variant": "v8" }, @@ -8765,13 +9528,13 @@ "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/aspnet/10.0/noble-chiseled-composite-extra/arm32v7", + "dockerfile": "src/aspnet/10.0/resolute-chiseled-composite-extra/arm32v7", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite.extra", "os": "linux", - "osVersion": "noble-chiseled", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-extra-arm32v7": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-extra-arm32v7": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-composite-extra-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-composite-extra-arm32v7": {} }, "variant": "v7" } @@ -8780,21 +9543,21 @@ { "productVersion": "$(dotnet|10.0|product-version)", "sharedTags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-composite": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-composite": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-composite": {} }, "platforms": [ { "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/aspnet/10.0/noble-chiseled-composite/amd64", + "dockerfile": "src/aspnet/10.0/resolute-chiseled-composite/amd64", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite", "os": "linux", - "osVersion": "noble-chiseled", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-amd64": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-amd64": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-composite-amd64": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-composite-amd64": {} } }, { @@ -8802,13 +9565,13 @@ "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/aspnet/10.0/noble-chiseled-composite/arm64v8", + "dockerfile": "src/aspnet/10.0/resolute-chiseled-composite/arm64v8", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite", "os": "linux", - "osVersion": "noble-chiseled", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-arm64v8": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-arm64v8": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-composite-arm64v8": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-composite-arm64v8": {} }, "variant": "v8" }, @@ -8817,13 +9580,13 @@ "buildArgs": { "REPO": "$(Repo:runtime-deps)" }, - "dockerfile": "src/aspnet/10.0/noble-chiseled-composite/arm32v7", + "dockerfile": "src/aspnet/10.0/resolute-chiseled-composite/arm32v7", "dockerfileTemplate": "eng/dockerfile-templates/aspnet/Dockerfile.linux-composite", "os": "linux", - "osVersion": "noble-chiseled", + "osVersion": "resolute-chiseled", "tags": { - "$(dotnet|10.0|fixed-tag)-noble-chiseled-composite-arm32v7": {}, - "$(dotnet|10.0|minor-tag)-noble-chiseled-composite-arm32v7": {} + "$(dotnet|10.0|fixed-tag)-resolute-chiseled-composite-arm32v7": {}, + "$(dotnet|10.0|minor-tag)-resolute-chiseled-composite-arm32v7": {} }, "variant": "v7" } @@ -10689,6 +11452,95 @@ } ] }, + { + "productVersion": "$(sdk|10.0|product-version)", + "sharedTags": { + "$(sdk|10.0|fixed-tag)-resolute": {}, + "$(sdk|10.0|minor-tag)-resolute": {} + }, + "platforms": [ + { + "buildArgs": { + "REPO": "$(Repo:aspnet)" + }, + "dockerfile": "src/sdk/10.0/resolute/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/sdk/Dockerfile.linux", + "os": "linux", + "osVersion": "resolute", + "tags": { + "$(sdk|10.0|fixed-tag)-resolute-amd64": {}, + "$(sdk|10.0|minor-tag)-resolute-amd64": {} + } + }, + { + "buildArgs": { + "REPO": "$(Repo:aspnet)" + }, + "architecture": "arm", + "dockerfile": "src/sdk/10.0/resolute/arm32v7", + "dockerfileTemplate": "eng/dockerfile-templates/sdk/Dockerfile.linux", + "os": "linux", + "osVersion": "resolute", + "tags": { + "$(sdk|10.0|fixed-tag)-resolute-arm32v7": {}, + "$(sdk|10.0|minor-tag)-resolute-arm32v7": {} + }, + "variant": "v7" + }, + { + "buildArgs": { + "REPO": "$(Repo:aspnet)" + }, + "architecture": "arm64", + "dockerfile": "src/sdk/10.0/resolute/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/sdk/Dockerfile.linux", + "os": "linux", + "osVersion": "resolute", + "tags": { + "$(sdk|10.0|fixed-tag)-resolute-arm64v8": {}, + "$(sdk|10.0|minor-tag)-resolute-arm64v8": {} + }, + "variant": "v8" + } + ] + }, + { + "productVersion": "$(sdk|10.0|product-version)", + "sharedTags": { + "$(sdk|10.0|fixed-tag)-resolute-aot": {}, + "$(sdk|10.0|minor-tag)-resolute-aot": {} + }, + "platforms": [ + { + "buildArgs": { + "REPO": "$(Repo:sdk)" + }, + "dockerfile": "src/sdk/10.0/resolute-aot/amd64", + "dockerfileTemplate": "eng/dockerfile-templates/sdk/Dockerfile.linux.aot", + "os": "linux", + "osVersion": "resolute", + "tags": { + "$(sdk|10.0|fixed-tag)-resolute-aot-amd64": {}, + "$(sdk|10.0|minor-tag)-resolute-aot-amd64": {} + } + }, + { + "buildArgs": { + "REPO": "$(Repo:sdk)" + }, + "architecture": "arm64", + "dockerfile": "src/sdk/10.0/resolute-aot/arm64v8", + "dockerfileTemplate": "eng/dockerfile-templates/sdk/Dockerfile.linux.aot", + "os": "linux", + "osVersion": "resolute", + "tags": { + "$(sdk|10.0|fixed-tag)-resolute-aot-arm64v8": {}, + "$(sdk|10.0|minor-tag)-resolute-aot-arm64v8": {} + }, + "variant": "v8" + } + ] + }, { "productVersion": "$(sdk|10.0|product-version)", "sharedTags": { diff --git a/src/aspnet/10.0/resolute-chiseled-composite-extra/amd64/Dockerfile b/src/aspnet/10.0/resolute-chiseled-composite-extra/amd64/Dockerfile new file mode 100644 index 0000000000..986c53acc1 --- /dev/null +++ b/src/aspnet/10.0/resolute-chiseled-composite-extra/amd64/Dockerfile @@ -0,0 +1,35 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +# Retrieve ASP.NET Composite Runtime +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-composite-$aspnetcore_version-linux-x64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-composite-$aspnetcore_version-linux-x64.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-composite-$aspnetcore_version-linux-x64.tar.gz.sha512 \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-composite-$aspnetcore_version-linux-x64.tar.gz --directory /usr/share/dotnet \ + && rm \ + aspnetcore-runtime-composite-$aspnetcore_version-linux-x64.tar.gz \ + aspnetcore-runtime-composite-$aspnetcore_version-linux-x64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# ASP.NET Composite Image +FROM $REPO:10.0.5-resolute-chiseled-extra-amd64 + +ENV \ + # .NET Runtime version + DOTNET_VERSION=10.0.5 \ + # ASP.NET Core version + ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/src/aspnet/10.0/resolute-chiseled-composite-extra/arm32v7/Dockerfile b/src/aspnet/10.0/resolute-chiseled-composite-extra/arm32v7/Dockerfile new file mode 100644 index 0000000000..376835c2de --- /dev/null +++ b/src/aspnet/10.0/resolute-chiseled-composite-extra/arm32v7/Dockerfile @@ -0,0 +1,35 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +# Retrieve ASP.NET Composite Runtime +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-composite-$aspnetcore_version-linux-arm.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-composite-$aspnetcore_version-linux-arm.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-composite-$aspnetcore_version-linux-arm.tar.gz.sha512 \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-composite-$aspnetcore_version-linux-arm.tar.gz --directory /usr/share/dotnet \ + && rm \ + aspnetcore-runtime-composite-$aspnetcore_version-linux-arm.tar.gz \ + aspnetcore-runtime-composite-$aspnetcore_version-linux-arm.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# ASP.NET Composite Image +FROM $REPO:10.0.5-resolute-chiseled-extra-arm32v7 + +ENV \ + # .NET Runtime version + DOTNET_VERSION=10.0.5 \ + # ASP.NET Core version + ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/src/aspnet/10.0/resolute-chiseled-composite-extra/arm64v8/Dockerfile b/src/aspnet/10.0/resolute-chiseled-composite-extra/arm64v8/Dockerfile new file mode 100644 index 0000000000..2d70879d09 --- /dev/null +++ b/src/aspnet/10.0/resolute-chiseled-composite-extra/arm64v8/Dockerfile @@ -0,0 +1,35 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +# Retrieve ASP.NET Composite Runtime +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-composite-$aspnetcore_version-linux-arm64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-composite-$aspnetcore_version-linux-arm64.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-composite-$aspnetcore_version-linux-arm64.tar.gz.sha512 \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-composite-$aspnetcore_version-linux-arm64.tar.gz --directory /usr/share/dotnet \ + && rm \ + aspnetcore-runtime-composite-$aspnetcore_version-linux-arm64.tar.gz \ + aspnetcore-runtime-composite-$aspnetcore_version-linux-arm64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# ASP.NET Composite Image +FROM $REPO:10.0.5-resolute-chiseled-extra-arm64v8 + +ENV \ + # .NET Runtime version + DOTNET_VERSION=10.0.5 \ + # ASP.NET Core version + ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/src/aspnet/10.0/resolute-chiseled-composite/amd64/Dockerfile b/src/aspnet/10.0/resolute-chiseled-composite/amd64/Dockerfile new file mode 100644 index 0000000000..053ea29f17 --- /dev/null +++ b/src/aspnet/10.0/resolute-chiseled-composite/amd64/Dockerfile @@ -0,0 +1,35 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +# Retrieve ASP.NET Composite Runtime +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-composite-$aspnetcore_version-linux-x64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-composite-$aspnetcore_version-linux-x64.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-composite-$aspnetcore_version-linux-x64.tar.gz.sha512 \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-composite-$aspnetcore_version-linux-x64.tar.gz --directory /usr/share/dotnet \ + && rm \ + aspnetcore-runtime-composite-$aspnetcore_version-linux-x64.tar.gz \ + aspnetcore-runtime-composite-$aspnetcore_version-linux-x64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# ASP.NET Composite Image +FROM $REPO:10.0.5-resolute-chiseled-amd64 + +ENV \ + # .NET Runtime version + DOTNET_VERSION=10.0.5 \ + # ASP.NET Core version + ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/src/aspnet/10.0/resolute-chiseled-composite/arm32v7/Dockerfile b/src/aspnet/10.0/resolute-chiseled-composite/arm32v7/Dockerfile new file mode 100644 index 0000000000..40ffbdb1ba --- /dev/null +++ b/src/aspnet/10.0/resolute-chiseled-composite/arm32v7/Dockerfile @@ -0,0 +1,35 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +# Retrieve ASP.NET Composite Runtime +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-composite-$aspnetcore_version-linux-arm.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-composite-$aspnetcore_version-linux-arm.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-composite-$aspnetcore_version-linux-arm.tar.gz.sha512 \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-composite-$aspnetcore_version-linux-arm.tar.gz --directory /usr/share/dotnet \ + && rm \ + aspnetcore-runtime-composite-$aspnetcore_version-linux-arm.tar.gz \ + aspnetcore-runtime-composite-$aspnetcore_version-linux-arm.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# ASP.NET Composite Image +FROM $REPO:10.0.5-resolute-chiseled-arm32v7 + +ENV \ + # .NET Runtime version + DOTNET_VERSION=10.0.5 \ + # ASP.NET Core version + ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/src/aspnet/10.0/resolute-chiseled-composite/arm64v8/Dockerfile b/src/aspnet/10.0/resolute-chiseled-composite/arm64v8/Dockerfile new file mode 100644 index 0000000000..ea76ea7ea6 --- /dev/null +++ b/src/aspnet/10.0/resolute-chiseled-composite/arm64v8/Dockerfile @@ -0,0 +1,35 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +# Retrieve ASP.NET Composite Runtime +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-composite-$aspnetcore_version-linux-arm64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-composite-$aspnetcore_version-linux-arm64.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-composite-$aspnetcore_version-linux-arm64.tar.gz.sha512 \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-composite-$aspnetcore_version-linux-arm64.tar.gz --directory /usr/share/dotnet \ + && rm \ + aspnetcore-runtime-composite-$aspnetcore_version-linux-arm64.tar.gz \ + aspnetcore-runtime-composite-$aspnetcore_version-linux-arm64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# ASP.NET Composite Image +FROM $REPO:10.0.5-resolute-chiseled-arm64v8 + +ENV \ + # .NET Runtime version + DOTNET_VERSION=10.0.5 \ + # ASP.NET Core version + ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/src/aspnet/10.0/resolute-chiseled-extra/amd64/Dockerfile b/src/aspnet/10.0/resolute-chiseled-extra/amd64/Dockerfile new file mode 100644 index 0000000000..75fc8eccbc --- /dev/null +++ b/src/aspnet/10.0/resolute-chiseled-extra/amd64/Dockerfile @@ -0,0 +1,25 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +# Retrieve ASP.NET Core +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz \ + aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:10.0.5-resolute-chiseled-extra-amd64 + +# ASP.NET Core version +ENV ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/src/aspnet/10.0/resolute-chiseled-extra/arm32v7/Dockerfile b/src/aspnet/10.0/resolute-chiseled-extra/arm32v7/Dockerfile new file mode 100644 index 0000000000..65c581b4c9 --- /dev/null +++ b/src/aspnet/10.0/resolute-chiseled-extra/arm32v7/Dockerfile @@ -0,0 +1,25 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +# Retrieve ASP.NET Core +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz \ + aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:10.0.5-resolute-chiseled-extra-arm32v7 + +# ASP.NET Core version +ENV ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/src/aspnet/10.0/resolute-chiseled-extra/arm64v8/Dockerfile b/src/aspnet/10.0/resolute-chiseled-extra/arm64v8/Dockerfile new file mode 100644 index 0000000000..0fcd37850d --- /dev/null +++ b/src/aspnet/10.0/resolute-chiseled-extra/arm64v8/Dockerfile @@ -0,0 +1,25 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +# Retrieve ASP.NET Core +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz \ + aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:10.0.5-resolute-chiseled-extra-arm64v8 + +# ASP.NET Core version +ENV ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/src/aspnet/10.0/resolute-chiseled/amd64/Dockerfile b/src/aspnet/10.0/resolute-chiseled/amd64/Dockerfile new file mode 100644 index 0000000000..61b234d5be --- /dev/null +++ b/src/aspnet/10.0/resolute-chiseled/amd64/Dockerfile @@ -0,0 +1,25 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +# Retrieve ASP.NET Core +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz \ + aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:10.0.5-resolute-chiseled-amd64 + +# ASP.NET Core version +ENV ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/src/aspnet/10.0/resolute-chiseled/arm32v7/Dockerfile b/src/aspnet/10.0/resolute-chiseled/arm32v7/Dockerfile new file mode 100644 index 0000000000..691e1c9c92 --- /dev/null +++ b/src/aspnet/10.0/resolute-chiseled/arm32v7/Dockerfile @@ -0,0 +1,25 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +# Retrieve ASP.NET Core +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz \ + aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:10.0.5-resolute-chiseled-arm32v7 + +# ASP.NET Core version +ENV ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/src/aspnet/10.0/resolute-chiseled/arm64v8/Dockerfile b/src/aspnet/10.0/resolute-chiseled/arm64v8/Dockerfile new file mode 100644 index 0000000000..6b154dc2e6 --- /dev/null +++ b/src/aspnet/10.0/resolute-chiseled/arm64v8/Dockerfile @@ -0,0 +1,25 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +# Retrieve ASP.NET Core +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz \ + aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:10.0.5-resolute-chiseled-arm64v8 + +# ASP.NET Core version +ENV ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/src/aspnet/10.0/resolute/amd64/Dockerfile b/src/aspnet/10.0/resolute/amd64/Dockerfile new file mode 100644 index 0000000000..c19ff04116 --- /dev/null +++ b/src/aspnet/10.0/resolute/amd64/Dockerfile @@ -0,0 +1,25 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +# Retrieve ASP.NET Core +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz \ + aspnetcore-runtime-$aspnetcore_version-linux-x64.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:10.0.5-resolute-amd64 + +# ASP.NET Core version +ENV ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/src/aspnet/10.0/resolute/arm32v7/Dockerfile b/src/aspnet/10.0/resolute/arm32v7/Dockerfile new file mode 100644 index 0000000000..8373edad12 --- /dev/null +++ b/src/aspnet/10.0/resolute/arm32v7/Dockerfile @@ -0,0 +1,25 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +# Retrieve ASP.NET Core +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz \ + aspnetcore-runtime-$aspnetcore_version-linux-arm.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:10.0.5-resolute-arm32v7 + +# ASP.NET Core version +ENV ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/src/aspnet/10.0/resolute/arm64v8/Dockerfile b/src/aspnet/10.0/resolute/arm64v8/Dockerfile new file mode 100644 index 0000000000..275f8d68fd --- /dev/null +++ b/src/aspnet/10.0/resolute/arm64v8/Dockerfile @@ -0,0 +1,25 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +# Retrieve ASP.NET Core +RUN aspnetcore_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/aspnetcore/Runtime/$aspnetcore_version/aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz.sha512 \ + && sha512sum -c aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz \ + aspnetcore-runtime-$aspnetcore_version-linux-arm64.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:10.0.5-resolute-arm64v8 + +# ASP.NET Core version +ENV ASPNET_VERSION=10.0.5 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/src/runtime-deps/10.0/resolute-chiseled-extra/amd64/Dockerfile b/src/runtime-deps/10.0/resolute-chiseled-extra/amd64/Dockerfile new file mode 100644 index 0000000000..ed94b857c2 --- /dev/null +++ b/src/runtime-deps/10.0/resolute-chiseled-extra/amd64/Dockerfile @@ -0,0 +1,58 @@ +FROM amd64/buildpack-deps:resolute-curl AS chisel + +RUN apt-get update && apt-get install -y file + +RUN curl --fail --show-error --location --output chisel.tar.gz https://github.com/canonical/chisel/releases/download/v1.4.0/chisel_v1.4.0_linux_amd64.tar.gz \ + && chisel_sha384='e6d3210880eab61524dd83768278afffeb42ec49820b4263a2c5d9f5898c07ee3cbcb4699bae7878370c965b32527820' \ + && echo "$chisel_sha384 chisel.tar.gz" | sha384sum -c - \ + && tar --gzip --extract --no-same-owner --file chisel.tar.gz --directory /usr/bin/ \ + && rm chisel.tar.gz \ + && curl --fail --show-error --location --output /usr/bin/chisel-wrapper https://raw.githubusercontent.com/canonical/rocks-toolbox/v1.2.0/chisel-wrapper \ + && chmod 755 /usr/bin/chisel-wrapper + +RUN groupadd \ + --gid=1654 \ + app \ + && useradd --no-log-init \ + --uid=1654 \ + --gid=1654 \ + --shell /bin/false \ + app \ + && install --directory --mode 0755 --owner 1654 --group 1654 "/rootfs/home/app" \ + && mkdir --parents "/rootfs/etc" \ + && rootOrAppRegex='^\(root\|app\):' \ + && cat /etc/passwd | grep $rootOrAppRegex > "/rootfs/etc/passwd" \ + && cat /etc/group | grep $rootOrAppRegex > "/rootfs/etc/group" + +RUN mkdir --parents /rootfs/var/lib/dpkg/ \ + && chisel-wrapper --generate-dpkg-status /rootfs/var/lib/dpkg/status -- \ + --release ubuntu-26.04 --ignore=unstable --root /rootfs \ + base-files_base \ + base-files_chisel \ + base-files_release-info \ + ca-certificates_data \ + libc6_libs \ + libgcc-s1_libs \ + libicu78_libs \ + libssl3t64_libs \ + libstdc++6_libs \ + tzdata-legacy_zoneinfo \ + tzdata_zoneinfo + + +FROM scratch + +COPY --from=chisel /rootfs / + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true + +# Workaround for https://github.com/moby/moby/issues/38710 +COPY --from=chisel --chown=$APP_UID:$APP_UID /rootfs/home/app /home/app + +USER $APP_UID diff --git a/src/runtime-deps/10.0/resolute-chiseled-extra/arm32v7/Dockerfile b/src/runtime-deps/10.0/resolute-chiseled-extra/arm32v7/Dockerfile new file mode 100644 index 0000000000..6d479cd06e --- /dev/null +++ b/src/runtime-deps/10.0/resolute-chiseled-extra/arm32v7/Dockerfile @@ -0,0 +1,58 @@ +FROM arm32v7/buildpack-deps:resolute-curl AS chisel + +RUN apt-get update && apt-get install -y file + +RUN curl --fail --show-error --location --output chisel.tar.gz https://github.com/canonical/chisel/releases/download/v1.4.0/chisel_v1.4.0_linux_arm.tar.gz \ + && chisel_sha384='5edcb99020507325747b00314b85b6cf321238b99ebd5f3e6fe9f2315723c54f1b18fe066f5f9d55fe79bf1862d70997' \ + && echo "$chisel_sha384 chisel.tar.gz" | sha384sum -c - \ + && tar --gzip --extract --no-same-owner --file chisel.tar.gz --directory /usr/bin/ \ + && rm chisel.tar.gz \ + && curl --fail --show-error --location --output /usr/bin/chisel-wrapper https://raw.githubusercontent.com/canonical/rocks-toolbox/v1.2.0/chisel-wrapper \ + && chmod 755 /usr/bin/chisel-wrapper + +RUN groupadd \ + --gid=1654 \ + app \ + && useradd --no-log-init \ + --uid=1654 \ + --gid=1654 \ + --shell /bin/false \ + app \ + && install --directory --mode 0755 --owner 1654 --group 1654 "/rootfs/home/app" \ + && mkdir --parents "/rootfs/etc" \ + && rootOrAppRegex='^\(root\|app\):' \ + && cat /etc/passwd | grep $rootOrAppRegex > "/rootfs/etc/passwd" \ + && cat /etc/group | grep $rootOrAppRegex > "/rootfs/etc/group" + +RUN mkdir --parents /rootfs/var/lib/dpkg/ \ + && chisel-wrapper --generate-dpkg-status /rootfs/var/lib/dpkg/status -- \ + --release ubuntu-26.04 --ignore=unstable --root /rootfs \ + base-files_base \ + base-files_chisel \ + base-files_release-info \ + ca-certificates_data \ + libc6_libs \ + libgcc-s1_libs \ + libicu78_libs \ + libssl3t64_libs \ + libstdc++6_libs \ + tzdata-legacy_zoneinfo \ + tzdata_zoneinfo + + +FROM scratch + +COPY --from=chisel /rootfs / + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true + +# Workaround for https://github.com/moby/moby/issues/38710 +COPY --from=chisel --chown=$APP_UID:$APP_UID /rootfs/home/app /home/app + +USER $APP_UID diff --git a/src/runtime-deps/10.0/resolute-chiseled-extra/arm64v8/Dockerfile b/src/runtime-deps/10.0/resolute-chiseled-extra/arm64v8/Dockerfile new file mode 100644 index 0000000000..f4fadfae97 --- /dev/null +++ b/src/runtime-deps/10.0/resolute-chiseled-extra/arm64v8/Dockerfile @@ -0,0 +1,58 @@ +FROM arm64v8/buildpack-deps:resolute-curl AS chisel + +RUN apt-get update && apt-get install -y file + +RUN curl --fail --show-error --location --output chisel.tar.gz https://github.com/canonical/chisel/releases/download/v1.4.0/chisel_v1.4.0_linux_arm64.tar.gz \ + && chisel_sha384='bc2caf1fac6463982ff0770ae5e7aa51f37307d281c1ca56d3ef9068c30434b254dc72739f7d2689a2e7975923eff1ff' \ + && echo "$chisel_sha384 chisel.tar.gz" | sha384sum -c - \ + && tar --gzip --extract --no-same-owner --file chisel.tar.gz --directory /usr/bin/ \ + && rm chisel.tar.gz \ + && curl --fail --show-error --location --output /usr/bin/chisel-wrapper https://raw.githubusercontent.com/canonical/rocks-toolbox/v1.2.0/chisel-wrapper \ + && chmod 755 /usr/bin/chisel-wrapper + +RUN groupadd \ + --gid=1654 \ + app \ + && useradd --no-log-init \ + --uid=1654 \ + --gid=1654 \ + --shell /bin/false \ + app \ + && install --directory --mode 0755 --owner 1654 --group 1654 "/rootfs/home/app" \ + && mkdir --parents "/rootfs/etc" \ + && rootOrAppRegex='^\(root\|app\):' \ + && cat /etc/passwd | grep $rootOrAppRegex > "/rootfs/etc/passwd" \ + && cat /etc/group | grep $rootOrAppRegex > "/rootfs/etc/group" + +RUN mkdir --parents /rootfs/var/lib/dpkg/ \ + && chisel-wrapper --generate-dpkg-status /rootfs/var/lib/dpkg/status -- \ + --release ubuntu-26.04 --ignore=unstable --root /rootfs \ + base-files_base \ + base-files_chisel \ + base-files_release-info \ + ca-certificates_data \ + libc6_libs \ + libgcc-s1_libs \ + libicu78_libs \ + libssl3t64_libs \ + libstdc++6_libs \ + tzdata-legacy_zoneinfo \ + tzdata_zoneinfo + + +FROM scratch + +COPY --from=chisel /rootfs / + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true + +# Workaround for https://github.com/moby/moby/issues/38710 +COPY --from=chisel --chown=$APP_UID:$APP_UID /rootfs/home/app /home/app + +USER $APP_UID diff --git a/src/runtime-deps/10.0/resolute-chiseled/amd64/Dockerfile b/src/runtime-deps/10.0/resolute-chiseled/amd64/Dockerfile new file mode 100644 index 0000000000..28afbaad16 --- /dev/null +++ b/src/runtime-deps/10.0/resolute-chiseled/amd64/Dockerfile @@ -0,0 +1,57 @@ +FROM amd64/buildpack-deps:resolute-curl AS chisel + +RUN apt-get update && apt-get install -y file + +RUN curl --fail --show-error --location --output chisel.tar.gz https://github.com/canonical/chisel/releases/download/v1.4.0/chisel_v1.4.0_linux_amd64.tar.gz \ + && chisel_sha384='e6d3210880eab61524dd83768278afffeb42ec49820b4263a2c5d9f5898c07ee3cbcb4699bae7878370c965b32527820' \ + && echo "$chisel_sha384 chisel.tar.gz" | sha384sum -c - \ + && tar --gzip --extract --no-same-owner --file chisel.tar.gz --directory /usr/bin/ \ + && rm chisel.tar.gz \ + && curl --fail --show-error --location --output /usr/bin/chisel-wrapper https://raw.githubusercontent.com/canonical/rocks-toolbox/v1.2.0/chisel-wrapper \ + && chmod 755 /usr/bin/chisel-wrapper + +RUN groupadd \ + --gid=1654 \ + app \ + && useradd --no-log-init \ + --uid=1654 \ + --gid=1654 \ + --shell /bin/false \ + app \ + && install --directory --mode 0755 --owner 1654 --group 1654 "/rootfs/home/app" \ + && mkdir --parents "/rootfs/etc" \ + && rootOrAppRegex='^\(root\|app\):' \ + && cat /etc/passwd | grep $rootOrAppRegex > "/rootfs/etc/passwd" \ + && cat /etc/group | grep $rootOrAppRegex > "/rootfs/etc/group" + +RUN mkdir --parents /rootfs/var/lib/dpkg/ \ + && chisel-wrapper --generate-dpkg-status /rootfs/var/lib/dpkg/status -- \ + --release ubuntu-26.04 --ignore=unstable --root /rootfs \ + base-files_base \ + base-files_chisel \ + base-files_release-info \ + ca-certificates_data \ + libc6_libs \ + libgcc-s1_libs \ + libssl3t64_libs \ + libstdc++6_libs + + +FROM scratch + +COPY --from=chisel /rootfs / + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true \ + # Set the invariant mode since ICU package isn't included (see https://github.com/dotnet/announcements/issues/20) + DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true + +# Workaround for https://github.com/moby/moby/issues/38710 +COPY --from=chisel --chown=$APP_UID:$APP_UID /rootfs/home/app /home/app + +USER $APP_UID diff --git a/src/runtime-deps/10.0/resolute-chiseled/arm32v7/Dockerfile b/src/runtime-deps/10.0/resolute-chiseled/arm32v7/Dockerfile new file mode 100644 index 0000000000..52af504cac --- /dev/null +++ b/src/runtime-deps/10.0/resolute-chiseled/arm32v7/Dockerfile @@ -0,0 +1,57 @@ +FROM arm32v7/buildpack-deps:resolute-curl AS chisel + +RUN apt-get update && apt-get install -y file + +RUN curl --fail --show-error --location --output chisel.tar.gz https://github.com/canonical/chisel/releases/download/v1.4.0/chisel_v1.4.0_linux_arm.tar.gz \ + && chisel_sha384='5edcb99020507325747b00314b85b6cf321238b99ebd5f3e6fe9f2315723c54f1b18fe066f5f9d55fe79bf1862d70997' \ + && echo "$chisel_sha384 chisel.tar.gz" | sha384sum -c - \ + && tar --gzip --extract --no-same-owner --file chisel.tar.gz --directory /usr/bin/ \ + && rm chisel.tar.gz \ + && curl --fail --show-error --location --output /usr/bin/chisel-wrapper https://raw.githubusercontent.com/canonical/rocks-toolbox/v1.2.0/chisel-wrapper \ + && chmod 755 /usr/bin/chisel-wrapper + +RUN groupadd \ + --gid=1654 \ + app \ + && useradd --no-log-init \ + --uid=1654 \ + --gid=1654 \ + --shell /bin/false \ + app \ + && install --directory --mode 0755 --owner 1654 --group 1654 "/rootfs/home/app" \ + && mkdir --parents "/rootfs/etc" \ + && rootOrAppRegex='^\(root\|app\):' \ + && cat /etc/passwd | grep $rootOrAppRegex > "/rootfs/etc/passwd" \ + && cat /etc/group | grep $rootOrAppRegex > "/rootfs/etc/group" + +RUN mkdir --parents /rootfs/var/lib/dpkg/ \ + && chisel-wrapper --generate-dpkg-status /rootfs/var/lib/dpkg/status -- \ + --release ubuntu-26.04 --ignore=unstable --root /rootfs \ + base-files_base \ + base-files_chisel \ + base-files_release-info \ + ca-certificates_data \ + libc6_libs \ + libgcc-s1_libs \ + libssl3t64_libs \ + libstdc++6_libs + + +FROM scratch + +COPY --from=chisel /rootfs / + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true \ + # Set the invariant mode since ICU package isn't included (see https://github.com/dotnet/announcements/issues/20) + DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true + +# Workaround for https://github.com/moby/moby/issues/38710 +COPY --from=chisel --chown=$APP_UID:$APP_UID /rootfs/home/app /home/app + +USER $APP_UID diff --git a/src/runtime-deps/10.0/resolute-chiseled/arm64v8/Dockerfile b/src/runtime-deps/10.0/resolute-chiseled/arm64v8/Dockerfile new file mode 100644 index 0000000000..056a58c8af --- /dev/null +++ b/src/runtime-deps/10.0/resolute-chiseled/arm64v8/Dockerfile @@ -0,0 +1,57 @@ +FROM arm64v8/buildpack-deps:resolute-curl AS chisel + +RUN apt-get update && apt-get install -y file + +RUN curl --fail --show-error --location --output chisel.tar.gz https://github.com/canonical/chisel/releases/download/v1.4.0/chisel_v1.4.0_linux_arm64.tar.gz \ + && chisel_sha384='bc2caf1fac6463982ff0770ae5e7aa51f37307d281c1ca56d3ef9068c30434b254dc72739f7d2689a2e7975923eff1ff' \ + && echo "$chisel_sha384 chisel.tar.gz" | sha384sum -c - \ + && tar --gzip --extract --no-same-owner --file chisel.tar.gz --directory /usr/bin/ \ + && rm chisel.tar.gz \ + && curl --fail --show-error --location --output /usr/bin/chisel-wrapper https://raw.githubusercontent.com/canonical/rocks-toolbox/v1.2.0/chisel-wrapper \ + && chmod 755 /usr/bin/chisel-wrapper + +RUN groupadd \ + --gid=1654 \ + app \ + && useradd --no-log-init \ + --uid=1654 \ + --gid=1654 \ + --shell /bin/false \ + app \ + && install --directory --mode 0755 --owner 1654 --group 1654 "/rootfs/home/app" \ + && mkdir --parents "/rootfs/etc" \ + && rootOrAppRegex='^\(root\|app\):' \ + && cat /etc/passwd | grep $rootOrAppRegex > "/rootfs/etc/passwd" \ + && cat /etc/group | grep $rootOrAppRegex > "/rootfs/etc/group" + +RUN mkdir --parents /rootfs/var/lib/dpkg/ \ + && chisel-wrapper --generate-dpkg-status /rootfs/var/lib/dpkg/status -- \ + --release ubuntu-26.04 --ignore=unstable --root /rootfs \ + base-files_base \ + base-files_chisel \ + base-files_release-info \ + ca-certificates_data \ + libc6_libs \ + libgcc-s1_libs \ + libssl3t64_libs \ + libstdc++6_libs + + +FROM scratch + +COPY --from=chisel /rootfs / + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true \ + # Set the invariant mode since ICU package isn't included (see https://github.com/dotnet/announcements/issues/20) + DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true + +# Workaround for https://github.com/moby/moby/issues/38710 +COPY --from=chisel --chown=$APP_UID:$APP_UID /rootfs/home/app /home/app + +USER $APP_UID diff --git a/src/runtime-deps/10.0/resolute/amd64/Dockerfile b/src/runtime-deps/10.0/resolute/amd64/Dockerfile new file mode 100644 index 0000000000..453e0c2bab --- /dev/null +++ b/src/runtime-deps/10.0/resolute/amd64/Dockerfile @@ -0,0 +1,32 @@ +FROM ubuntu.azurecr.io/ubuntu:resolute + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + ca-certificates \ + \ + # .NET dependencies + libc6 \ + libgcc-s1 \ + libicu78 \ + libssl3t64 \ + libstdc++6 \ + tzdata \ + && rm -rf /var/lib/apt/lists/* + +# Create a non-root user and group +RUN groupadd \ + --gid=$APP_UID \ + app \ + && useradd --no-log-init \ + --uid=$APP_UID \ + --gid=$APP_UID \ + --create-home \ + app diff --git a/src/runtime-deps/10.0/resolute/arm32v7/Dockerfile b/src/runtime-deps/10.0/resolute/arm32v7/Dockerfile new file mode 100644 index 0000000000..453e0c2bab --- /dev/null +++ b/src/runtime-deps/10.0/resolute/arm32v7/Dockerfile @@ -0,0 +1,32 @@ +FROM ubuntu.azurecr.io/ubuntu:resolute + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + ca-certificates \ + \ + # .NET dependencies + libc6 \ + libgcc-s1 \ + libicu78 \ + libssl3t64 \ + libstdc++6 \ + tzdata \ + && rm -rf /var/lib/apt/lists/* + +# Create a non-root user and group +RUN groupadd \ + --gid=$APP_UID \ + app \ + && useradd --no-log-init \ + --uid=$APP_UID \ + --gid=$APP_UID \ + --create-home \ + app diff --git a/src/runtime-deps/10.0/resolute/arm64v8/Dockerfile b/src/runtime-deps/10.0/resolute/arm64v8/Dockerfile new file mode 100644 index 0000000000..453e0c2bab --- /dev/null +++ b/src/runtime-deps/10.0/resolute/arm64v8/Dockerfile @@ -0,0 +1,32 @@ +FROM ubuntu.azurecr.io/ubuntu:resolute + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + ca-certificates \ + \ + # .NET dependencies + libc6 \ + libgcc-s1 \ + libicu78 \ + libssl3t64 \ + libstdc++6 \ + tzdata \ + && rm -rf /var/lib/apt/lists/* + +# Create a non-root user and group +RUN groupadd \ + --gid=$APP_UID \ + app \ + && useradd --no-log-init \ + --uid=$APP_UID \ + --gid=$APP_UID \ + --create-home \ + app diff --git a/src/runtime/10.0/resolute-chiseled-extra/amd64/Dockerfile b/src/runtime/10.0/resolute-chiseled-extra/amd64/Dockerfile new file mode 100644 index 0000000000..911c494f65 --- /dev/null +++ b/src/runtime/10.0/resolute-chiseled-extra/amd64/Dockerfile @@ -0,0 +1,32 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +# Retrieve .NET Runtime +RUN dotnet_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-x64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-x64.tar.gz.sha512 \ + && sha512sum -c dotnet-runtime-$dotnet_version-linux-x64.tar.gz.sha512 \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_version-linux-x64.tar.gz --directory /usr/share/dotnet \ + && rm \ + dotnet-runtime-$dotnet_version-linux-x64.tar.gz \ + dotnet-runtime-$dotnet_version-linux-x64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# .NET runtime image +FROM $REPO:10.0.5-resolute-chiseled-amd64 + +# .NET Runtime version +ENV DOTNET_VERSION=10.0.5 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/src/runtime/10.0/resolute-chiseled-extra/arm32v7/Dockerfile b/src/runtime/10.0/resolute-chiseled-extra/arm32v7/Dockerfile new file mode 100644 index 0000000000..917c626957 --- /dev/null +++ b/src/runtime/10.0/resolute-chiseled-extra/arm32v7/Dockerfile @@ -0,0 +1,32 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +# Retrieve .NET Runtime +RUN dotnet_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm.tar.gz.sha512 \ + && sha512sum -c dotnet-runtime-$dotnet_version-linux-arm.tar.gz.sha512 \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_version-linux-arm.tar.gz --directory /usr/share/dotnet \ + && rm \ + dotnet-runtime-$dotnet_version-linux-arm.tar.gz \ + dotnet-runtime-$dotnet_version-linux-arm.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# .NET runtime image +FROM $REPO:10.0.5-resolute-chiseled-arm32v7 + +# .NET Runtime version +ENV DOTNET_VERSION=10.0.5 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/src/runtime/10.0/resolute-chiseled-extra/arm64v8/Dockerfile b/src/runtime/10.0/resolute-chiseled-extra/arm64v8/Dockerfile new file mode 100644 index 0000000000..07c442fccb --- /dev/null +++ b/src/runtime/10.0/resolute-chiseled-extra/arm64v8/Dockerfile @@ -0,0 +1,32 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +# Retrieve .NET Runtime +RUN dotnet_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm64.tar.gz.sha512 \ + && sha512sum -c dotnet-runtime-$dotnet_version-linux-arm64.tar.gz.sha512 \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_version-linux-arm64.tar.gz --directory /usr/share/dotnet \ + && rm \ + dotnet-runtime-$dotnet_version-linux-arm64.tar.gz \ + dotnet-runtime-$dotnet_version-linux-arm64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# .NET runtime image +FROM $REPO:10.0.5-resolute-chiseled-arm64v8 + +# .NET Runtime version +ENV DOTNET_VERSION=10.0.5 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/src/runtime/10.0/resolute-chiseled/amd64/Dockerfile b/src/runtime/10.0/resolute-chiseled/amd64/Dockerfile new file mode 100644 index 0000000000..911c494f65 --- /dev/null +++ b/src/runtime/10.0/resolute-chiseled/amd64/Dockerfile @@ -0,0 +1,32 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +# Retrieve .NET Runtime +RUN dotnet_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-x64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-x64.tar.gz.sha512 \ + && sha512sum -c dotnet-runtime-$dotnet_version-linux-x64.tar.gz.sha512 \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_version-linux-x64.tar.gz --directory /usr/share/dotnet \ + && rm \ + dotnet-runtime-$dotnet_version-linux-x64.tar.gz \ + dotnet-runtime-$dotnet_version-linux-x64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# .NET runtime image +FROM $REPO:10.0.5-resolute-chiseled-amd64 + +# .NET Runtime version +ENV DOTNET_VERSION=10.0.5 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/src/runtime/10.0/resolute-chiseled/arm32v7/Dockerfile b/src/runtime/10.0/resolute-chiseled/arm32v7/Dockerfile new file mode 100644 index 0000000000..917c626957 --- /dev/null +++ b/src/runtime/10.0/resolute-chiseled/arm32v7/Dockerfile @@ -0,0 +1,32 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +# Retrieve .NET Runtime +RUN dotnet_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm.tar.gz.sha512 \ + && sha512sum -c dotnet-runtime-$dotnet_version-linux-arm.tar.gz.sha512 \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_version-linux-arm.tar.gz --directory /usr/share/dotnet \ + && rm \ + dotnet-runtime-$dotnet_version-linux-arm.tar.gz \ + dotnet-runtime-$dotnet_version-linux-arm.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# .NET runtime image +FROM $REPO:10.0.5-resolute-chiseled-arm32v7 + +# .NET Runtime version +ENV DOTNET_VERSION=10.0.5 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/src/runtime/10.0/resolute-chiseled/arm64v8/Dockerfile b/src/runtime/10.0/resolute-chiseled/arm64v8/Dockerfile new file mode 100644 index 0000000000..07c442fccb --- /dev/null +++ b/src/runtime/10.0/resolute-chiseled/arm64v8/Dockerfile @@ -0,0 +1,32 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +# Retrieve .NET Runtime +RUN dotnet_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm64.tar.gz.sha512 \ + && sha512sum -c dotnet-runtime-$dotnet_version-linux-arm64.tar.gz.sha512 \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_version-linux-arm64.tar.gz --directory /usr/share/dotnet \ + && rm \ + dotnet-runtime-$dotnet_version-linux-arm64.tar.gz \ + dotnet-runtime-$dotnet_version-linux-arm64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# .NET runtime image +FROM $REPO:10.0.5-resolute-chiseled-arm64v8 + +# .NET Runtime version +ENV DOTNET_VERSION=10.0.5 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/src/runtime/10.0/resolute/amd64/Dockerfile b/src/runtime/10.0/resolute/amd64/Dockerfile new file mode 100644 index 0000000000..c363b8bbb1 --- /dev/null +++ b/src/runtime/10.0/resolute/amd64/Dockerfile @@ -0,0 +1,27 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +# Retrieve .NET Runtime +RUN dotnet_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-x64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-x64.tar.gz.sha512 \ + && sha512sum -c dotnet-runtime-$dotnet_version-linux-x64.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_version-linux-x64.tar.gz --directory /dotnet \ + && rm \ + dotnet-runtime-$dotnet_version-linux-x64.tar.gz \ + dotnet-runtime-$dotnet_version-linux-x64.tar.gz.sha512 + + +# .NET runtime image +FROM $REPO:10.0.5-resolute-amd64 + +# .NET Runtime version +ENV DOTNET_VERSION=10.0.5 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] + +RUN ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet diff --git a/src/runtime/10.0/resolute/arm32v7/Dockerfile b/src/runtime/10.0/resolute/arm32v7/Dockerfile new file mode 100644 index 0000000000..35846c1738 --- /dev/null +++ b/src/runtime/10.0/resolute/arm32v7/Dockerfile @@ -0,0 +1,27 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +# Retrieve .NET Runtime +RUN dotnet_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm.tar.gz.sha512 \ + && sha512sum -c dotnet-runtime-$dotnet_version-linux-arm.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_version-linux-arm.tar.gz --directory /dotnet \ + && rm \ + dotnet-runtime-$dotnet_version-linux-arm.tar.gz \ + dotnet-runtime-$dotnet_version-linux-arm.tar.gz.sha512 + + +# .NET runtime image +FROM $REPO:10.0.5-resolute-arm32v7 + +# .NET Runtime version +ENV DOTNET_VERSION=10.0.5 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] + +RUN ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet diff --git a/src/runtime/10.0/resolute/arm64v8/Dockerfile b/src/runtime/10.0/resolute/arm64v8/Dockerfile new file mode 100644 index 0000000000..83a4643b85 --- /dev/null +++ b/src/runtime/10.0/resolute/arm64v8/Dockerfile @@ -0,0 +1,27 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +# Retrieve .NET Runtime +RUN dotnet_version=10.0.5 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Runtime/$dotnet_version/dotnet-runtime-$dotnet_version-linux-arm64.tar.gz.sha512 \ + && sha512sum -c dotnet-runtime-$dotnet_version-linux-arm64.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_version-linux-arm64.tar.gz --directory /dotnet \ + && rm \ + dotnet-runtime-$dotnet_version-linux-arm64.tar.gz \ + dotnet-runtime-$dotnet_version-linux-arm64.tar.gz.sha512 + + +# .NET runtime image +FROM $REPO:10.0.5-resolute-arm64v8 + +# .NET Runtime version +ENV DOTNET_VERSION=10.0.5 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] + +RUN ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet diff --git a/src/sdk/10.0/resolute-aot/amd64/Dockerfile b/src/sdk/10.0/resolute-aot/amd64/Dockerfile new file mode 100644 index 0000000000..aa00907a28 --- /dev/null +++ b/src/sdk/10.0/resolute-aot/amd64/Dockerfile @@ -0,0 +1,10 @@ +# syntax=docker/dockerfile:1 +ARG REPO=mcr.microsoft.com/dotnet/sdk +FROM $REPO:10.0.201-resolute-amd64 + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + clang \ + llvm \ + zlib1g-dev \ + && rm -rf /var/lib/apt/lists/* diff --git a/src/sdk/10.0/resolute-aot/arm64v8/Dockerfile b/src/sdk/10.0/resolute-aot/arm64v8/Dockerfile new file mode 100644 index 0000000000..086b9560c4 --- /dev/null +++ b/src/sdk/10.0/resolute-aot/arm64v8/Dockerfile @@ -0,0 +1,10 @@ +# syntax=docker/dockerfile:1 +ARG REPO=mcr.microsoft.com/dotnet/sdk +FROM $REPO:10.0.201-resolute-arm64v8 + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + clang \ + llvm \ + zlib1g-dev \ + && rm -rf /var/lib/apt/lists/* diff --git a/src/sdk/10.0/resolute/amd64/Dockerfile b/src/sdk/10.0/resolute/amd64/Dockerfile new file mode 100644 index 0000000000..7e5bbd95d5 --- /dev/null +++ b/src/sdk/10.0/resolute/amd64/Dockerfile @@ -0,0 +1,63 @@ +ARG REPO=mcr.microsoft.com/dotnet/aspnet +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +# Install .NET SDK +RUN dotnet_sdk_version=10.0.201 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Sdk/$dotnet_sdk_version/dotnet-sdk-$dotnet_sdk_version-linux-x64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Sdk/$dotnet_sdk_version/dotnet-sdk-$dotnet_sdk_version-linux-x64.tar.gz.sha512 \ + && sha512sum -c dotnet-sdk-$dotnet_sdk_version-linux-x64.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-sdk-$dotnet_sdk_version-linux-x64.tar.gz --directory /dotnet ./dnx ./packs ./sdk ./sdk-manifests ./templates ./LICENSE.txt ./ThirdPartyNotices.txt \ + && rm \ + dotnet-sdk-$dotnet_sdk_version-linux-x64.tar.gz \ + dotnet-sdk-$dotnet_sdk_version-linux-x64.tar.gz.sha512 + + +# .NET SDK image +FROM $REPO:10.0.5-resolute-amd64 + +ENV \ + # Do not generate certificate + DOTNET_GENERATE_ASPNET_CERTIFICATE=false \ + # Do not show first run text + DOTNET_NOLOGO=true \ + # SDK version + DOTNET_SDK_VERSION=10.0.201 \ + # Enable correct mode for dotnet watch (only mode supported in a container) + DOTNET_USE_POLLING_FILE_WATCHER=true \ + # Skip extraction of XML docs - generally not useful within an image/container - helps performance + NUGET_XMLDOC_MODE=skip \ + # PowerShell telemetry for docker image usage + POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-DotnetSDK-Ubuntu-26.04 \ + # Workaround for https://github.com/PowerShell/PowerShell/issues/20685 + DOTNET_ROLL_FORWARD=Major + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + curl \ + git \ + libatomic1 \ + wget \ + && rm -rf /var/lib/apt/lists/* + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] + +RUN ln -s /usr/share/dotnet/dnx /usr/bin/dnx \ + # Trigger first run experience by running arbitrary cmd + && dotnet help + +# Install PowerShell global tool +RUN powershell_version=7.6.0-preview.4 \ + && curl --fail --show-error --location --output PowerShell.Linux.x64.$powershell_version.nupkg https://powershellinfraartifacts-gkhedzdeaghdezhr.z01.azurefd.net/tool/$powershell_version/PowerShell.Linux.x64.$powershell_version.nupkg \ + && powershell_sha512='92ba2a8344f13d1c640f73d61488a582bae3ea82e4d00aad02efece3475f852855fb6f8ac37f72b4a14cdc1975af9f253d59ce72e36f3653e6b1ee87dc273f8f' \ + && echo "$powershell_sha512 PowerShell.Linux.x64.$powershell_version.nupkg" | sha512sum -c - \ + && mkdir --parents /usr/share/powershell \ + && dotnet tool install --add-source / --tool-path /usr/share/powershell --version $powershell_version PowerShell.Linux.x64 \ + && dotnet nuget locals all --clear \ + && rm PowerShell.Linux.x64.$powershell_version.nupkg \ + && ln -s /usr/share/powershell/pwsh /usr/bin/pwsh \ + && chmod 755 /usr/share/powershell/pwsh \ + # To reduce image size, remove the copy nupkg that nuget keeps. + && find /usr/share/powershell -print | grep -i '.*[.]nupkg$' | xargs rm diff --git a/src/sdk/10.0/resolute/arm32v7/Dockerfile b/src/sdk/10.0/resolute/arm32v7/Dockerfile new file mode 100644 index 0000000000..806b644371 --- /dev/null +++ b/src/sdk/10.0/resolute/arm32v7/Dockerfile @@ -0,0 +1,63 @@ +ARG REPO=mcr.microsoft.com/dotnet/aspnet +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +# Install .NET SDK +RUN dotnet_sdk_version=10.0.201 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Sdk/$dotnet_sdk_version/dotnet-sdk-$dotnet_sdk_version-linux-arm.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Sdk/$dotnet_sdk_version/dotnet-sdk-$dotnet_sdk_version-linux-arm.tar.gz.sha512 \ + && sha512sum -c dotnet-sdk-$dotnet_sdk_version-linux-arm.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-sdk-$dotnet_sdk_version-linux-arm.tar.gz --directory /dotnet ./dnx ./packs ./sdk ./sdk-manifests ./templates ./LICENSE.txt ./ThirdPartyNotices.txt \ + && rm \ + dotnet-sdk-$dotnet_sdk_version-linux-arm.tar.gz \ + dotnet-sdk-$dotnet_sdk_version-linux-arm.tar.gz.sha512 + + +# .NET SDK image +FROM $REPO:10.0.5-resolute-arm32v7 + +ENV \ + # Do not generate certificate + DOTNET_GENERATE_ASPNET_CERTIFICATE=false \ + # Do not show first run text + DOTNET_NOLOGO=true \ + # SDK version + DOTNET_SDK_VERSION=10.0.201 \ + # Enable correct mode for dotnet watch (only mode supported in a container) + DOTNET_USE_POLLING_FILE_WATCHER=true \ + # Skip extraction of XML docs - generally not useful within an image/container - helps performance + NUGET_XMLDOC_MODE=skip \ + # PowerShell telemetry for docker image usage + POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-DotnetSDK-Ubuntu-26.04-arm32 \ + # Workaround for https://github.com/PowerShell/PowerShell/issues/20685 + DOTNET_ROLL_FORWARD=Major + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + curl \ + git \ + libatomic1 \ + wget \ + && rm -rf /var/lib/apt/lists/* + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] + +RUN ln -s /usr/share/dotnet/dnx /usr/bin/dnx \ + # Trigger first run experience by running arbitrary cmd + && dotnet help + +# Install PowerShell global tool +RUN powershell_version=7.6.0-preview.4 \ + && curl --fail --show-error --location --output PowerShell.Linux.arm32.$powershell_version.nupkg https://powershellinfraartifacts-gkhedzdeaghdezhr.z01.azurefd.net/tool/$powershell_version/PowerShell.Linux.arm32.$powershell_version.nupkg \ + && powershell_sha512='32e410abb44dcd6ba943fa8c7367a88a6c0c4e3ac0a67756fb5919139c980f1a3d66a3b055e6b2292a154c9eede22003b0b85605c101e3e6fa89fd71b7d44a7f' \ + && echo "$powershell_sha512 PowerShell.Linux.arm32.$powershell_version.nupkg" | sha512sum -c - \ + && mkdir --parents /usr/share/powershell \ + && dotnet tool install --add-source / --tool-path /usr/share/powershell --version $powershell_version PowerShell.Linux.arm32 \ + && dotnet nuget locals all --clear \ + && rm PowerShell.Linux.arm32.$powershell_version.nupkg \ + && ln -s /usr/share/powershell/pwsh /usr/bin/pwsh \ + && chmod 755 /usr/share/powershell/pwsh \ + # To reduce image size, remove the copy nupkg that nuget keeps. + && find /usr/share/powershell -print | grep -i '.*[.]nupkg$' | xargs rm diff --git a/src/sdk/10.0/resolute/arm64v8/Dockerfile b/src/sdk/10.0/resolute/arm64v8/Dockerfile new file mode 100644 index 0000000000..432a8148ec --- /dev/null +++ b/src/sdk/10.0/resolute/arm64v8/Dockerfile @@ -0,0 +1,63 @@ +ARG REPO=mcr.microsoft.com/dotnet/aspnet +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +# Install .NET SDK +RUN dotnet_sdk_version=10.0.201 \ + && curl --fail --show-error --location \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Sdk/$dotnet_sdk_version/dotnet-sdk-$dotnet_sdk_version-linux-arm64.tar.gz \ + --remote-name https://builds.dotnet.microsoft.com/dotnet/Sdk/$dotnet_sdk_version/dotnet-sdk-$dotnet_sdk_version-linux-arm64.tar.gz.sha512 \ + && sha512sum -c dotnet-sdk-$dotnet_sdk_version-linux-arm64.tar.gz.sha512 \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-sdk-$dotnet_sdk_version-linux-arm64.tar.gz --directory /dotnet ./dnx ./packs ./sdk ./sdk-manifests ./templates ./LICENSE.txt ./ThirdPartyNotices.txt \ + && rm \ + dotnet-sdk-$dotnet_sdk_version-linux-arm64.tar.gz \ + dotnet-sdk-$dotnet_sdk_version-linux-arm64.tar.gz.sha512 + + +# .NET SDK image +FROM $REPO:10.0.5-resolute-arm64v8 + +ENV \ + # Do not generate certificate + DOTNET_GENERATE_ASPNET_CERTIFICATE=false \ + # Do not show first run text + DOTNET_NOLOGO=true \ + # SDK version + DOTNET_SDK_VERSION=10.0.201 \ + # Enable correct mode for dotnet watch (only mode supported in a container) + DOTNET_USE_POLLING_FILE_WATCHER=true \ + # Skip extraction of XML docs - generally not useful within an image/container - helps performance + NUGET_XMLDOC_MODE=skip \ + # PowerShell telemetry for docker image usage + POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-DotnetSDK-Ubuntu-26.04-arm64 \ + # Workaround for https://github.com/PowerShell/PowerShell/issues/20685 + DOTNET_ROLL_FORWARD=Major + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + curl \ + git \ + libatomic1 \ + wget \ + && rm -rf /var/lib/apt/lists/* + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] + +RUN ln -s /usr/share/dotnet/dnx /usr/bin/dnx \ + # Trigger first run experience by running arbitrary cmd + && dotnet help + +# Install PowerShell global tool +RUN powershell_version=7.6.0-preview.4 \ + && curl --fail --show-error --location --output PowerShell.Linux.arm64.$powershell_version.nupkg https://powershellinfraartifacts-gkhedzdeaghdezhr.z01.azurefd.net/tool/$powershell_version/PowerShell.Linux.arm64.$powershell_version.nupkg \ + && powershell_sha512='265519a89209f8c0c6c736f3a0d92d97468ee5ddfc245c9ed24ec8ebe13826f15b6d3a879ce6e4274c17091d38811c91b2e5acf8ec4d2202d9b0d1176a28c710' \ + && echo "$powershell_sha512 PowerShell.Linux.arm64.$powershell_version.nupkg" | sha512sum -c - \ + && mkdir --parents /usr/share/powershell \ + && dotnet tool install --add-source / --tool-path /usr/share/powershell --version $powershell_version PowerShell.Linux.arm64 \ + && dotnet nuget locals all --clear \ + && rm PowerShell.Linux.arm64.$powershell_version.nupkg \ + && ln -s /usr/share/powershell/pwsh /usr/bin/pwsh \ + && chmod 755 /usr/share/powershell/pwsh \ + # To reduce image size, remove the copy nupkg that nuget keeps. + && find /usr/share/powershell -print | grep -i '.*[.]nupkg$' | xargs rm diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..a25c019f45 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-amd64-Dockerfile.approved.txt @@ -0,0 +1,28 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Core +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz.sha512) aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz \ + aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:0.0.0-resolute-amd64 + +# ASP.NET Core version +ENV ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-arm32v7-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-arm32v7-Dockerfile.approved.txt new file mode 100644 index 0000000000..5d7a293c37 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-arm32v7-Dockerfile.approved.txt @@ -0,0 +1,28 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Core +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz.sha512) aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz \ + aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:0.0.0-resolute-arm32v7 + +# ASP.NET Core version +ENV ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..24a1922c12 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,28 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Core +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz.sha512) aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz \ + aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:0.0.0-resolute-arm64v8 + +# ASP.NET Core version +ENV ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..2a5258edfb --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-amd64-Dockerfile.approved.txt @@ -0,0 +1,28 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Core +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz.sha512) aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz \ + aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:0.0.0-resolute-chiseled-amd64 + +# ASP.NET Core version +ENV ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-arm32v7-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-arm32v7-Dockerfile.approved.txt new file mode 100644 index 0000000000..12c7a85e27 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-arm32v7-Dockerfile.approved.txt @@ -0,0 +1,28 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Core +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz.sha512) aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz \ + aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:0.0.0-resolute-chiseled-arm32v7 + +# ASP.NET Core version +ENV ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..d71568f328 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,28 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Core +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz.sha512) aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz \ + aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:0.0.0-resolute-chiseled-arm64v8 + +# ASP.NET Core version +ENV ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..a57a47f574 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-amd64-Dockerfile.approved.txt @@ -0,0 +1,38 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Composite Runtime +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz.sha512) aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz" | sha512sum -c - \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz --directory /usr/share/dotnet \ + && rm \ + aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz \ + aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# ASP.NET Composite Image +FROM $REPO:0.0.0-resolute-chiseled-amd64 + +ENV \ + # .NET Runtime version + DOTNET_VERSION=0.0.0 \ + # ASP.NET Core version + ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-arm32v7-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-arm32v7-Dockerfile.approved.txt new file mode 100644 index 0000000000..08ee885dbb --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-arm32v7-Dockerfile.approved.txt @@ -0,0 +1,38 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Composite Runtime +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz.sha512) aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz" | sha512sum -c - \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz --directory /usr/share/dotnet \ + && rm \ + aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz \ + aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# ASP.NET Composite Image +FROM $REPO:0.0.0-resolute-chiseled-arm32v7 + +ENV \ + # .NET Runtime version + DOTNET_VERSION=0.0.0 \ + # ASP.NET Core version + ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..ab0eec142d --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,38 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Composite Runtime +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz.sha512) aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz" | sha512sum -c - \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz --directory /usr/share/dotnet \ + && rm \ + aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz \ + aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# ASP.NET Composite Image +FROM $REPO:0.0.0-resolute-chiseled-arm64v8 + +ENV \ + # .NET Runtime version + DOTNET_VERSION=0.0.0 \ + # ASP.NET Core version + ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-extra-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-extra-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..a3c26db4fd --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-extra-amd64-Dockerfile.approved.txt @@ -0,0 +1,38 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Composite Runtime +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz.sha512) aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz" | sha512sum -c - \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz --directory /usr/share/dotnet \ + && rm \ + aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz \ + aspnetcore-runtime-composite-$aspnetcore_build_version-linux-x64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# ASP.NET Composite Image +FROM $REPO:0.0.0-resolute-chiseled-extra-amd64 + +ENV \ + # .NET Runtime version + DOTNET_VERSION=0.0.0 \ + # ASP.NET Core version + ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-extra-arm32v7-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-extra-arm32v7-Dockerfile.approved.txt new file mode 100644 index 0000000000..eb90b98b4b --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-extra-arm32v7-Dockerfile.approved.txt @@ -0,0 +1,38 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Composite Runtime +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz.sha512) aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz" | sha512sum -c - \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz --directory /usr/share/dotnet \ + && rm \ + aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz \ + aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# ASP.NET Composite Image +FROM $REPO:0.0.0-resolute-chiseled-extra-arm32v7 + +ENV \ + # .NET Runtime version + DOTNET_VERSION=0.0.0 \ + # ASP.NET Core version + ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-extra-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-extra-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..a969d181c2 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-composite-extra-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,38 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Composite Runtime +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz.sha512) aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz" | sha512sum -c - \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz --directory /usr/share/dotnet \ + && rm \ + aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz \ + aspnetcore-runtime-composite-$aspnetcore_build_version-linux-arm64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# ASP.NET Composite Image +FROM $REPO:0.0.0-resolute-chiseled-extra-arm64v8 + +ENV \ + # .NET Runtime version + DOTNET_VERSION=0.0.0 \ + # ASP.NET Core version + ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-extra-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-extra-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..15d1f7e2a2 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-extra-amd64-Dockerfile.approved.txt @@ -0,0 +1,28 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Core +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz.sha512) aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz \ + aspnetcore-runtime-$aspnetcore_build_version-linux-x64.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:0.0.0-resolute-chiseled-extra-amd64 + +# ASP.NET Core version +ENV ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-extra-arm32v7-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-extra-arm32v7-Dockerfile.approved.txt new file mode 100644 index 0000000000..a927ac137f --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-extra-arm32v7-Dockerfile.approved.txt @@ -0,0 +1,28 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Core +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz.sha512) aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz \ + aspnetcore-runtime-$aspnetcore_build_version-linux-arm.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:0.0.0-resolute-chiseled-extra-arm32v7 + +# ASP.NET Core version +ENV ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-extra-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-extra-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..b15f58724e --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/aspnet-10.0-resolute-chiseled-extra-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,28 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve ASP.NET Core +RUN aspnetcore_version=0.0.0 \ + && aspnetcore_build_version=$aspnetcore_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/aspnetcore/Runtime/$aspnetcore_build_version/aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz.sha512 \ + && echo "$(cat aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz.sha512) aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz --directory /dotnet ./shared/Microsoft.AspNetCore.App \ + && rm \ + aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz \ + aspnetcore-runtime-$aspnetcore_build_version-linux-arm64.tar.gz.sha512 + + +# ASP.NET Core image +FROM $REPO:0.0.0-resolute-chiseled-extra-arm64v8 + +# ASP.NET Core version +ENV ASPNET_VERSION=0.0.0 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..7af6de2ef3 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-amd64-Dockerfile.approved.txt @@ -0,0 +1,30 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve .NET Runtime +RUN dotnet_version=0.0.0 \ + && dotnet_build_version=$dotnet_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz.sha512 \ + && echo "$(cat dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz.sha512) dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz --directory /dotnet \ + && rm \ + dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz \ + dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz.sha512 + + +# .NET runtime image +FROM $REPO:0.0.0-resolute-amd64 + +# .NET Runtime version +ENV DOTNET_VERSION=0.0.0 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] + +RUN ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-arm32v7-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-arm32v7-Dockerfile.approved.txt new file mode 100644 index 0000000000..640ba695da --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-arm32v7-Dockerfile.approved.txt @@ -0,0 +1,30 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve .NET Runtime +RUN dotnet_version=0.0.0 \ + && dotnet_build_version=$dotnet_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz.sha512 \ + && echo "$(cat dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz.sha512) dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz --directory /dotnet \ + && rm \ + dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz \ + dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz.sha512 + + +# .NET runtime image +FROM $REPO:0.0.0-resolute-arm32v7 + +# .NET Runtime version +ENV DOTNET_VERSION=0.0.0 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] + +RUN ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..d6e2fe2dde --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,30 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve .NET Runtime +RUN dotnet_version=0.0.0 \ + && dotnet_build_version=$dotnet_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz.sha512 \ + && echo "$(cat dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz.sha512) dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz --directory /dotnet \ + && rm \ + dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz \ + dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz.sha512 + + +# .NET runtime image +FROM $REPO:0.0.0-resolute-arm64v8 + +# .NET Runtime version +ENV DOTNET_VERSION=0.0.0 + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] + +RUN ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..5a5863309c --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-amd64-Dockerfile.approved.txt @@ -0,0 +1,35 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve .NET Runtime +RUN dotnet_version=0.0.0 \ + && dotnet_build_version=$dotnet_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz.sha512 \ + && echo "$(cat dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz.sha512) dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz" | sha512sum -c - \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz --directory /usr/share/dotnet \ + && rm \ + dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz \ + dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# .NET runtime image +FROM $REPO:0.0.0-resolute-chiseled-amd64 + +# .NET Runtime version +ENV DOTNET_VERSION=0.0.0 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-arm32v7-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-arm32v7-Dockerfile.approved.txt new file mode 100644 index 0000000000..c65ae4ef78 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-arm32v7-Dockerfile.approved.txt @@ -0,0 +1,35 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve .NET Runtime +RUN dotnet_version=0.0.0 \ + && dotnet_build_version=$dotnet_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz.sha512 \ + && echo "$(cat dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz.sha512) dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz" | sha512sum -c - \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz --directory /usr/share/dotnet \ + && rm \ + dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz \ + dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# .NET runtime image +FROM $REPO:0.0.0-resolute-chiseled-arm32v7 + +# .NET Runtime version +ENV DOTNET_VERSION=0.0.0 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..c5c23746cf --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,35 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve .NET Runtime +RUN dotnet_version=0.0.0 \ + && dotnet_build_version=$dotnet_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz.sha512 \ + && echo "$(cat dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz.sha512) dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz" | sha512sum -c - \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz --directory /usr/share/dotnet \ + && rm \ + dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz \ + dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# .NET runtime image +FROM $REPO:0.0.0-resolute-chiseled-arm64v8 + +# .NET Runtime version +ENV DOTNET_VERSION=0.0.0 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-extra-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-extra-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..442f18194e --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-extra-amd64-Dockerfile.approved.txt @@ -0,0 +1,35 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve .NET Runtime +RUN dotnet_version=0.0.0 \ + && dotnet_build_version=$dotnet_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz.sha512 \ + && echo "$(cat dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz.sha512) dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz" | sha512sum -c - \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz --directory /usr/share/dotnet \ + && rm \ + dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz \ + dotnet-runtime-$dotnet_build_version-linux-x64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# .NET runtime image +FROM $REPO:0.0.0-resolute-chiseled-extra-amd64 + +# .NET Runtime version +ENV DOTNET_VERSION=0.0.0 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-extra-arm32v7-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-extra-arm32v7-Dockerfile.approved.txt new file mode 100644 index 0000000000..1e4f363913 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-extra-arm32v7-Dockerfile.approved.txt @@ -0,0 +1,35 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve .NET Runtime +RUN dotnet_version=0.0.0 \ + && dotnet_build_version=$dotnet_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz.sha512 \ + && echo "$(cat dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz.sha512) dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz" | sha512sum -c - \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz --directory /usr/share/dotnet \ + && rm \ + dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz \ + dotnet-runtime-$dotnet_build_version-linux-arm.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# .NET runtime image +FROM $REPO:0.0.0-resolute-chiseled-extra-arm32v7 + +# .NET Runtime version +ENV DOTNET_VERSION=0.0.0 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-extra-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-extra-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..997b9907a6 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-10.0-resolute-chiseled-extra-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,35 @@ +ARG REPO=mcr.microsoft.com/dotnet/runtime-deps + +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Retrieve .NET Runtime +RUN dotnet_version=0.0.0 \ + && dotnet_build_version=$dotnet_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/Runtime/$dotnet_build_version/dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz.sha512 \ + && echo "$(cat dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz.sha512) dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz" | sha512sum -c - \ + && mkdir --parents /usr/share/dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz --directory /usr/share/dotnet \ + && rm \ + dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz \ + dotnet-runtime-$dotnet_build_version-linux-arm64.tar.gz.sha512 + +RUN mkdir /dotnet-symlink \ + && ln -s /usr/share/dotnet/dotnet /dotnet-symlink/dotnet + + +# .NET runtime image +FROM $REPO:0.0.0-resolute-chiseled-extra-arm64v8 + +# .NET Runtime version +ENV DOTNET_VERSION=0.0.0 + +COPY --from=installer ["/usr/share/dotnet", "/usr/share/dotnet"] +COPY --from=installer ["/dotnet-symlink", "/usr/bin"] + +ENTRYPOINT ["/usr/bin/dotnet"] +CMD ["--info"] diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..453e0c2bab --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-amd64-Dockerfile.approved.txt @@ -0,0 +1,32 @@ +FROM ubuntu.azurecr.io/ubuntu:resolute + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + ca-certificates \ + \ + # .NET dependencies + libc6 \ + libgcc-s1 \ + libicu78 \ + libssl3t64 \ + libstdc++6 \ + tzdata \ + && rm -rf /var/lib/apt/lists/* + +# Create a non-root user and group +RUN groupadd \ + --gid=$APP_UID \ + app \ + && useradd --no-log-init \ + --uid=$APP_UID \ + --gid=$APP_UID \ + --create-home \ + app diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-arm32v7-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-arm32v7-Dockerfile.approved.txt new file mode 100644 index 0000000000..453e0c2bab --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-arm32v7-Dockerfile.approved.txt @@ -0,0 +1,32 @@ +FROM ubuntu.azurecr.io/ubuntu:resolute + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + ca-certificates \ + \ + # .NET dependencies + libc6 \ + libgcc-s1 \ + libicu78 \ + libssl3t64 \ + libstdc++6 \ + tzdata \ + && rm -rf /var/lib/apt/lists/* + +# Create a non-root user and group +RUN groupadd \ + --gid=$APP_UID \ + app \ + && useradd --no-log-init \ + --uid=$APP_UID \ + --gid=$APP_UID \ + --create-home \ + app diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..453e0c2bab --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,32 @@ +FROM ubuntu.azurecr.io/ubuntu:resolute + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + ca-certificates \ + \ + # .NET dependencies + libc6 \ + libgcc-s1 \ + libicu78 \ + libssl3t64 \ + libstdc++6 \ + tzdata \ + && rm -rf /var/lib/apt/lists/* + +# Create a non-root user and group +RUN groupadd \ + --gid=$APP_UID \ + app \ + && useradd --no-log-init \ + --uid=$APP_UID \ + --gid=$APP_UID \ + --create-home \ + app diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..2032e24906 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-amd64-Dockerfile.approved.txt @@ -0,0 +1,57 @@ +FROM amd64/buildpack-deps:resolute-curl AS chisel + +RUN apt-get update && apt-get install -y file + +RUN curl --fail --show-error --location --output chisel.tar.gz https://github.com/canonical/chisel/releases/download/v0.0.0/chisel_v0.0.0_linux_amd64.tar.gz \ + && chisel_sha384='{sha386_placeholder}' \ + && echo "$chisel_sha384 chisel.tar.gz" | sha384sum -c - \ + && tar --gzip --extract --no-same-owner --file chisel.tar.gz --directory /usr/bin/ \ + && rm chisel.tar.gz \ + && curl --fail --show-error --location --output /usr/bin/chisel-wrapper https://raw.githubusercontent.com/canonical/rocks-toolbox/v0.0.0/chisel-wrapper \ + && chmod 755 /usr/bin/chisel-wrapper + +RUN groupadd \ + --gid=1654 \ + app \ + && useradd --no-log-init \ + --uid=1654 \ + --gid=1654 \ + --shell /bin/false \ + app \ + && install --directory --mode 0755 --owner 1654 --group 1654 "/rootfs/home/app" \ + && mkdir --parents "/rootfs/etc" \ + && rootOrAppRegex='^\(root\|app\):' \ + && cat /etc/passwd | grep $rootOrAppRegex > "/rootfs/etc/passwd" \ + && cat /etc/group | grep $rootOrAppRegex > "/rootfs/etc/group" + +RUN mkdir --parents /rootfs/var/lib/dpkg/ \ + && chisel-wrapper --generate-dpkg-status /rootfs/var/lib/dpkg/status -- \ + --release ubuntu-26.04 --root /rootfs \ + base-files_base \ + base-files_chisel \ + base-files_release-info \ + ca-certificates_data \ + libc6_libs \ + libgcc-s1_libs \ + libssl3t64_libs \ + libstdc++6_libs + + +FROM scratch + +COPY --from=chisel /rootfs / + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true \ + # Set the invariant mode since ICU package isn't included (see https://github.com/dotnet/announcements/issues/20) + DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true + +# Workaround for https://github.com/moby/moby/issues/38710 +COPY --from=chisel --chown=$APP_UID:$APP_UID /rootfs/home/app /home/app + +USER $APP_UID diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-arm32v7-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-arm32v7-Dockerfile.approved.txt new file mode 100644 index 0000000000..9777fa716f --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-arm32v7-Dockerfile.approved.txt @@ -0,0 +1,57 @@ +FROM arm32v7/buildpack-deps:resolute-curl AS chisel + +RUN apt-get update && apt-get install -y file + +RUN curl --fail --show-error --location --output chisel.tar.gz https://github.com/canonical/chisel/releases/download/v0.0.0/chisel_v0.0.0_linux_arm.tar.gz \ + && chisel_sha384='{sha386_placeholder}' \ + && echo "$chisel_sha384 chisel.tar.gz" | sha384sum -c - \ + && tar --gzip --extract --no-same-owner --file chisel.tar.gz --directory /usr/bin/ \ + && rm chisel.tar.gz \ + && curl --fail --show-error --location --output /usr/bin/chisel-wrapper https://raw.githubusercontent.com/canonical/rocks-toolbox/v0.0.0/chisel-wrapper \ + && chmod 755 /usr/bin/chisel-wrapper + +RUN groupadd \ + --gid=1654 \ + app \ + && useradd --no-log-init \ + --uid=1654 \ + --gid=1654 \ + --shell /bin/false \ + app \ + && install --directory --mode 0755 --owner 1654 --group 1654 "/rootfs/home/app" \ + && mkdir --parents "/rootfs/etc" \ + && rootOrAppRegex='^\(root\|app\):' \ + && cat /etc/passwd | grep $rootOrAppRegex > "/rootfs/etc/passwd" \ + && cat /etc/group | grep $rootOrAppRegex > "/rootfs/etc/group" + +RUN mkdir --parents /rootfs/var/lib/dpkg/ \ + && chisel-wrapper --generate-dpkg-status /rootfs/var/lib/dpkg/status -- \ + --release ubuntu-26.04 --root /rootfs \ + base-files_base \ + base-files_chisel \ + base-files_release-info \ + ca-certificates_data \ + libc6_libs \ + libgcc-s1_libs \ + libssl3t64_libs \ + libstdc++6_libs + + +FROM scratch + +COPY --from=chisel /rootfs / + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true \ + # Set the invariant mode since ICU package isn't included (see https://github.com/dotnet/announcements/issues/20) + DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true + +# Workaround for https://github.com/moby/moby/issues/38710 +COPY --from=chisel --chown=$APP_UID:$APP_UID /rootfs/home/app /home/app + +USER $APP_UID diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..91c26fb807 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,57 @@ +FROM arm64v8/buildpack-deps:resolute-curl AS chisel + +RUN apt-get update && apt-get install -y file + +RUN curl --fail --show-error --location --output chisel.tar.gz https://github.com/canonical/chisel/releases/download/v0.0.0/chisel_v0.0.0_linux_arm64.tar.gz \ + && chisel_sha384='{sha386_placeholder}' \ + && echo "$chisel_sha384 chisel.tar.gz" | sha384sum -c - \ + && tar --gzip --extract --no-same-owner --file chisel.tar.gz --directory /usr/bin/ \ + && rm chisel.tar.gz \ + && curl --fail --show-error --location --output /usr/bin/chisel-wrapper https://raw.githubusercontent.com/canonical/rocks-toolbox/v0.0.0/chisel-wrapper \ + && chmod 755 /usr/bin/chisel-wrapper + +RUN groupadd \ + --gid=1654 \ + app \ + && useradd --no-log-init \ + --uid=1654 \ + --gid=1654 \ + --shell /bin/false \ + app \ + && install --directory --mode 0755 --owner 1654 --group 1654 "/rootfs/home/app" \ + && mkdir --parents "/rootfs/etc" \ + && rootOrAppRegex='^\(root\|app\):' \ + && cat /etc/passwd | grep $rootOrAppRegex > "/rootfs/etc/passwd" \ + && cat /etc/group | grep $rootOrAppRegex > "/rootfs/etc/group" + +RUN mkdir --parents /rootfs/var/lib/dpkg/ \ + && chisel-wrapper --generate-dpkg-status /rootfs/var/lib/dpkg/status -- \ + --release ubuntu-26.04 --root /rootfs \ + base-files_base \ + base-files_chisel \ + base-files_release-info \ + ca-certificates_data \ + libc6_libs \ + libgcc-s1_libs \ + libssl3t64_libs \ + libstdc++6_libs + + +FROM scratch + +COPY --from=chisel /rootfs / + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true \ + # Set the invariant mode since ICU package isn't included (see https://github.com/dotnet/announcements/issues/20) + DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true + +# Workaround for https://github.com/moby/moby/issues/38710 +COPY --from=chisel --chown=$APP_UID:$APP_UID /rootfs/home/app /home/app + +USER $APP_UID diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-extra-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-extra-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..babc3117a0 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-extra-amd64-Dockerfile.approved.txt @@ -0,0 +1,57 @@ +FROM amd64/buildpack-deps:resolute-curl AS chisel + +RUN apt-get update && apt-get install -y file + +RUN curl --fail --show-error --location --output chisel.tar.gz https://github.com/canonical/chisel/releases/download/v0.0.0/chisel_v0.0.0_linux_amd64.tar.gz \ + && chisel_sha384='{sha386_placeholder}' \ + && echo "$chisel_sha384 chisel.tar.gz" | sha384sum -c - \ + && tar --gzip --extract --no-same-owner --file chisel.tar.gz --directory /usr/bin/ \ + && rm chisel.tar.gz \ + && curl --fail --show-error --location --output /usr/bin/chisel-wrapper https://raw.githubusercontent.com/canonical/rocks-toolbox/v0.0.0/chisel-wrapper \ + && chmod 755 /usr/bin/chisel-wrapper + +RUN groupadd \ + --gid=1654 \ + app \ + && useradd --no-log-init \ + --uid=1654 \ + --gid=1654 \ + --shell /bin/false \ + app \ + && install --directory --mode 0755 --owner 1654 --group 1654 "/rootfs/home/app" \ + && mkdir --parents "/rootfs/etc" \ + && rootOrAppRegex='^\(root\|app\):' \ + && cat /etc/passwd | grep $rootOrAppRegex > "/rootfs/etc/passwd" \ + && cat /etc/group | grep $rootOrAppRegex > "/rootfs/etc/group" + +RUN mkdir --parents /rootfs/var/lib/dpkg/ \ + && chisel-wrapper --generate-dpkg-status /rootfs/var/lib/dpkg/status -- \ + --release ubuntu-26.04 --root /rootfs \ + base-files_base \ + base-files_chisel \ + base-files_release-info \ + ca-certificates_data \ + libc6_libs \ + libgcc-s1_libs \ + libicu78_libs \ + libssl3t64_libs \ + libstdc++6_libs \ + tzdata_zoneinfo + + +FROM scratch + +COPY --from=chisel /rootfs / + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true + +# Workaround for https://github.com/moby/moby/issues/38710 +COPY --from=chisel --chown=$APP_UID:$APP_UID /rootfs/home/app /home/app + +USER $APP_UID diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-extra-arm32v7-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-extra-arm32v7-Dockerfile.approved.txt new file mode 100644 index 0000000000..b18e40bbd1 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-extra-arm32v7-Dockerfile.approved.txt @@ -0,0 +1,57 @@ +FROM arm32v7/buildpack-deps:resolute-curl AS chisel + +RUN apt-get update && apt-get install -y file + +RUN curl --fail --show-error --location --output chisel.tar.gz https://github.com/canonical/chisel/releases/download/v0.0.0/chisel_v0.0.0_linux_arm.tar.gz \ + && chisel_sha384='{sha386_placeholder}' \ + && echo "$chisel_sha384 chisel.tar.gz" | sha384sum -c - \ + && tar --gzip --extract --no-same-owner --file chisel.tar.gz --directory /usr/bin/ \ + && rm chisel.tar.gz \ + && curl --fail --show-error --location --output /usr/bin/chisel-wrapper https://raw.githubusercontent.com/canonical/rocks-toolbox/v0.0.0/chisel-wrapper \ + && chmod 755 /usr/bin/chisel-wrapper + +RUN groupadd \ + --gid=1654 \ + app \ + && useradd --no-log-init \ + --uid=1654 \ + --gid=1654 \ + --shell /bin/false \ + app \ + && install --directory --mode 0755 --owner 1654 --group 1654 "/rootfs/home/app" \ + && mkdir --parents "/rootfs/etc" \ + && rootOrAppRegex='^\(root\|app\):' \ + && cat /etc/passwd | grep $rootOrAppRegex > "/rootfs/etc/passwd" \ + && cat /etc/group | grep $rootOrAppRegex > "/rootfs/etc/group" + +RUN mkdir --parents /rootfs/var/lib/dpkg/ \ + && chisel-wrapper --generate-dpkg-status /rootfs/var/lib/dpkg/status -- \ + --release ubuntu-26.04 --root /rootfs \ + base-files_base \ + base-files_chisel \ + base-files_release-info \ + ca-certificates_data \ + libc6_libs \ + libgcc-s1_libs \ + libicu78_libs \ + libssl3t64_libs \ + libstdc++6_libs \ + tzdata_zoneinfo + + +FROM scratch + +COPY --from=chisel /rootfs / + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true + +# Workaround for https://github.com/moby/moby/issues/38710 +COPY --from=chisel --chown=$APP_UID:$APP_UID /rootfs/home/app /home/app + +USER $APP_UID diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-extra-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-extra-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..59f0dd1a34 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/runtime-deps-10.0-resolute-chiseled-extra-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,57 @@ +FROM arm64v8/buildpack-deps:resolute-curl AS chisel + +RUN apt-get update && apt-get install -y file + +RUN curl --fail --show-error --location --output chisel.tar.gz https://github.com/canonical/chisel/releases/download/v0.0.0/chisel_v0.0.0_linux_arm64.tar.gz \ + && chisel_sha384='{sha386_placeholder}' \ + && echo "$chisel_sha384 chisel.tar.gz" | sha384sum -c - \ + && tar --gzip --extract --no-same-owner --file chisel.tar.gz --directory /usr/bin/ \ + && rm chisel.tar.gz \ + && curl --fail --show-error --location --output /usr/bin/chisel-wrapper https://raw.githubusercontent.com/canonical/rocks-toolbox/v0.0.0/chisel-wrapper \ + && chmod 755 /usr/bin/chisel-wrapper + +RUN groupadd \ + --gid=1654 \ + app \ + && useradd --no-log-init \ + --uid=1654 \ + --gid=1654 \ + --shell /bin/false \ + app \ + && install --directory --mode 0755 --owner 1654 --group 1654 "/rootfs/home/app" \ + && mkdir --parents "/rootfs/etc" \ + && rootOrAppRegex='^\(root\|app\):' \ + && cat /etc/passwd | grep $rootOrAppRegex > "/rootfs/etc/passwd" \ + && cat /etc/group | grep $rootOrAppRegex > "/rootfs/etc/group" + +RUN mkdir --parents /rootfs/var/lib/dpkg/ \ + && chisel-wrapper --generate-dpkg-status /rootfs/var/lib/dpkg/status -- \ + --release ubuntu-26.04 --root /rootfs \ + base-files_base \ + base-files_chisel \ + base-files_release-info \ + ca-certificates_data \ + libc6_libs \ + libgcc-s1_libs \ + libicu78_libs \ + libssl3t64_libs \ + libstdc++6_libs \ + tzdata_zoneinfo + + +FROM scratch + +COPY --from=chisel /rootfs / + +ENV \ + # UID of the non-root user 'app' + APP_UID=1654 \ + # Configure web servers to bind to port 8080 when present + ASPNETCORE_HTTP_PORTS=8080 \ + # Enable detection of running in a container + DOTNET_RUNNING_IN_CONTAINER=true + +# Workaround for https://github.com/moby/moby/issues/38710 +COPY --from=chisel --chown=$APP_UID:$APP_UID /rootfs/home/app /home/app + +USER $APP_UID diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..7f34b33e49 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-amd64-Dockerfile.approved.txt @@ -0,0 +1,66 @@ +ARG REPO=mcr.microsoft.com/dotnet/aspnet +# Installer image +FROM amd64/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Install .NET SDK +RUN dotnet_sdk_version=0.0.0 \ + && dotnet_sdk_build_version=$dotnet_sdk_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/Sdk/$dotnet_sdk_build_version/dotnet-sdk-$dotnet_sdk_build_version-linux-x64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/Sdk/$dotnet_sdk_build_version/dotnet-sdk-$dotnet_sdk_build_version-linux-x64.tar.gz.sha512 \ + && echo "$(cat dotnet-sdk-$dotnet_sdk_build_version-linux-x64.tar.gz.sha512) dotnet-sdk-$dotnet_sdk_build_version-linux-x64.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-sdk-$dotnet_sdk_build_version-linux-x64.tar.gz --directory /dotnet ./dnx ./packs ./sdk ./sdk-manifests ./templates ./LICENSE.txt ./ThirdPartyNotices.txt \ + && rm \ + dotnet-sdk-$dotnet_sdk_build_version-linux-x64.tar.gz \ + dotnet-sdk-$dotnet_sdk_build_version-linux-x64.tar.gz.sha512 + + +# .NET SDK image +FROM $REPO:0.0.0-resolute-amd64 + +ENV \ + # Do not generate certificate + DOTNET_GENERATE_ASPNET_CERTIFICATE=false \ + # Do not show first run text + DOTNET_NOLOGO=true \ + # SDK version + DOTNET_SDK_VERSION=0.0.0 \ + # Enable correct mode for dotnet watch (only mode supported in a container) + DOTNET_USE_POLLING_FILE_WATCHER=true \ + # Skip extraction of XML docs - generally not useful within an image/container - helps performance + NUGET_XMLDOC_MODE=skip \ + # PowerShell telemetry for docker image usage + POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-DotnetSDK-Ubuntu-26.04 \ + # Workaround for https://github.com/PowerShell/PowerShell/issues/20685 + DOTNET_ROLL_FORWARD=Major + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + curl \ + git \ + libatomic1 \ + wget \ + && rm -rf /var/lib/apt/lists/* + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] + +RUN ln -s /usr/share/dotnet/dnx /usr/bin/dnx \ + # Trigger first run experience by running arbitrary cmd + && dotnet help + +# Install PowerShell global tool +RUN powershell_version=0.0.0 \ + && curl --fail --show-error --location --output PowerShell.Linux.x64.$powershell_version.nupkg https://powershellinfraartifacts-gkhedzdeaghdezhr.z01.azurefd.net/tool/$powershell_version/PowerShell.Linux.x64.$powershell_version.nupkg \ + && powershell_sha512='{sha512_placeholder}' \ + && echo "$powershell_sha512 PowerShell.Linux.x64.$powershell_version.nupkg" | sha512sum -c - \ + && mkdir --parents /usr/share/powershell \ + && dotnet tool install --add-source / --tool-path /usr/share/powershell --version $powershell_version PowerShell.Linux.x64 \ + && dotnet nuget locals all --clear \ + && rm PowerShell.Linux.x64.$powershell_version.nupkg \ + && ln -s /usr/share/powershell/pwsh /usr/bin/pwsh \ + && chmod 755 /usr/share/powershell/pwsh \ + # To reduce image size, remove the copy nupkg that nuget keeps. + && find /usr/share/powershell -print | grep -i '.*[.]nupkg$' | xargs rm diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-aot-amd64-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-aot-amd64-Dockerfile.approved.txt new file mode 100644 index 0000000000..52e83574dd --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-aot-amd64-Dockerfile.approved.txt @@ -0,0 +1,10 @@ +# syntax=docker/dockerfile:1 +ARG REPO=mcr.microsoft.com/dotnet/sdk +FROM $REPO:0.0.0-resolute-amd64 + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + clang \ + llvm \ + zlib1g-dev \ + && rm -rf /var/lib/apt/lists/* diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-aot-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-aot-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..6ccb65edfd --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-aot-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,10 @@ +# syntax=docker/dockerfile:1 +ARG REPO=mcr.microsoft.com/dotnet/sdk +FROM $REPO:0.0.0-resolute-arm64v8 + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + clang \ + llvm \ + zlib1g-dev \ + && rm -rf /var/lib/apt/lists/* diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-arm32v7-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-arm32v7-Dockerfile.approved.txt new file mode 100644 index 0000000000..f62e337006 --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-arm32v7-Dockerfile.approved.txt @@ -0,0 +1,66 @@ +ARG REPO=mcr.microsoft.com/dotnet/aspnet +# Installer image +FROM arm32v7/buildpack-deps:jammy-curl AS installer + +ARG ACCESSTOKEN + +# Install .NET SDK +RUN dotnet_sdk_version=0.0.0 \ + && dotnet_sdk_build_version=$dotnet_sdk_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/Sdk/$dotnet_sdk_build_version/dotnet-sdk-$dotnet_sdk_build_version-linux-arm.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/Sdk/$dotnet_sdk_build_version/dotnet-sdk-$dotnet_sdk_build_version-linux-arm.tar.gz.sha512 \ + && echo "$(cat dotnet-sdk-$dotnet_sdk_build_version-linux-arm.tar.gz.sha512) dotnet-sdk-$dotnet_sdk_build_version-linux-arm.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-sdk-$dotnet_sdk_build_version-linux-arm.tar.gz --directory /dotnet ./dnx ./packs ./sdk ./sdk-manifests ./templates ./LICENSE.txt ./ThirdPartyNotices.txt \ + && rm \ + dotnet-sdk-$dotnet_sdk_build_version-linux-arm.tar.gz \ + dotnet-sdk-$dotnet_sdk_build_version-linux-arm.tar.gz.sha512 + + +# .NET SDK image +FROM $REPO:0.0.0-resolute-arm32v7 + +ENV \ + # Do not generate certificate + DOTNET_GENERATE_ASPNET_CERTIFICATE=false \ + # Do not show first run text + DOTNET_NOLOGO=true \ + # SDK version + DOTNET_SDK_VERSION=0.0.0 \ + # Enable correct mode for dotnet watch (only mode supported in a container) + DOTNET_USE_POLLING_FILE_WATCHER=true \ + # Skip extraction of XML docs - generally not useful within an image/container - helps performance + NUGET_XMLDOC_MODE=skip \ + # PowerShell telemetry for docker image usage + POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-DotnetSDK-Ubuntu-26.04-arm32 \ + # Workaround for https://github.com/PowerShell/PowerShell/issues/20685 + DOTNET_ROLL_FORWARD=Major + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + curl \ + git \ + libatomic1 \ + wget \ + && rm -rf /var/lib/apt/lists/* + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] + +RUN ln -s /usr/share/dotnet/dnx /usr/bin/dnx \ + # Trigger first run experience by running arbitrary cmd + && dotnet help + +# Install PowerShell global tool +RUN powershell_version=0.0.0 \ + && curl --fail --show-error --location --output PowerShell.Linux.arm32.$powershell_version.nupkg https://powershellinfraartifacts-gkhedzdeaghdezhr.z01.azurefd.net/tool/$powershell_version/PowerShell.Linux.arm32.$powershell_version.nupkg \ + && powershell_sha512='{sha512_placeholder}' \ + && echo "$powershell_sha512 PowerShell.Linux.arm32.$powershell_version.nupkg" | sha512sum -c - \ + && mkdir --parents /usr/share/powershell \ + && dotnet tool install --add-source / --tool-path /usr/share/powershell --version $powershell_version PowerShell.Linux.arm32 \ + && dotnet nuget locals all --clear \ + && rm PowerShell.Linux.arm32.$powershell_version.nupkg \ + && ln -s /usr/share/powershell/pwsh /usr/bin/pwsh \ + && chmod 755 /usr/share/powershell/pwsh \ + # To reduce image size, remove the copy nupkg that nuget keeps. + && find /usr/share/powershell -print | grep -i '.*[.]nupkg$' | xargs rm diff --git a/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-arm64v8-Dockerfile.approved.txt b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-arm64v8-Dockerfile.approved.txt new file mode 100644 index 0000000000..667c7f668d --- /dev/null +++ b/tests/Microsoft.DotNet.Docker.Tests/Baselines/GeneratedArtifactTests/VerifyInternalDockerfilesOutput/sdk-10.0-resolute-arm64v8-Dockerfile.approved.txt @@ -0,0 +1,66 @@ +ARG REPO=mcr.microsoft.com/dotnet/aspnet +# Installer image +FROM arm64v8/buildpack-deps:resolute-curl AS installer + +ARG ACCESSTOKEN + +# Install .NET SDK +RUN dotnet_sdk_version=0.0.0 \ + && dotnet_sdk_build_version=$dotnet_sdk_version \ + && curl --header "Authorization: Bearer $ACCESSTOKEN" --header "x-ms-version: 2017-11-09" --fail --show-error --location \ + --remote-name https://dotnetstage.blob.core.windows.net/Sdk/$dotnet_sdk_build_version/dotnet-sdk-$dotnet_sdk_build_version-linux-arm64.tar.gz \ + --remote-name https://dotnetstage.blob.core.windows.net/Sdk/$dotnet_sdk_build_version/dotnet-sdk-$dotnet_sdk_build_version-linux-arm64.tar.gz.sha512 \ + && echo "$(cat dotnet-sdk-$dotnet_sdk_build_version-linux-arm64.tar.gz.sha512) dotnet-sdk-$dotnet_sdk_build_version-linux-arm64.tar.gz" | sha512sum -c - \ + && mkdir --parents /dotnet \ + && tar --gzip --extract --no-same-owner --file dotnet-sdk-$dotnet_sdk_build_version-linux-arm64.tar.gz --directory /dotnet ./dnx ./packs ./sdk ./sdk-manifests ./templates ./LICENSE.txt ./ThirdPartyNotices.txt \ + && rm \ + dotnet-sdk-$dotnet_sdk_build_version-linux-arm64.tar.gz \ + dotnet-sdk-$dotnet_sdk_build_version-linux-arm64.tar.gz.sha512 + + +# .NET SDK image +FROM $REPO:0.0.0-resolute-arm64v8 + +ENV \ + # Do not generate certificate + DOTNET_GENERATE_ASPNET_CERTIFICATE=false \ + # Do not show first run text + DOTNET_NOLOGO=true \ + # SDK version + DOTNET_SDK_VERSION=0.0.0 \ + # Enable correct mode for dotnet watch (only mode supported in a container) + DOTNET_USE_POLLING_FILE_WATCHER=true \ + # Skip extraction of XML docs - generally not useful within an image/container - helps performance + NUGET_XMLDOC_MODE=skip \ + # PowerShell telemetry for docker image usage + POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-DotnetSDK-Ubuntu-26.04-arm64 \ + # Workaround for https://github.com/PowerShell/PowerShell/issues/20685 + DOTNET_ROLL_FORWARD=Major + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + curl \ + git \ + libatomic1 \ + wget \ + && rm -rf /var/lib/apt/lists/* + +COPY --from=installer ["/dotnet", "/usr/share/dotnet"] + +RUN ln -s /usr/share/dotnet/dnx /usr/bin/dnx \ + # Trigger first run experience by running arbitrary cmd + && dotnet help + +# Install PowerShell global tool +RUN powershell_version=0.0.0 \ + && curl --fail --show-error --location --output PowerShell.Linux.arm64.$powershell_version.nupkg https://powershellinfraartifacts-gkhedzdeaghdezhr.z01.azurefd.net/tool/$powershell_version/PowerShell.Linux.arm64.$powershell_version.nupkg \ + && powershell_sha512='{sha512_placeholder}' \ + && echo "$powershell_sha512 PowerShell.Linux.arm64.$powershell_version.nupkg" | sha512sum -c - \ + && mkdir --parents /usr/share/powershell \ + && dotnet tool install --add-source / --tool-path /usr/share/powershell --version $powershell_version PowerShell.Linux.arm64 \ + && dotnet nuget locals all --clear \ + && rm PowerShell.Linux.arm64.$powershell_version.nupkg \ + && ln -s /usr/share/powershell/pwsh /usr/bin/pwsh \ + && chmod 755 /usr/share/powershell/pwsh \ + # To reduce image size, remove the copy nupkg that nuget keeps. + && find /usr/share/powershell -print | grep -i '.*[.]nupkg$' | xargs rm diff --git a/tests/Microsoft.DotNet.Docker.Tests/OS.cs b/tests/Microsoft.DotNet.Docker.Tests/OS.cs index c4b9dc73a7..829f93f352 100644 --- a/tests/Microsoft.DotNet.Docker.Tests/OS.cs +++ b/tests/Microsoft.DotNet.Docker.Tests/OS.cs @@ -34,7 +34,7 @@ internal static class OS public static OSInfo JammyChiseled { get; } = Jammy with { IsDistroless = true }; public static OSInfo Noble { get; } = new(OSType.Linux, OSFamily.Ubuntu, "24.04"); public static OSInfo NobleChiseled { get; } = Noble with { IsDistroless = true }; - public static OSInfo Resolute { get; } = new(OSType.Linux, OSFamily.Ubuntu, "26.04", IsUnstable: true); + public static OSInfo Resolute { get; } = new(OSType.Linux, OSFamily.Ubuntu, "26.04"); public static OSInfo ResoluteChiseled { get; } = Resolute with { IsDistroless = true }; // Windows - Nano Server diff --git a/tests/Microsoft.DotNet.Docker.Tests/TestData.cs b/tests/Microsoft.DotNet.Docker.Tests/TestData.cs index 644c6ef05e..d4026043c9 100644 --- a/tests/Microsoft.DotNet.Docker.Tests/TestData.cs +++ b/tests/Microsoft.DotNet.Docker.Tests/TestData.cs @@ -210,6 +210,15 @@ public static class TestData new() { Version = V10_0, Arch = Arch.Amd64, SdkImageVariant = DotNetImageVariant.AOT, SupportedImageRepos = DotNetImageRepo.Runtime_Deps, OS = OS.Alpine323 }, new() { Version = V10_0, Arch = Arch.Amd64, SdkImageVariant = DotNetImageVariant.AOT, SupportedImageRepos = DotNetImageRepo.Runtime_Deps, OS = OS.AzureLinux30Distroless, SdkOS = OS.AzureLinux30 }, new() { Version = V10_0, Arch = Arch.Amd64, SdkImageVariant = DotNetImageVariant.AOT, SupportedImageRepos = DotNetImageRepo.Runtime_Deps, OS = OS.NobleChiseled, SdkOS = OS.Noble }, + new ProductImageData { Version = V10_0, OS = OS.Resolute, Arch = Arch.Amd64 }, + new ProductImageData { Version = V10_0, OS = OS.ResoluteChiseled, Arch = Arch.Amd64, SdkOS = OS.Resolute }, + new ProductImageData { Version = V10_0, OS = OS.ResoluteChiseled, Arch = Arch.Amd64, SdkOS = OS.Resolute, + ImageVariant = DotNetImageVariant.Composite, SupportedImageRepos = DotNetImageRepo.Aspnet }, + new ProductImageData { Version = V10_0, OS = OS.ResoluteChiseled, Arch = Arch.Amd64, SdkOS = OS.Resolute, + ImageVariant = DotNetImageVariant.Composite | DotNetImageVariant.Extra, SupportedImageRepos = DotNetImageRepo.Aspnet }, + new ProductImageData { Version = V10_0, OS = OS.ResoluteChiseled, Arch = Arch.Amd64, SdkOS = OS.Resolute, + ImageVariant = DotNetImageVariant.Extra, SupportedImageRepos = DotNetImageRepo.Runtime_Deps | DotNetImageRepo.Runtime | DotNetImageRepo.Aspnet }, + new() { Version = V10_0, Arch = Arch.Amd64, SdkImageVariant = DotNetImageVariant.AOT, SupportedImageRepos = DotNetImageRepo.Runtime_Deps, OS = OS.ResoluteChiseled, SdkOS = OS.Resolute }, new ProductImageData { Version = V10_0, OS = OS.AzureLinux30, Arch = Arch.Arm64 }, new ProductImageData { Version = V10_0, OS = OS.AzureLinux30Distroless, Arch = Arch.Arm64, SdkOS = OS.AzureLinux30 }, @@ -238,6 +247,15 @@ public static class TestData new() { Version = V10_0, Arch = Arch.Arm64, SdkImageVariant = DotNetImageVariant.AOT, SupportedImageRepos = DotNetImageRepo.Runtime_Deps, OS = OS.Alpine323 }, new() { Version = V10_0, Arch = Arch.Arm64, SdkImageVariant = DotNetImageVariant.AOT, SupportedImageRepos = DotNetImageRepo.Runtime_Deps, OS = OS.AzureLinux30Distroless, SdkOS = OS.AzureLinux30 }, new() { Version = V10_0, Arch = Arch.Arm64, SdkImageVariant = DotNetImageVariant.AOT, SupportedImageRepos = DotNetImageRepo.Runtime_Deps, OS = OS.NobleChiseled, SdkOS = OS.Noble }, + new ProductImageData { Version = V10_0, OS = OS.Resolute, Arch = Arch.Arm64 }, + new ProductImageData { Version = V10_0, OS = OS.ResoluteChiseled, Arch = Arch.Arm64, SdkOS = OS.Resolute }, + new ProductImageData { Version = V10_0, OS = OS.ResoluteChiseled, Arch = Arch.Arm64, SdkOS = OS.Resolute, + ImageVariant = DotNetImageVariant.Composite, SupportedImageRepos = DotNetImageRepo.Aspnet }, + new ProductImageData { Version = V10_0, OS = OS.ResoluteChiseled, Arch = Arch.Arm64, SdkOS = OS.Resolute, + ImageVariant = DotNetImageVariant.Composite | DotNetImageVariant.Extra, SupportedImageRepos = DotNetImageRepo.Aspnet }, + new ProductImageData { Version = V10_0, OS = OS.ResoluteChiseled, Arch = Arch.Arm64, SdkOS = OS.Resolute, + ImageVariant = DotNetImageVariant.Extra, SupportedImageRepos = DotNetImageRepo.Runtime_Deps | DotNetImageRepo.Runtime | DotNetImageRepo.Aspnet }, + new() { Version = V10_0, Arch = Arch.Arm64, SdkImageVariant = DotNetImageVariant.AOT, SupportedImageRepos = DotNetImageRepo.Runtime_Deps, OS = OS.ResoluteChiseled, SdkOS = OS.Resolute }, new ProductImageData { Version = V10_0, OS = OS.Alpine323, Arch = Arch.Arm }, new ProductImageData { Version = V10_0, OS = OS.Alpine323, Arch = Arch.Arm, SdkOS = OS.Alpine323, @@ -254,6 +272,14 @@ public static class TestData ImageVariant = DotNetImageVariant.Composite | DotNetImageVariant.Extra, SupportedImageRepos = DotNetImageRepo.Aspnet }, new ProductImageData { Version = V10_0, OS = OS.NobleChiseled, Arch = Arch.Arm, SdkOS = OS.Noble, ImageVariant = DotNetImageVariant.Extra, SupportedImageRepos = DotNetImageRepo.Runtime_Deps | DotNetImageRepo.Runtime | DotNetImageRepo.Aspnet }, + new ProductImageData { Version = V10_0, OS = OS.Resolute, Arch = Arch.Arm }, + new ProductImageData { Version = V10_0, OS = OS.ResoluteChiseled, Arch = Arch.Arm, SdkOS = OS.Resolute }, + new ProductImageData { Version = V10_0, OS = OS.ResoluteChiseled, Arch = Arch.Arm, SdkOS = OS.Resolute, + ImageVariant = DotNetImageVariant.Composite, SupportedImageRepos = DotNetImageRepo.Aspnet }, + new ProductImageData { Version = V10_0, OS = OS.ResoluteChiseled, Arch = Arch.Arm, SdkOS = OS.Resolute, + ImageVariant = DotNetImageVariant.Composite | DotNetImageVariant.Extra, SupportedImageRepos = DotNetImageRepo.Aspnet }, + new ProductImageData { Version = V10_0, OS = OS.ResoluteChiseled, Arch = Arch.Arm, SdkOS = OS.Resolute, + ImageVariant = DotNetImageVariant.Extra, SupportedImageRepos = DotNetImageRepo.Runtime_Deps | DotNetImageRepo.Runtime | DotNetImageRepo.Aspnet }, // .NET 11 Linux Amd64 new ProductImageData { Version = V11_0, OS = OS.Resolute, Arch = Arch.Amd64 },