Skip to content

Commit

Permalink
Fix tag names for Azure Linux images (#1262)
Browse files Browse the repository at this point in the history
  • Loading branch information
sbomer authored Nov 22, 2024
1 parent 6ec8bfc commit bde3c9e
Show file tree
Hide file tree
Showing 29 changed files with 95 additions and 76 deletions.
22 changes: 16 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,20 +12,29 @@ The images produced from the Dockerfiles in this repository are published to the

## How to identify an image

The tag format used by the images from this repository is `mcr.microsoft.com/dotnet-buildtools/prereqs:<os-name>-<os-version>-<variant>-<architecture>`
There are two tag formats used by the images from this repository. Most of the images follow the format `mcr.microsoft.com/dotnet-buildtools/prereqs:<os-name>-<os-version>-<variant>-<architecture>`.

- `<os-name>` - Name of the Linux distribution or Windows OS the image is based on
- `<os-version>` - Version of the OS
- `<variant>` - Name describing the specialization purpose of the image.
Often special dependencies are needed for certain parts of the product.
It can be beneficial to separate these dependencies into a separate Dockerfile/image.
- `<architecture>` - Architecture of the OS (amd64 shall be implied if not specified).
- `<architecture>` - Architecture of the OS.

Examples:

- mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.20
- mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.20-amd64
- mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-helix-arm64v8

The cross-compilation images follow the format `mcr.microsoft.com/dotnet-buildtools/prereqs:<os-name>-<os-version>-<variant>-cross-<target>`. These are all implicitly amd64 images.

- `<target>` - Specifies the target for cross-compilation, including the targeted architecture and libc variant (glibc if not specified).

Examples:

- mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-cross-arm64
- mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-cross-amd64-alpine

## How to modify or create a new image

There will be a need for modifying existing Dockerfiles or creating new ones.
Expand Down Expand Up @@ -165,8 +174,9 @@ From this commit of the `image-info.dotnet-dotnet-buildtools-prereqs-docker-main

### Source Folder Structure

The folder structure used in [src](./src) aligns with the tagging convention - `<os-name>-<os-version>-<variant>-<architecture>`.
For example, the Dockerfile used to produce the `mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.20` image is stored in the [src/alpine/3.20/amd64](./src/alpine/3.20/amd64) folder.
The folder structure used in [src](./src) aligns with the tagging convention - `<os-name>-<os-version>-<variant>-<architecture>` or `<os-name>-<os-version>-<variant>-cross-<target>`.
For example, the Dockerfile used to produce the `mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.20-amd64` image is stored in the [src/alpine/3.20/amd64](./src/alpine/3.20/amd64) folder.
The Dockerfile used to produce the `mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-cross-arm64` image is stored in the [src/azurelinux/3.0/net8.0/cross/arm64](./src/azurelinux/3.0/net8.0/cross/arm64) folder.

If a Dockerfile is shared across multiple architectures, then the `<architecture>` folder should be omitted.
For example, the [src\alpine\3.20\helix\Dockerfile](./src/alpine/3.20/helix/Dockerfile) is built for all supported architectures (amd64, arm64 and arm) therefore there is no architecture folder in its path.
Expand All @@ -189,7 +199,7 @@ Each Dockerfile will have an entry that looks like the following.
"os": "linux",
"osVersion": "alpine3.20",
"tags": {
"alpine-3.20": {}
"alpine-3.20-amd64": {}
}
}
]
Expand Down
21 changes: 14 additions & 7 deletions src/alpine/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@
"os": "linux",
"osVersion": "alpine3.17",
"tags": {
"alpine-3.17": {}
"alpine-3.17": {},
"alpine-3.17-amd64": {}
}
}
]
Expand Down Expand Up @@ -104,7 +105,8 @@
"os": "linux",
"osVersion": "alpine3.18",
"tags": {
"alpine-3.18": {}
"alpine-3.18": {},
"alpine-3.18-amd64": {}
}
}
]
Expand All @@ -116,7 +118,8 @@
"os": "linux",
"osVersion": "alpine3.18",
"tags": {
"alpine-3.18-WithNode": {}
"alpine-3.18-WithNode": {},
"alpine-3.18-WithNode-amd64": {}
}
}
]
Expand All @@ -128,7 +131,8 @@
"os": "linux",
"osVersion": "alpine3.19",
"tags": {
"alpine-3.19": {}
"alpine-3.19": {},
"alpine-3.19-amd64": {}
}
}
]
Expand All @@ -140,7 +144,8 @@
"os": "linux",
"osVersion": "alpine3.19",
"tags": {
"alpine-3.19-WithNode": {}
"alpine-3.19-WithNode": {},
"alpine-3.19-WithNode-amd64": {}
}
}
]
Expand Down Expand Up @@ -193,7 +198,8 @@
"os": "linux",
"osVersion": "alpine3.20",
"tags": {
"alpine-3.20": {}
"alpine-3.20": {},
"alpine-3.20-amd64": {}
}
}
]
Expand All @@ -205,7 +211,8 @@
"os": "linux",
"osVersion": "alpine3.20",
"tags": {
"alpine-3.20-withnode": {}
"alpine-3.20-withnode": {},
"alpine-3.20-withnode-amd64": {}
}
}
]
Expand Down
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net8.0/cross/amd64-alpine/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
ARG ROOTFS_DIR=/crossrootfs/x64

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

RUN /scripts/eng/common/cross/build-rootfs.sh x64 alpine3.13 --skipunmount


FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR

COPY --from=builder $ROOTFS_DIR $ROOTFS_DIR
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net8.0/cross/amd64/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ARG ROOTFS_DIR=/crossrootfs/x64

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

RUN /scripts/eng/common/cross/build-rootfs.sh x64 xenial --skipunmount
Expand Down Expand Up @@ -43,7 +43,7 @@ RUN LLVM_VERSION=16.0.0 LLVM_VERSION_MAJOR="${LLVM_VERSION%%.*}" SANITIZER_RUNTI
cp compiler-rt_build/lib/linux/libclang_rt.*-x86_64.a $SANITIZER_RUNTIMES_DIR


FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR
ARG LLVM_VERSION_MAJOR=16

Expand Down
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net8.0/cross/arm-alpine/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
ARG ROOTFS_DIR=/crossrootfs/arm

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

RUN /scripts/eng/common/cross/build-rootfs.sh arm alpine3.13 --skipunmount


FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR

COPY --from=builder $ROOTFS_DIR $ROOTFS_DIR
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net8.0/cross/arm/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ARG ROOTFS_DIR=/crossrootfs/arm

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

RUN /scripts/eng/common/cross/build-rootfs.sh arm xenial --skipunmount
Expand Down Expand Up @@ -43,7 +43,7 @@ RUN LLVM_VERSION=16.0.0 LLVM_VERSION_MAJOR="${LLVM_VERSION%%.*}" SANITIZER_RUNTI
cp compiler-rt_build/lib/linux/libclang_rt.*-armhf.a $SANITIZER_RUNTIMES_DIR


FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR
ARG LLVM_VERSION_MAJOR=16

Expand Down
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net8.0/cross/arm64-alpine/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
ARG ROOTFS_DIR=/crossrootfs/arm64

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

RUN /scripts/eng/common/cross/build-rootfs.sh arm64 alpine3.13 --skipunmount


FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR

COPY --from=builder $ROOTFS_DIR $ROOTFS_DIR
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net8.0/cross/arm64/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ARG ROOTFS_DIR=/crossrootfs/arm64

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

RUN /scripts/eng/common/cross/build-rootfs.sh arm64 xenial --skipunmount
Expand Down Expand Up @@ -43,7 +43,7 @@ RUN LLVM_VERSION=16.0.0 LLVM_VERSION_MAJOR="${LLVM_VERSION%%.*}" SANITIZER_RUNTI
cp compiler-rt_build/lib/linux/libclang_rt.*-aarch64.a $SANITIZER_RUNTIMES_DIR


FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR
ARG LLVM_VERSION_MAJOR=16

Expand Down
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net8.0/cross/x86/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ARG ROOTFS_DIR=/crossrootfs/x86

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

RUN /scripts/eng/common/cross/build-rootfs.sh x86 xenial --skipunmount
Expand Down Expand Up @@ -43,7 +43,7 @@ RUN LLVM_VERSION=16.0.0 LLVM_VERSION_MAJOR="${LLVM_VERSION%%.*}" SANITIZER_RUNTI
cp compiler-rt_build/lib/linux/libclang_rt.*-i386.a $SANITIZER_RUNTIMES_DIR


FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR
ARG LLVM_VERSION_MAJOR=16

Expand Down
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net8.0/crossdeps-llvm/amd64/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-builder-amd64 AS builder

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net8.0-crossdeps-amd64

# Install LLVM that we built from source
COPY --from=builder /usr/local /usr/local
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ RUN /usr/local/cmdline-tools/cmdline-tools/bin/sdkmanager --sdk_root="${ANDROID_
RUN rm -r ${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/linux-x86_64/python3/lib/python3.9/site-packages/ \
&& rm -r ${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/linux-x86_64/bin/clang-tidy

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm-amd64

# Install Microsoft OpenJDK from the Microsoft OpenJDK 17 Mariner image.
ENV LANG=en_US.UTF-8
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-android
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-android-amd64

RUN tdnf update -y \
&& tdnf install -y \
Expand Down
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net9.0/cross/amd64-alpine/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ARG ROOTFS_DIR=/crossrootfs/x64

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

RUN /scripts/eng/common/cross/build-rootfs.sh x64 alpine3.13 --skipunmount
Expand Down Expand Up @@ -30,7 +30,7 @@ RUN TARGET_TRIPLE="x86_64-alpine-linux-musl" && \
cmake --build runtimes -j $(getconf _NPROCESSORS_ONLN) && \
cmake --install runtimes --prefix "$ROOTFS_DIR/usr"

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR

COPY --from=builder $ROOTFS_DIR $ROOTFS_DIR
6 changes: 3 additions & 3 deletions src/azurelinux/3.0/net9.0/cross/amd64-sanitizer/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ARG ROOTFS_DIR=/crossrootfs/x64

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

# Use Ubuntu Bionic as the base image for the rootfs
Expand Down Expand Up @@ -38,10 +38,10 @@ RUN TARGET_TRIPLE="x86_64-linux-gnu" && \
-DCOMPILER_RT_BUILD_LIBFUZZER=OFF \
-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON \
-DCOMPILER_RT_INSTALL_PATH="/usr/local/lib/clang/$CLANG_MAJOR_VERSION" && \
cmake --build runtimes -j && \
cmake --build runtimes -j $(getconf _NPROCESSORS_ONLN) && \
cmake --install runtimes --prefix "$ROOTFS_DIR/usr"

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR

COPY --from=builder /usr/local/lib/clang /usr/local/lib/clang
Expand Down
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net9.0/cross/amd64/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ARG ROOTFS_DIR=/crossrootfs/x64

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

RUN /scripts/eng/common/cross/build-rootfs.sh x64 xenial --skipunmount
Expand Down Expand Up @@ -39,7 +39,7 @@ RUN TARGET_TRIPLE="x86_64-linux-gnu" && \
cmake --build runtimes -j $(getconf _NPROCESSORS_ONLN) && \
cmake --install runtimes --prefix "$ROOTFS_DIR/usr"

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR

COPY --from=builder /usr/local/lib/clang /usr/local/lib/clang/
Expand Down
2 changes: 1 addition & 1 deletion src/azurelinux/3.0/net9.0/cross/android/amd64/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-cross-amd64 AS crossrootx64

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-android
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-android-amd64

# Copy crossrootfs from AMD64 build image, so we can build Android-targeting code for that arch
COPY --from=crossrootx64 /crossrootfs/x64 /crossrootfs/x64
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net9.0/cross/arm-alpine/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ARG ROOTFS_DIR=/crossrootfs/arm

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

RUN /scripts/eng/common/cross/build-rootfs.sh arm alpine3.13 --skipunmount
Expand Down Expand Up @@ -30,7 +30,7 @@ RUN TARGET_TRIPLE="armv7-alpine-linux-musleabihf" && \
cmake --build runtimes -j $(getconf _NPROCESSORS_ONLN) && \
cmake --install runtimes --prefix "$ROOTFS_DIR/usr"

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR

COPY --from=builder $ROOTFS_DIR $ROOTFS_DIR
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net9.0/cross/arm/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ARG ROOTFS_DIR=/crossrootfs/arm

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

# The arm rootfs targets Ubuntu 22.04, which is the first version with a
Expand Down Expand Up @@ -41,7 +41,7 @@ RUN TARGET_TRIPLE="arm-linux-gnueabihf" && \
cmake --build runtimes -j $(getconf _NPROCESSORS_ONLN) && \
cmake --install runtimes --prefix "$ROOTFS_DIR/usr"

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR

COPY --from=builder /usr/local/lib/clang /usr/local/lib/clang/
Expand Down
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net9.0/cross/arm64-alpine/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ARG ROOTFS_DIR=/crossrootfs/arm64

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

RUN /scripts/eng/common/cross/build-rootfs.sh arm64 alpine3.13 --skipunmount
Expand Down Expand Up @@ -30,7 +30,7 @@ RUN TARGET_TRIPLE="aarch64-alpine-linux-musl" && \
cmake --build runtimes -j $(getconf _NPROCESSORS_ONLN) && \
cmake --install runtimes --prefix "$ROOTFS_DIR/usr"

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR

COPY --from=builder $ROOTFS_DIR $ROOTFS_DIR
4 changes: 2 additions & 2 deletions src/azurelinux/3.0/net9.0/cross/arm64/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
ARG ROOTFS_DIR=/crossrootfs/arm64

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder AS builder
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-builder-amd64 AS builder
ARG ROOTFS_DIR

RUN /scripts/eng/common/cross/build-rootfs.sh arm64 xenial --skipunmount
Expand Down Expand Up @@ -41,7 +41,7 @@ RUN TARGET_TRIPLE="aarch64-linux-gnu" && \
cmake --build runtimes -j $(getconf _NPROCESSORS_ONLN) && \
cmake --install runtimes --prefix "$ROOTFS_DIR/usr"

FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-crossdeps-llvm-amd64
ARG ROOTFS_DIR

COPY --from=builder /usr/local/lib/clang /usr/local/lib/clang/
Expand Down
Loading

0 comments on commit bde3c9e

Please sign in to comment.