From 0dd726c49bfde135077a07a01d36bd59d5544171 Mon Sep 17 00:00:00 2001 From: Adeel <3840695+am11@users.noreply.github.com> Date: Fri, 26 Aug 2022 22:03:48 +0300 Subject: [PATCH] Delete Ubuntu 16.04 and move images to 22.04 --- src/ubuntu/16.04/Dockerfile | 58 ---- src/ubuntu/16.04/arm32v7/Dockerfile | 18 -- src/ubuntu/16.04/arm64v8/Dockerfile | 19 -- src/ubuntu/16.04/coredeps/Dockerfile | 37 --- src/ubuntu/16.04/cross/Dockerfile | 3 - src/ubuntu/16.04/cross/arm-alpine/Dockerfile | 29 -- .../16.04/cross/arm-alpine/hooks/pre-build | 5 - .../16.04/cross/arm64-alpine/Dockerfile | 23 -- .../16.04/cross/arm64-alpine/hooks/pre-build | 5 - src/ubuntu/16.04/cross/arm64/Dockerfile | 10 - src/ubuntu/16.04/cross/arm64/hooks/pre-build | 5 - src/ubuntu/16.04/cross/hooks/post-build | 1 - src/ubuntu/16.04/cross/hooks/pre-build | 5 - src/ubuntu/16.04/crossdeps/Dockerfile | 53 ---- src/ubuntu/16.04/debpkg/Dockerfile | 15 -- src/ubuntu/16.04/helix/arm32v7/Dockerfile | 58 ---- src/ubuntu/16.04/helix/arm64v8/Dockerfile | 50 ---- src/ubuntu/16.04/mlnet/Dockerfile | 11 - src/ubuntu/16.04/mlnet/helix/Dockerfile | 53 ---- src/ubuntu/22.04/cross/arm-alpine/Dockerfile | 3 + .../cross/arm-alpine/hooks/post-build | 0 .../22.04/cross/arm-alpine/hooks/pre-build | 5 + .../22.04/cross/arm64-alpine/Dockerfile | 3 + .../cross/arm64-alpine/hooks/post-build | 0 .../22.04/cross/arm64-alpine/hooks/pre-build | 5 + src/ubuntu/22.04/cross/arm64/Dockerfile | 3 + .../cross/arm64/hooks/post-build | 0 src/ubuntu/22.04/cross/arm64/hooks/pre-build | 5 + src/ubuntu/22.04/mlnet/Dockerfile | 8 + src/ubuntu/22.04/mlnet/helix/Dockerfile | 21 ++ src/ubuntu/manifest.json | 251 +++++------------- 31 files changed, 116 insertions(+), 646 deletions(-) delete mode 100644 src/ubuntu/16.04/Dockerfile delete mode 100644 src/ubuntu/16.04/arm32v7/Dockerfile delete mode 100644 src/ubuntu/16.04/arm64v8/Dockerfile delete mode 100644 src/ubuntu/16.04/coredeps/Dockerfile delete mode 100644 src/ubuntu/16.04/cross/Dockerfile delete mode 100644 src/ubuntu/16.04/cross/arm-alpine/Dockerfile delete mode 100755 src/ubuntu/16.04/cross/arm-alpine/hooks/pre-build delete mode 100644 src/ubuntu/16.04/cross/arm64-alpine/Dockerfile delete mode 100755 src/ubuntu/16.04/cross/arm64-alpine/hooks/pre-build delete mode 100644 src/ubuntu/16.04/cross/arm64/Dockerfile delete mode 100755 src/ubuntu/16.04/cross/arm64/hooks/pre-build delete mode 120000 src/ubuntu/16.04/cross/hooks/post-build delete mode 100755 src/ubuntu/16.04/cross/hooks/pre-build delete mode 100644 src/ubuntu/16.04/crossdeps/Dockerfile delete mode 100644 src/ubuntu/16.04/debpkg/Dockerfile delete mode 100644 src/ubuntu/16.04/helix/arm32v7/Dockerfile delete mode 100644 src/ubuntu/16.04/helix/arm64v8/Dockerfile delete mode 100644 src/ubuntu/16.04/mlnet/Dockerfile delete mode 100644 src/ubuntu/16.04/mlnet/helix/Dockerfile create mode 100644 src/ubuntu/22.04/cross/arm-alpine/Dockerfile rename src/ubuntu/{16.04 => 22.04}/cross/arm-alpine/hooks/post-build (100%) create mode 100755 src/ubuntu/22.04/cross/arm-alpine/hooks/pre-build create mode 100644 src/ubuntu/22.04/cross/arm64-alpine/Dockerfile rename src/ubuntu/{16.04 => 22.04}/cross/arm64-alpine/hooks/post-build (100%) create mode 100755 src/ubuntu/22.04/cross/arm64-alpine/hooks/pre-build create mode 100644 src/ubuntu/22.04/cross/arm64/Dockerfile rename src/ubuntu/{16.04 => 22.04}/cross/arm64/hooks/post-build (100%) create mode 100755 src/ubuntu/22.04/cross/arm64/hooks/pre-build create mode 100644 src/ubuntu/22.04/mlnet/Dockerfile create mode 100644 src/ubuntu/22.04/mlnet/helix/Dockerfile diff --git a/src/ubuntu/16.04/Dockerfile b/src/ubuntu/16.04/Dockerfile deleted file mode 100644 index cae958bcd..000000000 --- a/src/ubuntu/16.04/Dockerfile +++ /dev/null @@ -1,58 +0,0 @@ -FROM ubuntu:16.04 - -# Install the base toolchain we need to build anything (clang, cmake, make and the like) -# this does not include libraries that we need to compile different projects, we'd like -# them in a different layer. -RUN apt-get update && \ - apt-get install -y apt-transport-https ca-certificates gnupg software-properties-common wget && \ - echo "deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main" | tee -a /etc/apt/sources.list.d/llvm.list && \ - wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - && \ - wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc | apt-key add - && \ - apt-add-repository 'deb https://apt.kitware.com/ubuntu/ xenial main' && \ - apt-get update && \ - apt-get install -y \ - clang-9 \ - cmake \ - gdb \ - liblldb-6.0-dev \ - lldb-6.0 \ - llvm-9 \ - locales \ - make \ - python-lldb-6.0 \ - sudo && \ - apt-get clean - -# Install tools used by the VSO build automation. -RUN apt-get install -y git \ - nodejs \ - npm \ - tar \ - zip && \ - apt-get clean && \ - npm install -g azure-cli@0.9.20 && \ - npm cache clean - -# .NET SDK MSBuild requires US.UTF-8 locale to execute tasks -RUN locale-gen en_US.UTF-8 - -# Runtime dependencies -RUN apt-get install -y \ - autoconf \ - automake \ - build-essential \ - gettext \ - jq \ - libcurl4-openssl-dev \ - libgdiplus \ - libicu-dev \ - libkrb5-dev \ - liblttng-ust-dev \ - libnuma-dev \ - libssl-dev \ - libtool \ - libunwind8-dev \ - libunwind8 \ - python3 \ - uuid-dev \ - && apt-get clean diff --git a/src/ubuntu/16.04/arm32v7/Dockerfile b/src/ubuntu/16.04/arm32v7/Dockerfile deleted file mode 100644 index 7c4a5d4ed..000000000 --- a/src/ubuntu/16.04/arm32v7/Dockerfile +++ /dev/null @@ -1,18 +0,0 @@ -FROM arm32v7/ubuntu:16.04 - -RUN apt-get update && \ - apt-get install -y \ - autoconf \ - automake \ - build-essential \ - libstdc++6 \ - libunwind8 \ - libunwind8-dev \ - libicu-dev \ - liblttng-ust-dev \ - libcurl4-openssl-dev \ - libicu-dev \ - libssl-dev \ - libtool \ - libkrb5-dev \ - && rm -rf /var/lib/apt/lists/* diff --git a/src/ubuntu/16.04/arm64v8/Dockerfile b/src/ubuntu/16.04/arm64v8/Dockerfile deleted file mode 100644 index f72a12296..000000000 --- a/src/ubuntu/16.04/arm64v8/Dockerfile +++ /dev/null @@ -1,19 +0,0 @@ -FROM arm64v8/ubuntu:16.04 - -RUN apt-get update && \ - apt-get install -y \ - autoconf \ - automake \ - build-essential \ - libstdc++6 \ - libunwind8 \ - libunwind8-dev \ - libicu-dev \ - liblttng-ust-dev \ - libcurl4-openssl-dev \ - libicu-dev \ - libnuma-dev \ - libssl-dev \ - libtool \ - libkrb5-dev \ - && rm -rf /var/lib/apt/lists/* diff --git a/src/ubuntu/16.04/coredeps/Dockerfile b/src/ubuntu/16.04/coredeps/Dockerfile deleted file mode 100644 index ae4136771..000000000 --- a/src/ubuntu/16.04/coredeps/Dockerfile +++ /dev/null @@ -1,37 +0,0 @@ -FROM mcr.microsoft.com/powershell:6.2.1-ubuntu-16.04 - -# Install tools used by the VSO build automation. nodejs-legacy is a Debian specific -# package that provides `node' on the path (which azure cli needs). -RUN apt-get update \ - && apt-get install -y \ - git \ - nodejs \ - nodejs-legacy \ - npm \ - tar \ - zip \ - && rm -rf /var/lib/apt/lists/* \ - && npm install -g azure-cli@0.9.20 \ - && npm cache clean - -# Runtime dependencies -RUN apt-get update \ - && apt-get -f install -y \ - && apt-get install -y \ - autoconf \ - automake \ - build-essential \ - gettext \ - jq \ - libcurl4-openssl-dev \ - libgdiplus \ - libicu-dev \ - libkrb5-dev \ - liblttng-ust-dev \ - libnuma-dev \ - libssl-dev \ - libtool \ - libunwind8 \ - libunwind8-dev \ - uuid-dev \ - && rm -rf /var/lib/apt/lists/* diff --git a/src/ubuntu/16.04/cross/Dockerfile b/src/ubuntu/16.04/cross/Dockerfile deleted file mode 100644 index db9321d3c..000000000 --- a/src/ubuntu/16.04/cross/Dockerfile +++ /dev/null @@ -1,3 +0,0 @@ -FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-16.04-crossdeps - -ADD rootfs.arm.tar crossrootfs diff --git a/src/ubuntu/16.04/cross/arm-alpine/Dockerfile b/src/ubuntu/16.04/cross/arm-alpine/Dockerfile deleted file mode 100644 index 1f3d8edf8..000000000 --- a/src/ubuntu/16.04/cross/arm-alpine/Dockerfile +++ /dev/null @@ -1,29 +0,0 @@ -FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-16.04-crossdeps - -# Install bison. This is required to build musl-cross-make -RUN apt-get update \ - && apt-get install -y \ - bison \ - && rm -rf /var/lib/apt/lists/* - -# Workaround to build a functioning ld.gold which can link for linux-musl arm -RUN cd /tmp \ - && wget https://ftp.gnu.org/gnu/binutils/binutils-2.31.1.tar.gz \ - && tar -xf binutils-2.31.1.tar.gz \ - && cd binutils-2.31.1 \ - && ./configure \ - --disable-werror \ - --target=armv7-alpine-linux-musleabihf \ - --prefix=/usr \ - --libdir=/lib \ - --disable-multilib \ - --with-sysroot=armv7-alpine-linux-musleabihf \ - --enable-gold=yes \ - --enable-plugins=yes \ - --program-prefix=armv7-alpine-linux-musleabihf- \ - && make \ - && make install \ - && cd .. \ - && rm -r * - -ADD rootfs.arm.tar crossrootfs diff --git a/src/ubuntu/16.04/cross/arm-alpine/hooks/pre-build b/src/ubuntu/16.04/cross/arm-alpine/hooks/pre-build deleted file mode 100755 index 34b390b48..000000000 --- a/src/ubuntu/16.04/cross/arm-alpine/hooks/pre-build +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/env sh - -SCRIPT=$(readlink -f "$0") -SCRIPTPATH=$(dirname "$SCRIPT") -$SCRIPTPATH/../../../../build-scripts/build-rootfs.sh ubuntu-16.04 alpine arm lldb3.9 diff --git a/src/ubuntu/16.04/cross/arm64-alpine/Dockerfile b/src/ubuntu/16.04/cross/arm64-alpine/Dockerfile deleted file mode 100644 index 8910f1a8d..000000000 --- a/src/ubuntu/16.04/cross/arm64-alpine/Dockerfile +++ /dev/null @@ -1,23 +0,0 @@ -FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-16.04-crossdeps - -# Install binutils-aarch64-linux-gnu -# -# Also install bison. This is required to build musl-cross-make -RUN apt-get update \ - && apt-get install -y \ - binutils-aarch64-linux-gnu \ - bison \ - && rm -rf /var/lib/apt/lists/* - -# Workaround to build a functioning ld.gold which can link for linux-musl arm64 -RUN cd /tmp \ - && wget https://ftp.gnu.org/gnu/binutils/binutils-2.31.1.tar.gz \ - && tar -xf binutils-2.31.1.tar.gz \ - && cd binutils-2.31.1 \ - && ./configure --disable-werror --target=aarch64-alpine-linux-musl --prefix=/usr --libdir=/lib --disable-multilib --with-sysroot=aarch64-alpine-linux-musl --enable-gold=yes --enable-plugins=yes --program-prefix=aarch64-alpine-linux-musl- \ - && make \ - && make install \ - && cd .. \ - && rm -r * - -ADD rootfs.arm64.tar crossrootfs diff --git a/src/ubuntu/16.04/cross/arm64-alpine/hooks/pre-build b/src/ubuntu/16.04/cross/arm64-alpine/hooks/pre-build deleted file mode 100755 index df499bf68..000000000 --- a/src/ubuntu/16.04/cross/arm64-alpine/hooks/pre-build +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/env sh - -SCRIPT=$(readlink -f "$0") -SCRIPTPATH=$(dirname "$SCRIPT") -$SCRIPTPATH/../../../../build-scripts/build-rootfs.sh ubuntu-16.04 alpine arm64 lldb3.9 diff --git a/src/ubuntu/16.04/cross/arm64/Dockerfile b/src/ubuntu/16.04/cross/arm64/Dockerfile deleted file mode 100644 index fbe4f850a..000000000 --- a/src/ubuntu/16.04/cross/arm64/Dockerfile +++ /dev/null @@ -1,10 +0,0 @@ -FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-16.04-crossdeps - -# Install binutils-aarch64-linux-gnu -RUN apt-get update \ - && apt-get -f install -y \ - && apt-get install -y \ - binutils-aarch64-linux-gnu \ - && rm -rf /var/lib/apt/lists/* - -ADD rootfs.arm64.tar crossrootfs diff --git a/src/ubuntu/16.04/cross/arm64/hooks/pre-build b/src/ubuntu/16.04/cross/arm64/hooks/pre-build deleted file mode 100755 index f02d2ff82..000000000 --- a/src/ubuntu/16.04/cross/arm64/hooks/pre-build +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/env sh - -SCRIPT=$(readlink -f "$0") -SCRIPTPATH=$(dirname "$SCRIPT") -$SCRIPTPATH/../../../../build-scripts/build-rootfs.sh ubuntu-16.04 xenial arm64 lldb3.9 diff --git a/src/ubuntu/16.04/cross/hooks/post-build b/src/ubuntu/16.04/cross/hooks/post-build deleted file mode 120000 index 782c7eb76..000000000 --- a/src/ubuntu/16.04/cross/hooks/post-build +++ /dev/null @@ -1 +0,0 @@ -../../../build-scripts/build-rootfs-cleanup.sh \ No newline at end of file diff --git a/src/ubuntu/16.04/cross/hooks/pre-build b/src/ubuntu/16.04/cross/hooks/pre-build deleted file mode 100755 index 63580b54a..000000000 --- a/src/ubuntu/16.04/cross/hooks/pre-build +++ /dev/null @@ -1,5 +0,0 @@ -#!/usr/bin/env sh - -SCRIPT=$(readlink -f "$0") -SCRIPTPATH=$(dirname "$SCRIPT") -$SCRIPTPATH/../../../build-scripts/build-rootfs.sh ubuntu-16.04 xenial diff --git a/src/ubuntu/16.04/crossdeps/Dockerfile b/src/ubuntu/16.04/crossdeps/Dockerfile deleted file mode 100644 index a40c80497..000000000 --- a/src/ubuntu/16.04/crossdeps/Dockerfile +++ /dev/null @@ -1,53 +0,0 @@ -FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-16.04-coredeps - -# Install the base toolchain we need to build anything (clang, cmake, make and the like). -RUN apt-get update \ - && apt-get install -y \ - apt-transport-https \ - ca-certificates \ - gnupg \ - software-properties-common \ - wget \ - && wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc | apt-key add - \ - && apt-add-repository 'deb https://apt.kitware.com/ubuntu/ xenial main' \ - && apt-get update \ - && apt-get install -y \ - binfmt-support \ - binutils-arm-linux-gnueabihf \ - build-essential \ - cmake \ - debootstrap \ - gdb \ - make \ - qemu \ - qemu-user-static \ - && rm -rf /var/lib/apt/lists/* - -RUN apt-get update \ - && apt-add-repository 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main' \ - && wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - \ - && apt-get update \ - && apt-get install -y \ - clang-9 \ - clang-tools-9 \ - liblldb-6.0-dev \ - lld-9 \ - lldb-6.0 \ - llvm-9 \ - python-lldb-6.0 \ - && rm -rf /var/lib/apt/lists/* - -# rebuild curl with OpenSSL backend to avoid build issues with GnuTLS. -RUN echo "deb-src http://archive.ubuntu.com/ubuntu/ xenial main restricted" >> /etc/apt/sources.list \ - && echo "deb-src http://archive.ubuntu.com/ubuntu/ xenial-updates multiverse" >> /etc/apt/sources.list \ - && echo "deb-src http://security.ubuntu.com/ubuntu/ xenial-security universe" >> /etc/apt/sources.list \ - && echo "deb-src http://us.archive.ubuntu.com/ubuntu/ xenial-updates main restricted" >> /etc/apt/sources.list \ - && apt-get update \ - && mkdir /tmp/curl && cd /tmp/curl \ - && apt-get source -y curl && apt-get build-dep -y curl && apt install -y devscripts \ - && sed -i.ORI -e 's/dh_install\ -pcurl /dh_install /' -e 's/dh_install -plibcurl3/dh_install -pcurl -plibcurl3/' curl*/debian/rules \ - && (cd curl* && DEB_BUILD_OPTIONS=nocheck debuild -b -uc -us) \ - && dpkg --force-all -i curl_*.deb \ - && curl --version | grep OpenSSL \ - && rm -rf /var/lib/apt/lists/* /tmp/curl - diff --git a/src/ubuntu/16.04/debpkg/Dockerfile b/src/ubuntu/16.04/debpkg/Dockerfile deleted file mode 100644 index 3a240bbd7..000000000 --- a/src/ubuntu/16.04/debpkg/Dockerfile +++ /dev/null @@ -1,15 +0,0 @@ -FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-16.04 - -# Install the deb packaging toolchain we need to build debs -RUN apt-get update \ - && apt-get -y install \ - debhelper \ - build-essential \ - devscripts \ - && rm -rf /var/lib/apt/lists/* - -# liblldb is needed so deb package build does not throw missing library info errors -RUN echo "deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-3.9 main" > /etc/apt/sources.list.d/llvm-toolchain.list \ - && apt-get update \ - && apt-get -y install liblldb-3.9 \ - && rm -rf /var/lib/apt/lists/* diff --git a/src/ubuntu/16.04/helix/arm32v7/Dockerfile b/src/ubuntu/16.04/helix/arm32v7/Dockerfile deleted file mode 100644 index 1d9785e4f..000000000 --- a/src/ubuntu/16.04/helix/arm32v7/Dockerfile +++ /dev/null @@ -1,58 +0,0 @@ -FROM arm32v7/ubuntu:16.04 - -# Install Helix Dependencies - -# Workaround: https://github.com/pypa/wheel/issues/367 -ENV _PYTHON_HOST_PLATFORM=linux_armv7l - -# Can remove the mono preview repo when we no longer depend on pre-release libgdiplus - -RUN apt-get update && \ - apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF && \ - apt-get install -y apt-transport-https ca-certificates && \ - echo "deb https://download.mono-project.com/repo/ubuntu stable-xenial main" | tee /etc/apt/sources.list.d/mono-official-preview.list && \ - apt-get update && \ - apt-get install -y \ - autoconf \ - automake \ - build-essential \ - gdb \ - gss-ntlmssp \ - iputils-ping \ - libcurl3 \ - libffi-dev \ - libgdiplus \ - libicu-dev \ - libssl-dev \ - libtool \ - libunwind8 \ - libunwind-dev \ - lldb-3.9 \ - locales \ - locales-all \ - python3-dev \ - python3-pip \ - sudo \ - tzdata \ - unzip \ - && rm -rf /var/lib/apt/lists/* \ - && localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 - -ENV LANG=en_US.utf8 - -RUN ln -sf /usr/bin/python3 /usr/bin/python && \ - python -m pip install --upgrade pip==20.2 && \ - python -m pip install virtualenv==16.6.0 && \ - pip download --no-deps helix-scripts --index-url https://dnceng.pkgs.visualstudio.com/public/_packaging/helix-client-prod/pypi/simple && \ - export CRYPTOGRAPHY_DONT_BUILD_RUST=1 && \ - pip install ./helix_scripts-*-py3-none-any.whl - -RUN adduser --disabled-password --gecos '' --uid 1001 --shell /bin/bash --ingroup adm helixbot && \ - chmod -R +x /root && \ - echo 'helixbot ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers - -USER helixbot - -RUN python -m virtualenv --no-site-packages /home/helixbot/.vsts-env - - diff --git a/src/ubuntu/16.04/helix/arm64v8/Dockerfile b/src/ubuntu/16.04/helix/arm64v8/Dockerfile deleted file mode 100644 index c4b28c1b7..000000000 --- a/src/ubuntu/16.04/helix/arm64v8/Dockerfile +++ /dev/null @@ -1,50 +0,0 @@ -FROM arm64v8/ubuntu:16.04 - -# Install Helix Dependencies - -RUN apt-get update && \ - apt-get install -y \ - autoconf \ - automake \ - build-essential \ - gdb \ - gss-ntlmssp \ - iputils-ping \ - libcurl3 \ - libffi-dev \ - libgdiplus \ - libicu-dev \ - libnuma-dev \ - libssl-dev \ - libtool \ - libunwind8 \ - libunwind-dev \ - lldb-3.9 \ - locales \ - locales-all \ - python3-dev \ - python3-pip \ - sudo \ - tzdata \ - unzip \ - && rm -rf /var/lib/apt/lists/* \ - && localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 - -ENV LANG=en_US.utf8 - -RUN ln -sf /usr/bin/python3 /usr/bin/python && \ - python -m pip install --upgrade pip==20.2 && \ - python -m pip install virtualenv==16.6.0 && \ - pip download --no-deps helix-scripts --index-url https://dnceng.pkgs.visualstudio.com/public/_packaging/helix-client-prod/pypi/simple && \ - export CRYPTOGRAPHY_DONT_BUILD_RUST=1 && \ - pip install ./helix_scripts-*-py3-none-any.whl - -RUN adduser --disabled-password --gecos '' --uid 1001 --shell /bin/bash --ingroup adm helixbot && \ - chmod -R +x /root && \ - echo 'helixbot ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers - -USER helixbot - -RUN python -m virtualenv --no-site-packages /home/helixbot/.vsts-env - - diff --git a/src/ubuntu/16.04/mlnet/Dockerfile b/src/ubuntu/16.04/mlnet/Dockerfile deleted file mode 100644 index cdbbf9381..000000000 --- a/src/ubuntu/16.04/mlnet/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-16.04 - -# Install openmp support with Clang -RUN apt-get update \ - && apt-get install -y \ - clang-3.9 \ - libomp5 \ - libomp-dev - -# Configure system locale -RUN update-locale LANG=en_US.UTF-8 diff --git a/src/ubuntu/16.04/mlnet/helix/Dockerfile b/src/ubuntu/16.04/mlnet/helix/Dockerfile deleted file mode 100644 index 1391ddbe9..000000000 --- a/src/ubuntu/16.04/mlnet/helix/Dockerfile +++ /dev/null @@ -1,53 +0,0 @@ -FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-16.04-mlnet - -# Install Helix Dependencies -ENV DEBIAN_FRONTEND=noninteractive - -RUN apt-get update && \ - apt-get install -qq -y \ - autoconf \ - automake \ - build-essential \ - cmake \ - clang \ - gcc \ - gdb \ - git \ - gss-ntlmssp \ - iputils-ping \ - libcurl3 \ - libffi-dev \ - libgdiplus \ - libicu-dev \ - libssl-dev \ - libtool \ - libunwind8 \ - libunwind-dev \ - lldb-3.9 \ - locales \ - locales-all \ - python3-dev \ - python3-pip \ - sudo \ - tzdata \ - unzip \ - && rm -rf /var/lib/apt/lists/* \ - \ - && localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 - -ENV LANG=en_US.utf8 - -RUN ln -sf /usr/bin/python3 /usr/bin/python && \ - python -m pip install --upgrade pip==20.2 && \ - python -m pip install virtualenv==16.6.0 && \ - pip download --no-deps helix-scripts --index-url https://dnceng.pkgs.visualstudio.com/public/_packaging/helix-client-prod/pypi/simple && \ - pip install ./helix_scripts-*-py3-none-any.whl - -# create helixbot user and give rights to sudo without password -RUN /usr/sbin/adduser --disabled-password --gecos '' --uid 1000 --shell /bin/bash --ingroup adm helixbot && \ - chmod 755 /root && \ - echo "helixbot ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers - -USER helixbot - -RUN python -m virtualenv --no-site-packages /home/helixbot/.vsts-env diff --git a/src/ubuntu/22.04/cross/arm-alpine/Dockerfile b/src/ubuntu/22.04/cross/arm-alpine/Dockerfile new file mode 100644 index 000000000..092037484 --- /dev/null +++ b/src/ubuntu/22.04/cross/arm-alpine/Dockerfile @@ -0,0 +1,3 @@ +FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04-crossdeps + +ADD rootfs.arm.tar crossrootfs diff --git a/src/ubuntu/16.04/cross/arm-alpine/hooks/post-build b/src/ubuntu/22.04/cross/arm-alpine/hooks/post-build similarity index 100% rename from src/ubuntu/16.04/cross/arm-alpine/hooks/post-build rename to src/ubuntu/22.04/cross/arm-alpine/hooks/post-build diff --git a/src/ubuntu/22.04/cross/arm-alpine/hooks/pre-build b/src/ubuntu/22.04/cross/arm-alpine/hooks/pre-build new file mode 100755 index 000000000..b867f6e19 --- /dev/null +++ b/src/ubuntu/22.04/cross/arm-alpine/hooks/pre-build @@ -0,0 +1,5 @@ +#!/usr/bin/env sh + +SCRIPT=$(readlink -f "$0") +SCRIPTPATH=$(dirname "$SCRIPT") +$SCRIPTPATH/../../../../build-scripts/build-rootfs.sh ubuntu-22.04 alpine arm lldb14 diff --git a/src/ubuntu/22.04/cross/arm64-alpine/Dockerfile b/src/ubuntu/22.04/cross/arm64-alpine/Dockerfile new file mode 100644 index 000000000..f4afeafbf --- /dev/null +++ b/src/ubuntu/22.04/cross/arm64-alpine/Dockerfile @@ -0,0 +1,3 @@ +FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04-crossdeps + +ADD rootfs.arm64.tar crossrootfs diff --git a/src/ubuntu/16.04/cross/arm64-alpine/hooks/post-build b/src/ubuntu/22.04/cross/arm64-alpine/hooks/post-build similarity index 100% rename from src/ubuntu/16.04/cross/arm64-alpine/hooks/post-build rename to src/ubuntu/22.04/cross/arm64-alpine/hooks/post-build diff --git a/src/ubuntu/22.04/cross/arm64-alpine/hooks/pre-build b/src/ubuntu/22.04/cross/arm64-alpine/hooks/pre-build new file mode 100755 index 000000000..15441c09b --- /dev/null +++ b/src/ubuntu/22.04/cross/arm64-alpine/hooks/pre-build @@ -0,0 +1,5 @@ +#!/usr/bin/env sh + +SCRIPT=$(readlink -f "$0") +SCRIPTPATH=$(dirname "$SCRIPT") +$SCRIPTPATH/../../../../build-scripts/build-rootfs.sh ubuntu-22.04 alpine arm64 diff --git a/src/ubuntu/22.04/cross/arm64/Dockerfile b/src/ubuntu/22.04/cross/arm64/Dockerfile new file mode 100644 index 000000000..f4afeafbf --- /dev/null +++ b/src/ubuntu/22.04/cross/arm64/Dockerfile @@ -0,0 +1,3 @@ +FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04-crossdeps + +ADD rootfs.arm64.tar crossrootfs diff --git a/src/ubuntu/16.04/cross/arm64/hooks/post-build b/src/ubuntu/22.04/cross/arm64/hooks/post-build similarity index 100% rename from src/ubuntu/16.04/cross/arm64/hooks/post-build rename to src/ubuntu/22.04/cross/arm64/hooks/post-build diff --git a/src/ubuntu/22.04/cross/arm64/hooks/pre-build b/src/ubuntu/22.04/cross/arm64/hooks/pre-build new file mode 100755 index 000000000..180045523 --- /dev/null +++ b/src/ubuntu/22.04/cross/arm64/hooks/pre-build @@ -0,0 +1,5 @@ +#!/usr/bin/env sh + +SCRIPT=$(readlink -f "$0") +SCRIPTPATH=$(dirname "$SCRIPT") +$SCRIPTPATH/../../../../build-scripts/build-rootfs.sh ubuntu-22.04 jammy arm64 lldb14 diff --git a/src/ubuntu/22.04/mlnet/Dockerfile b/src/ubuntu/22.04/mlnet/Dockerfile new file mode 100644 index 000000000..3a937037a --- /dev/null +++ b/src/ubuntu/22.04/mlnet/Dockerfile @@ -0,0 +1,8 @@ +FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04 + +# Install openmp support +RUN apt-get update \ + && apt-get install -y \ + libomp5 \ + libomp-dev \ + && rm -rf /var/lib/apt/lists/* diff --git a/src/ubuntu/22.04/mlnet/helix/Dockerfile b/src/ubuntu/22.04/mlnet/helix/Dockerfile new file mode 100644 index 000000000..03151c3b5 --- /dev/null +++ b/src/ubuntu/22.04/mlnet/helix/Dockerfile @@ -0,0 +1,21 @@ +FROM mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04-mlnet + +# Install Helix Dependencies +RUN apt-get update \ + && apt-get install -y \ + python3-pip \ + && rm -rf /var/lib/apt/lists/* + +RUN ln -sf /usr/bin/python3 /usr/bin/python && \ + python -m pip install virtualenv==20.16.3 && \ + pip download --no-deps helix-scripts --index-url https://dnceng.pkgs.visualstudio.com/public/_packaging/helix-client-prod/pypi/simple && \ + pip install ./helix_scripts-*-py3-none-any.whl + +# create helixbot user and give rights to sudo without password +RUN /usr/sbin/adduser --disabled-password --gecos '' --uid 1000 --shell /bin/bash --ingroup adm helixbot && \ + chmod 755 /root && \ + echo "helixbot ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers + +USER helixbot + +RUN python -m virtualenv /home/helixbot/.vsts-env diff --git a/src/ubuntu/manifest.json b/src/ubuntu/manifest.json index 7bb2b417a..b2424da02 100644 --- a/src/ubuntu/manifest.json +++ b/src/ubuntu/manifest.json @@ -3,194 +3,6 @@ { "name": "dotnet-buildtools/prereqs", "images": [ - { - "platforms": [ - { - "dockerfile": "src/ubuntu/16.04", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {}, - "ubuntu-16.04": { - "isLocal": true - } - } - } - ] - }, - { - "platforms": [ - { - "architecture": "arm", - "dockerfile": "src/ubuntu/16.04/arm32v7", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-arm32v7-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} - }, - "variant": "v7" - } - ] - }, - { - "platforms": [ - { - "architecture": "arm64", - "dockerfile": "src/ubuntu/16.04/arm64v8", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-arm64v8-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} - }, - "variant": "v8" - } - ] - }, - { - "platforms": [ - { - "dockerfile": "src/ubuntu/16.04/coredeps", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-coredeps-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {}, - "ubuntu-16.04-coredeps": { - "isLocal": true - } - } - } - ] - }, - { - "platforms": [ - { - "dockerfile": "src/ubuntu/16.04/crossdeps", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-crossdeps-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {}, - "ubuntu-16.04-crossdeps": { - "isLocal": true - } - } - } - ] - }, - { - "platforms": [ - { - "dockerfile": "src/ubuntu/16.04/cross", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-cross-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} - } - } - ] - }, - { - "platforms": [ - { - "dockerfile": "src/ubuntu/16.04/cross/arm-alpine", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-cross-arm-alpine-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} - } - } - ] - }, - { - "platforms": [ - { - "dockerfile": "src/ubuntu/16.04/cross/arm64", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-cross-arm64-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} - } - } - ] - }, - { - "platforms": [ - { - "dockerfile": "src/ubuntu/16.04/cross/arm64-alpine", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-cross-arm64-alpine-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} - } - } - ] - }, - { - "platforms": [ - { - "dockerfile": "src/ubuntu/16.04/debpkg", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-debpkg-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} - } - } - ] - }, - { - "platforms": [ - { - "architecture": "arm", - "dockerfile": "src/ubuntu/16.04/helix/arm32v7", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-helix-arm32v7-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} - }, - "variant": "v7" - } - ] - }, - { - "platforms": [ - { - "architecture": "arm64", - "dockerfile": "src/ubuntu/16.04/helix/arm64v8", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-helix-arm64v8-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} - }, - "variant": "v8" - } - ] - }, - { - "platforms": [ - { - "dockerfile": "src/ubuntu/16.04/mlnet", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-mlnet-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {}, - "ubuntu-16.04-mlnet": { - "isLocal": true - } - } - } - ] - }, - { - "platforms": [ - { - "dockerfile": "src/ubuntu/16.04/mlnet/helix", - "os": "linux", - "osVersion": "xenial", - "tags": { - "ubuntu-16.04-mlnet-helix-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} - } - } - ] - }, { "platforms": [ { @@ -774,6 +586,42 @@ } ] }, + { + "platforms": [ + { + "dockerfile": "src/ubuntu/22.04/cross/arm-alpine", + "os": "linux", + "osVersion": "jammy", + "tags": { + "ubuntu-22.04-cross-arm-alpine-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} + } + } + ] + }, + { + "platforms": [ + { + "dockerfile": "src/ubuntu/22.04/cross/arm64", + "os": "linux", + "osVersion": "jammy", + "tags": { + "ubuntu-22.04-cross-arm64-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} + } + } + ] + }, + { + "platforms": [ + { + "dockerfile": "src/ubuntu/22.04/cross/arm64-alpine", + "os": "linux", + "osVersion": "jammy", + "tags": { + "ubuntu-22.04-cross-arm64-alpine-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} + } + } + ] + }, { "platforms": [ { @@ -836,6 +684,33 @@ } } ] + }, + { + "platforms": [ + { + "dockerfile": "src/ubuntu/22.04/mlnet", + "os": "linux", + "osVersion": "jammy", + "tags": { + "ubuntu-22.04-mlnet-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {}, + "ubuntu-22.04-mlnet": { + "isLocal": true + } + } + } + ] + }, + { + "platforms": [ + { + "dockerfile": "src/ubuntu/22.04/mlnet/helix", + "os": "linux", + "osVersion": "jammy", + "tags": { + "ubuntu-22.04-mlnet-helix-$(System:TimeStamp)-$(System:DockerfileGitCommitSha)": {} + } + } + ] } ] }