Skip to content

Commit aff5127

Browse files
committed
Diff AZL4.0 against AZL3.0 files
1 parent 5f6ee8a commit aff5127

32 files changed

Lines changed: 194 additions & 163 deletions

File tree

src/azurelinux/3.0/helix/Dockerfile

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
1-
FROM mcr.microsoft.com/azurelinux/base/core:3.0 as venv
1+
FROM mcr.microsoft.com/azurelinux-beta/base/core:4.0 AS venv
22

3-
RUN tdnf install --refresh -y \
4-
build-essential \
5-
ca-certificates-microsoft \
6-
gcc \
3+
RUN dnf install --refresh -y \
4+
ca-certificates \
75
iputils \
86
python3 \
97
python3-devel \
@@ -15,16 +13,14 @@ RUN python3 -m venv /venv && \
1513
pip install ./helix_scripts-*-py3-none-any.whl && \
1614
rm ./helix_scripts-*-py3-none-any.whl
1715

18-
FROM mcr.microsoft.com/azurelinux/base/core:3.0
16+
FROM mcr.microsoft.com/azurelinux-beta/base/core:4.0
1917

2018
# Install .NET and test dependencies
21-
RUN tdnf update -y && \
22-
tdnf install --setopt tsflags=nodocs --refresh -y \
23-
ca-certificates-microsoft \
19+
RUN dnf install --setopt tsflags=nodocs --refresh -y \
20+
ca-certificates \
2421
icu \
2522
iputils \
26-
libgcc-atomic \
27-
libmsquic \
23+
libatomic \
2824
llvm \
2925
python3 \
3026
python3-pip \
@@ -33,13 +29,22 @@ RUN tdnf update -y && \
3329
tar \
3430
tzdata \
3531
which \
36-
&& tdnf clean all
32+
&& dnf clean all
33+
34+
# Install msquic from previous AZL realese until azurelinux-official-ms-oss is available
35+
COPY azl3-repomd.xml.key /tmp/azl3-repomd.xml.key
36+
37+
RUN tdnf update -y && \
38+
tdnf install numactl-libs libxdp libnl3 --setopt tsflags=nodocs --refresh -y \
39+
&& tdnf --repoid azl3 '--repofrompath=azl3,https://packages.microsoft.com/azurelinux/3.0/prod/ms-oss/$basearch' --setopt='azl3.gpgkey=file:///tmp/azl3-repomd.xml.key' --setopt=azl3.gpgcheck=1 --setopt=azl3.repo_gpgcheck=1 install -y libmsquic \
40+
&& tdnf clean all \
41+
&& rm -f /tmp/azl3-repomd.xml.key
3742

3843
# create helixbot user and give rights to sudo without password
3944
RUN /usr/sbin/useradd -c '' --uid 1000 --shell /bin/bash --groups adm helixbot && \
4045
chmod 755 /root && \
4146
echo "helixbot ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/helixbot && \
42-
mkdir /home/helixbot/ && chown -R helixbot /home/helixbot/
47+
mkdir -p /home/helixbot/ && chown -R helixbot /home/helixbot/
4348

4449
USER helixbot
4550

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
-----BEGIN PGP PUBLIC KEY BLOCK-----
2+
3+
mQENBF5v2nQBCADD+o8FgJQUcV9QTgdOTrYo8VtwHNOtTI1WWki8cUx+pI+aarHo
4+
zYN3/QQj+a5lALWeWM/w+aT1q/xGBBkmr9Qo5xWaXeiKZaMVv3H+1HIOjVvrWOHX
5+
zm+FvONB2fwAOclq9p7YaMqWtn4GckxD2YXhkTW0Y4kM+TcMTgSCiGKskjnmTfHw
6+
G+SI9av/CZvqqfNZkdIuNTS9eSqTTenCKkgLvYRKSpkhZj1OuB/iTu+xK0BuoVns
7+
jmju/Fw+tBrcdu3Q1sRXDrh8lnZgHxQUxHjwnyMlTM8a9N2qCgnu+SQjNyk3NXgi
8+
dGSFkdtaF/Z+KNwG10XVs1jzjO/rtsrvrwJvABEBAAG0Ok1hcmluZXIgUlBNIFJl
9+
bGVhc2UgU2lnbmluZyA8bWFyaW5lcnJwbXByb2RAbWljcm9zb2Z0LmNvbT6JATgE
10+
EwEIACIFAl5v2nQCGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEAzZ/tMx
11+
Nc6QfaMH/iqp4Uyd66rAC2tSILWrH6RLkf05TIE0GZheqQkEO7a/Khy3u/Ej/HgC
12+
QUlIC7yrJJGfNCyAx44Z/QsnrWz5EqVZOvjgY9MDpmzfve7KqmbnDBjmbSc6g8IH
13+
HcgUYyfTHEUj69IfgNyJK4Io1vi1WgY/sesAn2ZPpoeT3ihH5FqH7dQkGWeGg1bA
14+
FIaVXm+gMAssaj+k52g/+CnY4KZUHrSkg48OoRB+2a6FqGS8BLeCa+v+zaJCk2fz
15+
EI/NeJwL4Asz1F4AwkEu5X9y8eEGArCXoP0OpYpCxIBZ+7MiKKDOoNf0a/0nOhvs
16+
29LIIOnG+x0/RDfRgFObrF9geKpVTpI=
17+
=ZhFE
18+
-----END PGP PUBLIC KEY BLOCK-----

src/azurelinux/3.0/net11.0/android/amd64/Dockerfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ RUN /usr/local/cmdline-tools/cmdline-tools/bin/sdkmanager --sdk_root="${ANDROID_
2828
# Remove all components of NDK that are flagged by security scanners
2929
RUN rm -r ${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/linux-x86_64/python3/lib/python3.11/site-packages/
3030

31-
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net11.0-crossdeps-llvm-amd64
31+
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-4.0-net11.0-crossdeps-llvm-amd64
3232

3333
# Install Microsoft OpenJDK from the Microsoft OpenJDK 17 Mariner image.
3434
ENV LANG=en_US.UTF-8
@@ -41,8 +41,8 @@ ARG ANDROID_NDK_ROOT
4141

4242

4343
# Dependencies for Android build
44-
RUN tdnf update -y \
45-
&& tdnf install -y \
44+
RUN dnf update -y \
45+
&& dnf install -y \
4646
# Common dependencies
4747
binutils \
4848
# Android dependencies
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net11.0-android-amd64
1+
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-4.0-net11.0-android-amd64
22

3-
RUN tdnf update -y \
4-
&& tdnf install -y \
3+
RUN dnf update -y \
4+
&& dnf install -y \
55
moby-engine \
6-
moby-cli
6+
docker-cli
Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,33 @@
1-
FROM mcr.microsoft.com/dotnet/runtime-deps:10.0-azurelinux3.0
1+
FROM mcr.microsoft.com/dotnet/sdk:10.0-azurelinux3.0 AS powershell
2+
ENV POWERSHELL_VERSION=7.6.1
3+
RUN dotnet tool install --tool-path /powershell --version ${POWERSHELL_VERSION} PowerShell
24

3-
RUN tdnf update -y && \
4-
tdnf install -y \
5-
awk \
5+
FROM mcr.microsoft.com/dotnet/runtime:10.0-azurelinux3.0 AS runtime
6+
7+
FROM mcr.microsoft.com/azurelinux-beta/base/core:4.0
8+
9+
# Install .NET runtime dependencies (inlined from runtime-deps) and build tools
10+
RUN dnf update -y && \
11+
dnf install -y \
12+
gawk \
613
azure-cli \
7-
ca-certificates-microsoft \
14+
ca-certificates \
815
# added to ensure latest patches over the base image
916
curl \
1017
git \
18+
icu \
1119
nodejs24 \
1220
nodejs24-npm \
13-
powershell \
1421
# provides 'useradd', required by Azure DevOps
1522
shadow-utils \
1623
tar \
1724
# Provides 'su', required by Azure DevOps
1825
util-linux \
19-
&& tdnf clean all
26+
&& dnf clean all
27+
28+
COPY --from=runtime /usr/share/dotnet /usr/share/dotnet
29+
COPY --from=powershell /powershell /usr/share/powershell
30+
RUN ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet && \
31+
ln -s /usr/share/powershell/pwsh /usr/bin/pwsh && \
32+
ln -sf /usr/bin/node-24 /usr/bin/node && \
33+
ln -sf /usr/bin/npm-24 /usr/bin/npm

src/azurelinux/3.0/net11.0/cross/amd64-musl/Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
ARG ROOTFS_DIR=/crossrootfs/x64
22

3-
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net11.0-crossdeps-builder-amd64 AS builder
3+
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-4.0-net11.0-crossdeps-builder-amd64 AS builder
44
ARG ROOTFS_DIR
55

66
RUN SSL_CERT_FILE=/etc/pki/tls/certs/ca-bundle.crt /scripts/eng/common/cross/build-rootfs.sh x64 alpine3.17 --skipunmount --skipemulation
@@ -34,7 +34,7 @@ RUN TARGET_TRIPLE="x86_64-alpine-linux-musl" && \
3434
cmake --build runtimes -j $(getconf _NPROCESSORS_ONLN) && \
3535
cmake --install runtimes --prefix "$ROOTFS_DIR/usr"
3636

37-
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net11.0-crossdeps-llvm-amd64
37+
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-4.0-net11.0-crossdeps-llvm-amd64
3838
ARG ROOTFS_DIR
3939

4040
COPY --from=builder $ROOTFS_DIR $ROOTFS_DIR

src/azurelinux/3.0/net11.0/cross/amd64-sanitizer/Dockerfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
ARG ROOTFS_DIR=/crossrootfs/x64
22

3-
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net11.0-crossdeps-builder-amd64 AS builder
3+
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-4.0-net11.0-crossdeps-builder-amd64 AS builder
44
ARG ROOTFS_DIR
55

66
# Use Ubuntu Bionic as the base image for the rootfs
@@ -35,7 +35,7 @@ RUN TARGET_TRIPLE="x86_64-linux-gnu" && \
3535
-DLIBCXX_CXX_ABI_INCLUDE_PATHS="$CPP_INCLUDES;$TRIPLET_INCLUDES" \
3636
-DCOMPILER_RT_CXX_LIBRARY="libcxx" \
3737
-DCOMPILER_RT_STATIC_CXX_LIBRARY=ON \
38-
-DSANITIZER_CXX_ABI_LIBNAME="libstdc++" \
38+
-DSANITIZER_CXX_ABI_LIBNAME="libstdc++" \
3939
-DCOMPILER_RT_BUILD_MEMPROF=OFF \
4040
# The libfuzzer build in LLVM doesn't correctly forward the required CMake properties to the "fuzzed libc++" build
4141
# so skip it here.
@@ -47,7 +47,7 @@ RUN TARGET_TRIPLE="x86_64-linux-gnu" && \
4747
cmake --build runtimes -j && \
4848
cmake --install runtimes --prefix "$ROOTFS_DIR/usr"
4949

50-
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net11.0-crossdeps-llvm-amd64
50+
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-4.0-net11.0-crossdeps-llvm-amd64
5151
ARG ROOTFS_DIR
5252

5353
COPY --from=builder /usr/local/lib/clang /usr/local/lib/clang

src/azurelinux/3.0/net11.0/cross/amd64/Dockerfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
ARG ROOTFS_DIR=/crossrootfs/x64
22

3-
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net11.0-crossdeps-builder-amd64 AS builder
3+
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-4.0-net11.0-crossdeps-builder-amd64 AS builder
44
ARG ROOTFS_DIR
55

66
RUN PYTHON_EXECUTABLE="$ROOTFS_PIP_HOME/bin/python" /scripts/eng/common/cross/build-rootfs.sh x64 bionic --skipunmount --skipemulation
@@ -32,7 +32,7 @@ RUN TARGET_TRIPLE="x86_64-linux-gnu" && \
3232
-DLIBCXX_CXX_ABI_INCLUDE_PATHS="$CPP_INCLUDES;$TRIPLET_INCLUDES" \
3333
-DCOMPILER_RT_CXX_LIBRARY="libcxx" \
3434
-DCOMPILER_RT_STATIC_CXX_LIBRARY=ON \
35-
-DCOMPILER_RT_BUILD_SANITIZERS=OFF \
35+
-DCOMPILER_RT_BUILD_SANITIZERS=OFF \
3636
-DCOMPILER_RT_BUILD_MEMPROF=OFF \
3737
# The libfuzzer build in LLVM doesn't correctly forward the required CMake properties to the "fuzzed libc++" build
3838
# so skip it here.
@@ -42,7 +42,7 @@ RUN TARGET_TRIPLE="x86_64-linux-gnu" && \
4242
cmake --build runtimes -j $(getconf _NPROCESSORS_ONLN) && \
4343
cmake --install runtimes --prefix "$ROOTFS_DIR/usr"
4444

45-
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net11.0-crossdeps-llvm-amd64
45+
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-4.0-net11.0-crossdeps-llvm-amd64
4646
ARG ROOTFS_DIR
4747

4848
COPY --from=builder /usr/local/lib/clang /usr/local/lib/clang/
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net11.0-cross-amd64 AS crossrootx64
1+
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-4.0-net11.0-cross-amd64 AS crossrootx64
22

3-
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net11.0-android-amd64
3+
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-4.0-net11.0-android-amd64
44

55
# Copy crossrootfs from AMD64 build image, so we can build Android-targeting code for that arch
66
COPY --from=crossrootx64 /crossrootfs/x64 /crossrootfs/x64

src/azurelinux/3.0/net11.0/cross/android/openssl/amd64/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net11.0-cross-android-amd64
1+
FROM mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-4.0-net11.0-cross-android-amd64
22

33
# Copy the OpenSSL headers and libs from the x64 rootfs into the Anroid NDK so dotnet/runtime's
44
# OpenSSL headers hack can find them for the linux-bionic build.

0 commit comments

Comments
 (0)