diff --git a/README.md b/README.md index 40de7c70..139491f7 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,7 @@ The following images are actively maintained by AWS CodeBuild, and are listed in + [standard 6.0](ubuntu/standard/6.0) + [standard 7.0](ubuntu/standard/7.0) + [amazonlinux2-x86_64-standard:4.0](al2/x86_64/standard/4.0) ++ [amazonlinux2-x86_64-standard:5.0](al2/x86_64/standard/5.0) + [amazonlinux2-x86_64-standard:corretto8](al2/x86_64/standard/corretto8) + [amazonlinux2-x86_64-standard:corretto11](al2/x86_64/standard/corretto11) + [amazonlinux2-aarch64-standard:2.0](al2/aarch64/standard/2.0) diff --git a/al2/x86_64/standard/4.0/Dockerfile b/al2/x86_64/standard/4.0/Dockerfile index a2d5dc39..723a1157 100644 --- a/al2/x86_64/standard/4.0/Dockerfile +++ b/al2/x86_64/standard/4.0/Dockerfile @@ -63,9 +63,9 @@ RUN set -ex \ # Install stunnel RUN set -ex \ - && STUNNEL_VERSION=5.67 \ + && STUNNEL_VERSION=5.69 \ && STUNNEL_TAR=stunnel-$STUNNEL_VERSION.tar.gz \ - && STUNNEL_SHA256="3086939ee6407516c59b0ba3fbf555338f9d52f459bcab6337c0f00e91ea8456" \ + && STUNNEL_SHA256="1ff7d9f30884c75b98c8a0a4e1534fa79adcada2322635e6787337b4e38fdb81" \ && curl -o $STUNNEL_TAR https://www.usenix.org.uk/mirrors/stunnel/archive/5.x/$STUNNEL_TAR && echo "$STUNNEL_SHA256 $STUNNEL_TAR" | sha256sum --check && tar xfz $STUNNEL_TAR \ && cd stunnel-$STUNNEL_VERSION \ && ./configure \ @@ -135,15 +135,15 @@ FROM tools AS runtimes_1 ENV JAVA_17_HOME="/usr/lib/jvm/java-17-amazon-corretto.x86_64" \ JDK_17_HOME="/usr/lib/jvm/java-17-amazon-corretto.x86_64" \ JRE_17_HOME="/usr/lib/jvm/java-17-amazon-corretto.x86_64" \ - ANT_VERSION=1.10.12 \ + ANT_VERSION=1.10.13 \ MAVEN_HOME="/opt/maven" \ - MAVEN_VERSION=3.8.7 \ + MAVEN_VERSION=3.9.1 \ INSTALLED_GRADLE_VERSIONS="7.6" \ GRADLE_VERSION=7.6 \ SBT_VERSION=1.8.2 \ GRADLE_PATH="$SRC_DIR/gradle" \ - ANT_DOWNLOAD_SHA512="2287dc5cfc21043c14e5413f9afb1c87c9f266ec2a9ba2d3bf2285446f6e4ccb59b558bf2e5c57911a05dfa293c7d5c7ad60ac9f744ba11406f4e6f9a27b2403" \ - MAVEN_DOWNLOAD_SHA512="21c2be0a180a326353e8f6d12289f74bc7cd53080305f05358936f3a1b6dd4d91203f4cc799e81761cf5c53c5bbe9dcc13bdb27ec8f57ecf21b2f9ceec3c8d27" \ + ANT_DOWNLOAD_SHA512="de4ac604629e39a86a306f0541adb3775596909ad92feb8b7de759b1b286417db24f557228737c8b902d6abf722d2ce5bb0c3baa3640cbeec3481e15ab1958c9" \ + MAVEN_DOWNLOAD_SHA512="d3be5956712d1c2cf7a6e4c3a2db1841aa971c6097c7a67f59493a5873ccf8c8b889cf988e4e9801390a2b1ae5a0669de07673acb090a083232dbd3faf82f3e3" \ GRADLE_DOWNLOADS_SHA256="312eb12875e1747e05c2f81a4789902d7e4ec5defbd1eefeaccc08acf096505d 7.6" \ SBT_DOWNLOAD_SHA256="1f65344da074dbd66dfefa93c0eff8d319d772e5cad47fcbeb6ae178bbdf4686" \ LOG4J_UNSAFE_VERSIONS="2.11.1 1.2.8" @@ -218,9 +218,9 @@ RUN rm -fr /tmp/* /var/tmp/* # Install Powershell Core # See instructions at https://docs.microsoft.com/en-us/powershell/scripting/setup/installing-powershell-core-on-linux -ENV POWERSHELL_VERSION 7.2.8 +ENV POWERSHELL_VERSION 7.2.11 ENV POWERSHELL_DOWNLOAD_URL https://github.com/PowerShell/PowerShell/releases/download/v$POWERSHELL_VERSION/powershell-$POWERSHELL_VERSION-linux-x64.tar.gz -ENV POWERSHELL_DOWNLOAD_SHA 28FF2653667AC63B508F0B98433E48F64E6BC1EC59F8C1D252BA89EB5A7441A2 +ENV POWERSHELL_DOWNLOAD_SHA 9D6F798461D172391B508FCF27F9CBBB4BEF307EBFD6886ED50860C322C7D1B3 RUN set -ex \ && curl -SL $POWERSHELL_DOWNLOAD_URL --output powershell.tar.gz \ @@ -231,7 +231,7 @@ RUN set -ex \ && ln -s /opt/microsoft/powershell/$POWERSHELL_VERSION/pwsh /usr/bin/pwsh #DotNet 6.0 -ENV DOTNET_60_SDK_VERSION="6.0.405" +ENV DOTNET_60_SDK_VERSION="6.0.408" ENV DOTNET_ROOT="/root/.dotnet" # Add .NET Core 6.0 Global Tools install folder to PATH @@ -253,7 +253,7 @@ RUN set -ex \ #**************** NODEJS **************************************************** -ENV NODE_16_VERSION="16.19.0" +ENV NODE_16_VERSION="16.20.0" RUN n $NODE_16_VERSION && npm install --save-dev -g -f grunt && npm install --save-dev -g -f grunt-cli && npm install --save-dev -g -f webpack \ && curl -sSL https://dl.yarnpkg.com/rpm/yarn.repo | tee /etc/yum.repos.d/yarn.repo \ @@ -267,7 +267,7 @@ RUN n $NODE_16_VERSION && npm install --save-dev -g -f grunt && npm install --s #**************** RUBY ********************************************************* -ENV RUBY_31_VERSION="3.1.3" +ENV RUBY_31_VERSION="3.1.4" RUN rbenv install $RUBY_31_VERSION && rm -rf /tmp/* && rbenv global $RUBY_31_VERSION && ruby -v @@ -276,7 +276,7 @@ RUN rbenv install $RUBY_31_VERSION && rm -rf /tmp/* && rbenv global $RUBY_31_VER #**************** PYTHON ***************************************************** #Python 3.9 ENV PYTHON_39_VERSION="3.9.16" -ENV PYTHON_PIP_VERSION=21.1.2 +ENV PYTHON_PIP_VERSION=21.3.1 ENV PYYAML_VERSION=5.4.1 COPY tools/runtime_configs/python/$PYTHON_39_VERSION /root/.pyenv/plugins/python-build/share/python-build/$PYTHON_39_VERSION @@ -285,12 +285,12 @@ RUN pyenv global $PYTHON_39_VERSION RUN set -ex \ && pip3 install --no-cache-dir --upgrade --force-reinstall "pip==$PYTHON_PIP_VERSION" \ && pip3 install --no-cache-dir --upgrade "PyYAML==$PYYAML_VERSION" \ - && pip3 install --no-cache-dir --upgrade 'setuptools==57.4.0' wheel aws-sam-cli awscli boto3 pipenv virtualenv --use-feature=2020-resolver + && pip3 install --no-cache-dir --upgrade 'setuptools==57.5.0' wheel aws-sam-cli awscli boto3 pipenv virtualenv --use-feature=2020-resolver #**************** END PYTHON ***************************************************** #**************** PHP **************************************************** -ENV PHP_81_VERSION="8.1.13" +ENV PHP_81_VERSION="8.1.18" COPY tools/runtime_configs/php/$PHP_81_VERSION /root/.phpenv/plugins/php-build/share/php-build/definitions/$PHP_81_VERSION RUN phpenv install $PHP_81_VERSION && rm -rf /tmp/* && phpenv global $PHP_81_VERSION @@ -301,7 +301,7 @@ RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin - #**************** END PHP **************************************************** #**************** GOLANG **************************************************** -ENV GOLANG_18_VERSION="1.18.9" +ENV GOLANG_18_VERSION="1.18.10" ENV GOENV_DISABLE_GOPATH=1 ENV GOPATH="/go" @@ -319,10 +319,10 @@ FROM runtimes_1 AS runtimes_2 ENV DOCKER_BUCKET="download.docker.com" \ DOCKER_CHANNEL="stable" \ DIND_COMMIT="3b5fac462d21ca164b3778647420016315289034" \ - DOCKER_COMPOSE_VERSION="1.26.2" + DOCKER_COMPOSE_VERSION="1.29.2" -ENV DOCKER_SHA256="945C3A3DDCB79EE7307496C2F39EB3D8372466E8654E63D60BBB462E4A3C1427" -ENV DOCKER_VERSION="20.10.22" +ENV DOCKER_SHA256="AB91092320A87691A1EAF0225B48585DB9C69CFF0ED4B0F569F744FF765515E3" +ENV DOCKER_VERSION="20.10.24" VOLUME /var/lib/docker diff --git a/ubuntu/standard/5.0/tools/runtime_configs/php/8.0.26 b/al2/x86_64/standard/4.0/tools/runtime_configs/php/8.1.18 similarity index 75% rename from ubuntu/standard/5.0/tools/runtime_configs/php/8.0.26 rename to al2/x86_64/standard/4.0/tools/runtime_configs/php/8.1.18 index 58c7ab45..142b51c8 100644 --- a/ubuntu/standard/5.0/tools/runtime_configs/php/8.0.26 +++ b/al2/x86_64/standard/4.0/tools/runtime_configs/php/8.1.18 @@ -5,7 +5,7 @@ configure_option "--with-libedit" PHP_BUILD_EXTRA_MAKE_ARGUMENTS="-j4" -#https://github.com/php-build/php-build/blob/master/share/php-build/definitions/8.0.26 +#https://github.com/php-build/php-build/blob/master/share/php-build/definitions/8.1.18 #Don't change beyond this line configure_option "--enable-gd" @@ -15,6 +15,6 @@ configure_option "--with-mhash" configure_option -D "--with-xmlrpc" -install_package "https://secure.php.net/distributions/php-8.0.26.tar.bz2" -install_xdebug "3.1.3" -enable_builtin_opcache +install_package "https://www.php.net/distributions/php-8.1.18.tar.bz2" +install_xdebug "3.2.0" +enable_builtin_opcache \ No newline at end of file diff --git a/al2/x86_64/standard/5.0/Dockerfile b/al2/x86_64/standard/5.0/Dockerfile new file mode 100644 index 00000000..a1d25fc1 --- /dev/null +++ b/al2/x86_64/standard/5.0/Dockerfile @@ -0,0 +1,374 @@ +# Copyright 2020-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved. +# +# Licensed under the Amazon Software License (the "License"). You may not use this file except in compliance with the License. +# A copy of the License is located at +# +# http://aws.amazon.com/asl/ +# +# or in the "license" file accompanying this file. +# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, express or implied. +# See the License for the specific language governing permissions and limitations under the License. + +FROM public.ecr.aws/amazonlinux/amazonlinux:2023 AS core + +# Install git, SSH, and other utilities +RUN set -ex \ + && yum install -y -q openssh-clients \ + && mkdir ~/.ssh \ + && mkdir -p /opt/tools \ + && mkdir -p /codebuild/image/config \ + && touch ~/.ssh/known_hosts \ + && ssh-keyscan -t rsa,dsa,ed25519,ecdsa -H github.com >> ~/.ssh/known_hosts \ + && ssh-keyscan -t rsa,dsa,ed25519,ecdsa -H bitbucket.org >> ~/.ssh/known_hosts \ + && chmod 600 ~/.ssh/known_hosts \ + && rpm --import https://download.mono-project.com/repo/xamarin.gpg \ + && curl https://download.mono-project.com/repo/centos7-stable.repo | tee /etc/yum.repos.d/mono-centos7-stable.repo \ + && yum groupinstall -y -q "Development tools" \ + && yum install -y -q \ + ImageMagick asciidoc bzip2-devel cvs cvsps \ + docbook-dtds docbook-style-xsl e2fsprogs expat-devel expect fakeroot \ + glib2-devel groff gzip icu iptables jq krb5-server libargon2-devel \ + libcurl-devel libdb-devel libedit-devel libevent-devel libffi-devel \ + libicu-devel libjpeg-devel libpng-devel libserf sqlite-devel \ + libtidy-devel libunwind libwebp-devel libxml2-devel libxslt libxslt-devel \ + libyaml-devel libzip-devel mariadb105-devel mercurial mlocate \ + ncurses-devel oniguruma-devel openssl openssl-devel perl-DBD-SQLite \ + perl-DBI perl-HTTP-Date perl-TimeDate perl-YAML-LibYAML \ + postgresql-devel procps-ng python-configobj readline-devel rsync sgml-common \ + subversion-perl tar tcl tk vim wget which xfsprogs xmlto xorg-x11-server-Xvfb xz-devel \ + amazon-ecr-credential-helper \ + && rm /etc/yum.repos.d/mono-centos7-stable.repo + +RUN useradd codebuild-user + +#=======================End of layer: core ================= + +FROM core AS tools + +# Install Git +RUN set -ex \ + && GIT_VERSION=2.40.0 \ + && GIT_TAR_FILE=git-$GIT_VERSION.tar.gz \ + && GIT_SRC=https://github.com/git/git/archive/v${GIT_VERSION}.tar.gz \ + && curl -L -o $GIT_TAR_FILE $GIT_SRC \ + && tar zxf $GIT_TAR_FILE \ + && cd git-$GIT_VERSION \ + && make -j4 prefix=/usr \ + && make install prefix=/usr \ + && cd .. && rm -rf git-$GIT_VERSION \ + && rm -rf $GIT_TAR_FILE /tmp/* + +# Install stunnel +RUN set -ex \ + && STUNNEL_VERSION=5.69 \ + && STUNNEL_TAR=stunnel-$STUNNEL_VERSION.tar.gz \ + && STUNNEL_SHA256="1ff7d9f30884c75b98c8a0a4e1534fa79adcada2322635e6787337b4e38fdb81" \ + && curl -o $STUNNEL_TAR https://www.usenix.org.uk/mirrors/stunnel/archive/5.x/$STUNNEL_TAR && echo "$STUNNEL_SHA256 $STUNNEL_TAR" | sha256sum --check && tar xfz $STUNNEL_TAR \ + && cd stunnel-$STUNNEL_VERSION \ + && ./configure \ + && make -j4 \ + && make install \ + && openssl genrsa -out key.pem 2048 \ + && openssl req -new -x509 -key key.pem -out cert.pem -days 1095 -subj "/C=US/ST=Washington/L=Seattle/O=Amazon/OU=Codebuild/CN=codebuild.amazon.com" \ + && cat key.pem cert.pem >> /usr/local/etc/stunnel/stunnel.pem \ + && cd .. && rm -rf stunnel-${STUNNEL_VERSION}* + +# AWS Tools +# https://docs.aws.amazon.com/eks/latest/userguide/install-aws-iam-authenticator.html https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_CLI_installation.html +RUN curl -sS -o /usr/local/bin/aws-iam-authenticator https://s3.us-west-2.amazonaws.com/amazon-eks/1.26.2/2023-03-17/bin/linux/amd64/aws-iam-authenticator \ + && curl -sS -o /usr/local/bin/kubectl https://s3.us-west-2.amazonaws.com/amazon-eks/1.26.2/2023-03-17/bin/linux/amd64/kubectl \ + && curl -sS -o /usr/local/bin/ecs-cli https://s3.amazonaws.com/amazon-ecs-cli/ecs-cli-linux-amd64-latest \ + && curl -sS -L https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_Linux_amd64.tar.gz | tar xz -C /usr/local/bin \ + && chmod +x /usr/local/bin/kubectl /usr/local/bin/aws-iam-authenticator /usr/local/bin/ecs-cli /usr/local/bin/eksctl + +# Configure SSM +RUN set -ex \ + && yum install -y -q https://s3.amazonaws.com/amazon-ssm-us-east-1/latest/linux_amd64/amazon-ssm-agent.rpm + +# Install env tools for runtimes +## Dotnet +ENV PATH="/root/.dotnet/:/root/.dotnet/tools/:$PATH" +RUN set -ex \ +&& wget -qO /usr/local/bin/dotnet-install.sh https://dot.net/v1/dotnet-install.sh \ +&& chmod +x /usr/local/bin/dotnet-install.sh + +##nodejs +ENV N_SRC_DIR="$SRC_DIR/n" +RUN git clone https://github.com/tj/n $N_SRC_DIR \ + && cd $N_SRC_DIR && make install + +##ruby +ENV RBENV_SRC_DIR="/usr/local/rbenv" + +ENV PATH="/root/.rbenv/shims:$RBENV_SRC_DIR/bin:$RBENV_SRC_DIR/shims:$PATH" \ + RUBY_BUILD_SRC_DIR="$RBENV_SRC_DIR/plugins/ruby-build" + +RUN set -ex \ + && git clone https://github.com/rbenv/rbenv.git $RBENV_SRC_DIR \ + && mkdir -p $RBENV_SRC_DIR/plugins \ + && git clone https://github.com/rbenv/ruby-build.git $RUBY_BUILD_SRC_DIR \ + && sh $RUBY_BUILD_SRC_DIR/install.sh + +##python +RUN curl https://pyenv.run | bash +ENV PATH="/root/.pyenv/shims:/root/.pyenv/bin:$PATH" + +##php +RUN curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash +ENV PATH="/root/.phpenv/shims:/root/.phpenv/bin:$PATH" + +##go +RUN git clone https://github.com/syndbg/goenv.git $HOME/.goenv +ENV PATH="/root/.goenv/shims:/root/.goenv/bin:/go/bin:$PATH" +ENV GOENV_DISABLE_GOPATH=1 +ENV GOPATH="/go" + +#=======================End of layer: tools ================= + +FROM tools AS runtimes_1 + +#**************** JAVA **************************************************** + +ENV JAVA_17_HOME="/usr/lib/jvm/java-17-amazon-corretto.x86_64" \ + JDK_17_HOME="/usr/lib/jvm/java-17-amazon-corretto.x86_64" \ + JRE_17_HOME="/usr/lib/jvm/java-17-amazon-corretto.x86_64" \ + ANT_VERSION=1.10.13 \ + MAVEN_HOME="/opt/maven" \ + MAVEN_VERSION=3.9.1 \ + GRADLE_VERSION=8.1.1 \ + SBT_VERSION=1.8.2 \ + GRADLE_PATH="$SRC_DIR/gradle" \ + ANT_DOWNLOAD_SHA512="de4ac604629e39a86a306f0541adb3775596909ad92feb8b7de759b1b286417db24f557228737c8b902d6abf722d2ce5bb0c3baa3640cbeec3481e15ab1958c9" \ + MAVEN_DOWNLOAD_SHA512="d3be5956712d1c2cf7a6e4c3a2db1841aa971c6097c7a67f59493a5873ccf8c8b889cf988e4e9801390a2b1ae5a0669de07673acb090a083232dbd3faf82f3e3" \ + GRADLE_DOWNLOADS_SHA256="5625a0ae20fe000d9225d000b36909c7a0e0e8dda61c19b12da769add847c975 8.1.1" \ + SBT_DOWNLOAD_SHA256="1f65344da074dbd66dfefa93c0eff8d319d772e5cad47fcbeb6ae178bbdf4686" + +ARG MAVEN_CONFIG_HOME="/root/.m2" +ENV JAVA_HOME="$JAVA_17_HOME" \ + JDK_HOME="$JDK_17_HOME" \ + JRE_HOME="$JRE_17_HOME" + +RUN set -x \ + # Install Amazon Corretto 17 + && rpm --import https://yum.corretto.aws/corretto.key \ + && curl -L -o /etc/yum.repos.d/corretto.repo https://yum.corretto.aws/corretto.repo \ + && yum install -y -q java-17-amazon-corretto java-17-amazon-corretto-devel \ + && update-ca-trust \ + && for tool_path in $JAVA_HOME/bin/*; do \ + tool=`basename $tool_path`; \ + update-alternatives --install /usr/bin/$tool $tool $tool_path 10000; \ + update-alternatives --set $tool $tool_path; \ + done \ + && rm $JAVA_HOME/lib/security/cacerts && ln -s /etc/pki/java/cacerts $JAVA_HOME/lib/security/cacerts \ + # Install Ant + && curl -LSso /var/tmp/apache-ant-$ANT_VERSION-bin.tar.gz https://archive.apache.org/dist/ant/binaries/apache-ant-$ANT_VERSION-bin.tar.gz \ + && echo "$ANT_DOWNLOAD_SHA512 /var/tmp/apache-ant-$ANT_VERSION-bin.tar.gz" | sha512sum -c - \ + && tar -xzf /var/tmp/apache-ant-$ANT_VERSION-bin.tar.gz -C /opt \ + && rm /var/tmp/apache-ant-$ANT_VERSION-bin.tar.gz \ + && update-alternatives --install /usr/bin/ant ant /opt/apache-ant-$ANT_VERSION/bin/ant 10000 + +RUN set -ex \ + # Install Maven + && mkdir -p $MAVEN_HOME \ + && curl -LSso /var/tmp/apache-maven-$MAVEN_VERSION-bin.tar.gz https://archive.apache.org/dist/maven/maven-3/$MAVEN_VERSION/binaries/apache-maven-$MAVEN_VERSION-bin.tar.gz \ + && echo "$MAVEN_DOWNLOAD_SHA512 /var/tmp/apache-maven-$MAVEN_VERSION-bin.tar.gz" | sha512sum -c - \ + && tar xzf /var/tmp/apache-maven-$MAVEN_VERSION-bin.tar.gz -C $MAVEN_HOME --strip-components=1 \ + && rm /var/tmp/apache-maven-$MAVEN_VERSION-bin.tar.gz \ + && update-alternatives --install /usr/bin/mvn mvn /opt/maven/bin/mvn 10000 \ + && mkdir -p $MAVEN_CONFIG_HOME \ + # Install Gradle + && mkdir -p $GRADLE_PATH \ + && wget -q "https://services.gradle.org/distributions/gradle-$GRADLE_VERSION-all.zip" -O "$GRADLE_PATH/gradle-$GRADLE_VERSION-all.zip" \ + && unzip -q "$GRADLE_PATH/gradle-$GRADLE_VERSION-all.zip" -d /usr/local \ + && echo -e "$GRADLE_DOWNLOADS_SHA256" | grep "$GRADLE_VERSION" | sed "s|$GRADLE_VERSION|$GRADLE_PATH/gradle-$GRADLE_VERSION-all.zip|" | sha256sum -c - \ + && rm "$GRADLE_PATH/gradle-$GRADLE_VERSION-all.zip" \ + && mkdir "/tmp/gradle-$GRADLE_VERSION" \ + && "/usr/local/gradle-$GRADLE_VERSION/bin/gradle" -p "/tmp/gradle-$GRADLE_VERSION" init \ + && "/usr/local/gradle-$GRADLE_VERSION/bin/gradle" -p "/tmp/gradle-$GRADLE_VERSION" wrapper \ + # Android Studio uses the "-all" distribution for it's wrapper script. + && perl -pi -e "s/gradle-$GRADLE_VERSION-bin.zip/gradle-$GRADLE_VERSION-all.zip/" "/tmp/gradle-$GRADLE_VERSION/gradle/wrapper/gradle-wrapper.properties" \ + && "/tmp/gradle-$GRADLE_VERSION/gradlew" -p "/tmp/gradle-$GRADLE_VERSION" init \ + && rm -rf "/tmp/gradle-$GRADLE_VERSION" \ + # Install default GRADLE_VERSION to path + && ln -s /usr/local/gradle-$GRADLE_VERSION/bin/gradle /usr/bin/gradle \ + && rm -rf $GRADLE_PATH \ + # Install SBT + && curl -fSL "https://github.com/sbt/sbt/releases/download/v${SBT_VERSION}/sbt-${SBT_VERSION}.tgz" -o sbt.tgz \ + && echo "${SBT_DOWNLOAD_SHA256} *sbt.tgz" | sha256sum -c - \ + && tar xzf sbt.tgz -C /usr/local/bin/ \ + && rm sbt.tgz + +ENV PATH "/usr/local/bin/sbt/bin:$PATH" +RUN sbt version -Dsbt.rootdir=true +# Cleanup +RUN rm -fr /tmp/* /var/tmp/* +#**************** END JAVA **************************************************** + + +#**************** PowerShell ******************************************************* + +# Install Powershell Core +# See instructions at https://docs.microsoft.com/en-us/powershell/scripting/setup/installing-powershell-core-on-linux +ENV POWERSHELL_VERSION 7.3.4 +ENV POWERSHELL_DOWNLOAD_URL https://github.com/PowerShell/PowerShell/releases/download/v$POWERSHELL_VERSION/powershell-$POWERSHELL_VERSION-linux-x64.tar.gz +ENV POWERSHELL_DOWNLOAD_SHA E85D5544E13A924F8B2C4A5DC2D43ABE46E46633F89E8D138D39C0AAEACB9976 + +RUN set -ex \ + && curl -SL $POWERSHELL_DOWNLOAD_URL --output powershell.tar.gz \ + && echo "$POWERSHELL_DOWNLOAD_SHA powershell.tar.gz" | sha256sum -c - \ + && mkdir -p /opt/microsoft/powershell/$POWERSHELL_VERSION \ + && tar zxf powershell.tar.gz -C /opt/microsoft/powershell/$POWERSHELL_VERSION \ + && rm powershell.tar.gz \ + && ln -s /opt/microsoft/powershell/$POWERSHELL_VERSION/pwsh /usr/bin/pwsh + +# Install AWS CLI v2 +# https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2-linux.html +RUN curl https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip -o /tmp/awscliv2.zip \ + && unzip -q /tmp/awscliv2.zip -d /opt \ + && /opt/aws/install --update -i /usr/local/aws-cli -b /usr/local/bin \ + && rm /tmp/awscliv2.zip \ + && rm -rf /opt/aws \ + && aws --version + +#DotNet 6.0 +ENV DOTNET_60_SDK_VERSION="6.0.408" +ENV DOTNET_ROOT="/root/.dotnet" + +# Add .NET Core 6.0 Global Tools install folder to PATH +RUN /usr/local/bin/dotnet-install.sh -v $DOTNET_60_SDK_VERSION \ + && dotnet --list-sdks \ + && rm -rf /tmp/* + +## Trigger the population of the local package cache +ENV NUGET_XMLDOC_MODE skip +RUN set -ex \ + && mkdir warmup \ + && cd warmup \ + && dotnet new \ + && cd .. \ + && rm -rf warmup \ + && rm -rf /tmp/NuGetScratch +#**************** END Powershell ******************************************************* + + +#**************** NODEJS **************************************************** + +ENV NODE_18_VERSION="18.16.0" + +RUN n $NODE_18_VERSION && npm install --save-dev -g -f grunt && npm install --save-dev -g -f grunt-cli && npm install --save-dev -g -f webpack \ + && cd / && rm -rf $N_SRC_DIR && rm -rf /tmp/* + +#**************** END NODEJS **************************************************** + +#**************** RUBY ********************************************************* + +ENV RUBY_32_VERSION="3.2.2" + +RUN rbenv install $RUBY_32_VERSION && rm -rf /tmp/* && rbenv global $RUBY_32_VERSION && ruby -v + +#**************** END RUBY ***************************************************** + +#**************** PYTHON ***************************************************** +#Python 3.11 +ENV PYTHON_311_VERSION="3.11.2" +ENV PYTHON_PIP_VERSION=23.1.1 +ENV PYYAML_VERSION=6.0 + +COPY tools/runtime_configs/python/$PYTHON_311_VERSION /root/.pyenv/plugins/python-build/share/python-build/$PYTHON_311_VERSION +RUN env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install $PYTHON_311_VERSION && rm -rf /tmp/* +RUN pyenv global $PYTHON_311_VERSION +RUN set -ex \ + && pip3 install --no-cache-dir --upgrade --force-reinstall "pip==$PYTHON_PIP_VERSION" \ + && pip3 install --no-cache-dir --upgrade 'setuptools==67.7.2' wheel aws-sam-cli boto3 pipenv virtualenv \ + && pip3 install --no-cache-dir --upgrade "PyYAML==$PYYAML_VERSION" + +#**************** END PYTHON ***************************************************** + +#**************** PHP **************************************************** +ENV PHP_82_VERSION="8.2.5" + +COPY tools/runtime_configs/php/$PHP_82_VERSION /root/.phpenv/plugins/php-build/share/php-build/definitions/$PHP_82_VERSION +RUN phpenv install $PHP_82_VERSION && rm -rf /tmp/* && phpenv global $PHP_82_VERSION +RUN echo "memory_limit = 1G;" >> "/root/.phpenv/versions/$PHP_82_VERSION/etc/conf.d/memory.ini" + +# Install Composer globally +RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer +#**************** END PHP **************************************************** + +#**************** GOLANG **************************************************** +ENV GOLANG_20_VERSION="1.20.3" +ENV GOENV_DISABLE_GOPATH=1 +ENV GOPATH="/go" + +RUN goenv install $GOLANG_20_VERSION && rm -rf /tmp/* && \ + goenv global $GOLANG_20_VERSION && \ + go env -w GO111MODULE=auto + +RUN go get -u github.com/golang/dep/cmd/dep +#**************** END GOLANG **************************************************** + +#=======================End of layer: runtimes_1 ================= +FROM runtimes_1 AS runtimes_2 + +#Docker 23 +ENV DOCKER_BUCKET="download.docker.com" \ + DOCKER_CHANNEL="stable" \ + DIND_COMMIT="3b5fac462d21ca164b3778647420016315289034" \ + DOCKER_COMPOSE_VERSION="2.17.3" \ + DOCKER_BUILDX_VERSION="0.10.4" + +ENV DOCKER_SHA256="81BD643A32B3428F6D9EAFBD9331D0DA1577C958C1C2702DB1EFF7AFA1CDF3CD" +ENV DOCKER_VERSION="23.0.4" + +VOLUME /var/lib/docker + +RUN set -ex \ + && curl -fSL "https://${DOCKER_BUCKET}/linux/static/${DOCKER_CHANNEL}/x86_64/docker-${DOCKER_VERSION}.tgz" -o docker.tgz \ + && echo "${DOCKER_SHA256} *docker.tgz" | sha256sum -c - \ + && tar --extract --file docker.tgz --strip-components 1 --directory /usr/local/bin/ \ + && rm docker.tgz \ + && docker -v \ + # set up subuid/subgid so that "--userns-remap=default" works out-of-the-box + && groupadd dockremap \ + && useradd -g dockremap dockremap \ + && echo 'dockremap:165536:65536' >> /etc/subuid \ + && echo 'dockremap:165536:65536' >> /etc/subgid \ + && wget -q "https://raw.githubusercontent.com/docker/docker/${DIND_COMMIT}/hack/dind" -O /usr/local/bin/dind \ + # Install docker compose as docker plugin and maintain docker-compose usage + && mkdir -p /usr/local/lib/docker/cli-plugins \ + && curl -L https://github.com/docker/compose/releases/download/v${DOCKER_COMPOSE_VERSION}/docker-compose-Linux-x86_64 -o /usr/local/lib/docker/cli-plugins/docker-compose \ + && chmod +x /usr/local/lib/docker/cli-plugins/docker-compose \ + && ln -s /usr/local/lib/docker/cli-plugins/docker-compose /usr/local/bin/docker-compose \ + # Ensure docker-compose and docker compose work + && docker-compose version \ + && docker compose version \ + # Add docker buildx tool + && curl -L https://github.com/docker/buildx/releases/download/v${DOCKER_BUILDX_VERSION}/buildx-v${DOCKER_BUILDX_VERSION}.linux-amd64 -o /usr/local/bin/docker-buildx \ + && chmod +x /usr/local/bin/dind /usr/local/bin/docker-buildx \ + # Ensure docker-buildx works + && docker-buildx version + +#=======================End of layer: runtimes_2 ================= +FROM runtimes_2 AS runtimes_3 + +# Install GitVersion +ENV GITVERSION_VERSION="5.12.0" +RUN set -ex \ + && dotnet tool install --global GitVersion.Tool --version $GITVERSION_VERSION \ + && ln -s ~/.dotnet/tools/dotnet-gitversion /usr/local/bin/gitversion + +#===================END of runtimes_3 ============== +FROM runtimes_3 AS al2_v5 + +# Configure SSH +COPY ssh_config /root/.ssh/config +COPY runtimes.yml /codebuild/image/config/runtimes.yml +COPY dockerd-entrypoint.sh /usr/local/bin/dockerd-entrypoint.sh +COPY legal/THIRD_PARTY_LICENSES.txt /usr/share/doc/THIRD_PARTY_LICENSES.txt +COPY legal/bill_of_material.txt /usr/share/doc/bill_of_material.txt +COPY amazon-ssm-agent.json /etc/amazon/ssm/amazon-ssm-agent.json + +ENTRYPOINT ["/usr/local/bin/dockerd-entrypoint.sh"] + + +#=======================End of layer: al2_v5 ================= diff --git a/al2/x86_64/standard/5.0/amazon-ssm-agent.json b/al2/x86_64/standard/5.0/amazon-ssm-agent.json new file mode 100644 index 00000000..acb8c83e --- /dev/null +++ b/al2/x86_64/standard/5.0/amazon-ssm-agent.json @@ -0,0 +1,45 @@ +{ + "Profile":{ + "ShareCreds" : true, + "ShareProfile" : "" + }, + "Mds": { + "CommandWorkersLimit" : 5, + "StopTimeoutMillis" : 20000, + "Endpoint": "", + "CommandRetryLimit": 15 + }, + "Ssm": { + "Endpoint": "", + "HealthFrequencyMinutes": 5, + "CustomInventoryDefaultLocation" : "", + "AssociationLogsRetentionDurationHours" : 24, + "RunCommandLogsRetentionDurationHours" : 336, + "SessionLogsRetentionDurationHours" : 336 + }, + "Mgs": { + "Region": "", + "Endpoint": "", + "StopTimeoutMillis" : 20000, + "SessionWorkersLimit" : 1000 + }, + "Agent": { + "Region": "", + "OrchestrationRootDir": "", + "ContainerMode": true + }, + "Os": { + "Lang": "en-US", + "Name": "", + "Version": "1" + }, + "S3": { + "Endpoint": "", + "Region": "", + "LogBucket":"", + "LogKey":"" + }, + "Kms": { + "Endpoint": "" + } +} diff --git a/al2/x86_64/standard/5.0/dockerd-entrypoint.sh b/al2/x86_64/standard/5.0/dockerd-entrypoint.sh new file mode 100755 index 00000000..1591be44 --- /dev/null +++ b/al2/x86_64/standard/5.0/dockerd-entrypoint.sh @@ -0,0 +1,23 @@ +#!/bin/sh +set -e + +/usr/local/bin/dockerd \ + --host=unix:///var/run/docker.sock \ + --host=tcp://127.0.0.1:2375 \ + --storage-driver=overlay2 &>/var/log/docker.log & + + +tries=0 +d_timeout=60 +until docker info >/dev/null 2>&1 +do + if [ "$tries" -gt "$d_timeout" ]; then + cat /var/log/docker.log + echo 'Timed out trying to connect to internal docker host.' >&2 + exit 1 + fi + tries=$(( $tries + 1 )) + sleep 1 +done + +eval "$@" diff --git a/al2/x86_64/standard/5.0/legal/THIRD_PARTY_LICENSES.txt b/al2/x86_64/standard/5.0/legal/THIRD_PARTY_LICENSES.txt new file mode 100644 index 00000000..4df6aaa1 --- /dev/null +++ b/al2/x86_64/standard/5.0/legal/THIRD_PARTY_LICENSES.txt @@ -0,0 +1,6 @@ +hird Party Licenses +==================== + +Stunnel: +We include unmodified version of stunnel softwares in the docker images. The source code for the current version can be downloaded from https://www.usenix.org.uk/mirrors/stunnel/archive/5.x/stunnel-5.69.tar.gz + diff --git a/al2/x86_64/standard/5.0/legal/bill_of_material.txt b/al2/x86_64/standard/5.0/legal/bill_of_material.txt new file mode 100644 index 00000000..3a60efeb --- /dev/null +++ b/al2/x86_64/standard/5.0/legal/bill_of_material.txt @@ -0,0 +1,184 @@ +The Amazon CodeBuild Product includes the following third-party software/licensing: + +---------------- +GeoIP-devel : LGPLv2+ and GPLv2+ and CC-BY-SA +---------------- +ImageMagick : ImageMagick +---------------- +asciidoc : GPL+ and GPLv2+ +---------------- +bzip2-devel : BSD +---------------- +bzr : GPLv2+ +---------------- +bzrtools : GPLv2+ +---------------- +chromium : BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2) +---------------- +cvs : BSD and GPL+ and GPLv2+ and LGPLv2+ and zlib and Public Domain +---------------- +cvsps : GPL+ +---------------- +dbus-glib-devel : AFL and GPLv2+ +---------------- +docbook-dtds : Copyright only +---------------- +docbook-style-xsl : DMIT +---------------- +dpkg-dev : GPLv2 and GPLv2+ and LGPLv2+ and Public Domain and BSD +---------------- +e2fsprogs : GPLv2 +---------------- +expat-devel : MIT +---------------- +expect : Public Domain +---------------- +fakeroot : GPLv3+ and LGPLv2+ and (GPL+ or Artistic) +---------------- +glib2-devel : LGPLv2+ +---------------- +groff : GPLv3+ and GFDL and BSD and MIT +---------------- +gtk3-devel : LGPLv2+ +---------------- +gzip : GPLv3+ and GFDL +---------------- +icu : MIT and UCD and Public Domain +---------------- +iptables : GPLv2 +---------------- +java-1.8.0-amazon-corretto-devel : ASL 1.1 and ASL 2.0 and BSD and BSD with advertising and GPL+ and GPLv2 and GPLv2 with exceptions and IJG and LGPLv2+ and MIT and MPLv2.0 and Public Domain and W3C and zlib. +---------------- +java-1.11.0-amazon-corretto-devel : ASL 1.1 and ASL 2.0 and BSD and BSD with advertising and GPL+ and GPLv2 and GPLv2 with exceptions and IJG and LGPLv2+ and MIT and MPLv2.0 and Public Domain and W3C and zlib. +---------------- +jq : MIT and ASL 2.0 and CC-BY and GPLv3 +---------------- +krb5-server : MIT +---------------- +libargon2-devel : Public Domain or ASL 2.0 +---------------- +libcurl-devel : MIT +---------------- +libdb-devel : BSD and LGPLv2 and Sleepycat +---------------- +libedit-devel : BSD +---------------- +libevent-devel : BSD +---------------- +libffi-devel : MIT and Public Domain +---------------- +libgit2 : GPLv2 with exceptions +---------------- +libicu-devel : MIT and UCD and Public Domain +---------------- +libpng-devel : zlib +---------------- +libserf : ASL 2.0 +---------------- +libsqlite3x-devel : zlib +---------------- +libtidy-devel : W3C +---------------- +libunwind : BSD +---------------- +libwebp-devel : BSD +---------------- +libxml2-devel : MIT +---------------- +libxslt : MIT +---------------- +libxslt-devel : MIT +---------------- +libyaml-devel : MIT +---------------- +libzip-devel : BSD +---------------- +mariadb-devel : GPLv2 with exceptions and LGPLv2 and BSD +---------------- +mercurial : GPLv2+ +---------------- +mlocate : GPLv2 +---------------- +mono-devel : LGPL-2.1 +---------------- +ncurses-devel : MIT +---------------- +oniguruma-devel : BSD +---------------- +openssh-clients : BSD +---------------- +openssl : OpenSSL +---------------- +openssl-devel : OpenSSL +---------------- +perl-DBD-SQLite : GPL+ or Artistic +---------------- +perl-DBI : GPL+ or Artistic +---------------- +perl-HTTP-Date : GPL+ or Artistic +---------------- +perl-IO-Pty-Easy : GPL+ or Artistic +---------------- +perl-TimeDate : GPL+ or Artistic +---------------- +perl-YAML-LibYAML : GPL+ or Artistic +---------------- +postgresql-devel : PostgreSQL +---------------- +procps-ng : GPL+ and GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+ +---------------- +python-configobj : BSD +---------------- +readline-devel : GPLv3+ +---------------- +rsync : GPLv3+ +---------------- +sbt : BSD +---------------- +sgml-common : GPL+ +---------------- +subversion-perl : ASL 2.0 +---------------- +tar : GPLv3+ +---------------- +tcl : TCL +---------------- +tk : TCL +---------------- +wget : GPLv3+ +---------------- +which : GPLv3 +---------------- +xfsprogs : GPL+ and LGPLv2+ +---------------- +xmlto : GPLv2+ +---------------- +xorg-x11-server-Xvfb : MIT and GPLv2 +---------------- +xz-devel : LGPLv2+ +---------------- +yarn : BSD +---------------- +ruby :https://www.ruby-lang.org/en/about/license.txt +---------------- +python :https://docs.python.org/3/license.html +---------------- +php :https://www.php.net/license/index.php +---------------- +nodejs :https://github.com/nodejs/node/blob/master/LICENSE +---------------- +golang :https://golang.org/LICENSE +---------------- +dotnet :https://github.com/dotnet/core/blob/master/LICENSE.TXT +---------------- +Firefox :https://www.mozilla.org/en-US/MPL/ +---------------- +Chrome :https://www.google.com/intl/en_pk/chrome/privacy/eula_text.html +---------------- +stunnel :https://www.stunnel.org/gpl.html +---------------- +gitversion :https://github.com/GitTools/GitVersion/blob/master/LICENSE +---------------- +docker :https://www.docker.com/legal/components-licenses +---------------- + diff --git a/al2/x86_64/standard/5.0/runtimes.yml b/al2/x86_64/standard/5.0/runtimes.yml new file mode 100644 index 00000000..b8a5467d --- /dev/null +++ b/al2/x86_64/standard/5.0/runtimes.yml @@ -0,0 +1,59 @@ +version: 0.1 + +runtimes: + java: + versions: + corretto17: + commands: + - echo "Installing corretto(OpenJDK) version 17 ..." + + - export JAVA_HOME="$JAVA_17_HOME" + + - export JRE_HOME="$JRE_17_HOME" + + - export JDK_HOME="$JDK_17_HOME" + + - |- + for tool_path in "$JAVA_HOME"/bin/*; + do tool=`basename "$tool_path"`; + if [ $tool != 'java-rmi.cgi' ]; + then + rm -f /usr/bin/$tool /var/lib/alternatives/$tool \ + && update-alternatives --install /usr/bin/$tool $tool $tool_path 20000; + fi; + done + golang: + versions: + 1.20: + commands: + - echo "Installing Go version 1.20 ..." + - goenv global $GOLANG_20_VERSION + python: + versions: + 3.11: + commands: + - echo "Installing Python version 3.11 ..." + - pyenv global $PYTHON_311_VERSION + php: + versions: + 8.2: + commands: + - echo "Installing PHP version 8.2 ..." + - phpenv global $PHP_82_VERSION + ruby: + versions: + 3.2: + commands: + - echo "Installing Ruby version 3.2 ..." + - rbenv global $RUBY_32_VERSION + nodejs: + versions: + 18: + commands: + - echo "Installing Node.js version 18 ..." + - n $NODE_18_VERSION + dotnet: + versions: + 6.0: + commands: + - echo "Installing .NET version 6.0 ..." diff --git a/al2/x86_64/standard/5.0/ssh_config b/al2/x86_64/standard/5.0/ssh_config new file mode 100644 index 00000000..710e2754 --- /dev/null +++ b/al2/x86_64/standard/5.0/ssh_config @@ -0,0 +1,3 @@ +Host * + ConnectTimeout 10 + ConnectionAttempts 10 diff --git a/ubuntu/standard/7.0/tools/runtime_configs/php/8.2.4 b/al2/x86_64/standard/5.0/tools/runtime_configs/php/8.2.5 similarity index 68% rename from ubuntu/standard/7.0/tools/runtime_configs/php/8.2.4 rename to al2/x86_64/standard/5.0/tools/runtime_configs/php/8.2.5 index 98f43a33..90918de7 100644 --- a/ubuntu/standard/7.0/tools/runtime_configs/php/8.2.4 +++ b/al2/x86_64/standard/5.0/tools/runtime_configs/php/8.2.5 @@ -11,8 +11,10 @@ PHP_BUILD_EXTRA_MAKE_ARGUMENTS="-j4" configure_option "--enable-gd" configure_option "--with-jpeg" configure_option "--with-zip" -configure_option "--with-sodium" +configure_option "--with-mhash" -install_package "https://secure.php.net/distributions/php-8.2.4.tar.bz2" -install_xdebug "3.2.1" -enable_builtin_opcache +configure_option -D "--with-xmlrpc" + +install_package "https://www.php.net/distributions/php-8.2.5.tar.bz2" +install_xdebug "3.2.0" +enable_builtin_opcache \ No newline at end of file diff --git a/al2/x86_64/standard/5.0/tools/runtime_configs/python/3.11.2 b/al2/x86_64/standard/5.0/tools/runtime_configs/python/3.11.2 new file mode 100644 index 00000000..e3a8deb1 --- /dev/null +++ b/al2/x86_64/standard/5.0/tools/runtime_configs/python/3.11.2 @@ -0,0 +1,18 @@ +export PYTHON_CONFIGURE_OPTS="\ + --enable-shared + --enable-loadable-sqlite-extensions" + +# Don't change below this line. +# https://github.com/pyenv/pyenv/blob/master/plugins/python-build/share/python-build/3.11.2 + +#require_gcc +prefer_openssl11 +export PYTHON_BUILD_CONFIGURE_WITH_OPENSSL=1 +export PYTHON_BUILD_TCLTK_USE_PKGCONFIG=1 +install_package "openssl-1.1.1s" "https://www.openssl.org/source/openssl-1.1.1s.tar.gz#c5ac01e760ee6ff0dab61d6b2bbd30146724d063eb322180c6f18a6f74e4b6aa" mac_openssl --if has_broken_mac_openssl +install_package "readline-8.2" "https://ftpmirror.gnu.org/readline/readline-8.2.tar.gz#3feb7171f16a84ee82ca18a36d7b9be109a52c04f492a053331d7d1095007c35" mac_readline --if has_broken_mac_readline +if has_tar_xz_support; then + install_package "Python-3.11.2" "https://www.python.org/ftp/python/3.11.2/Python-3.11.2.tar.xz#29e4b8f5f1658542a8c13e2dd277358c9c48f2b2f7318652ef1675e402b9d2af" standard verify_py311 copy_python_gdb ensurepip +else + install_package "Python-3.11.2" "https://www.python.org/ftp/python/3.11.2/Python-3.11.2.tgz#2411c74bda5bbcfcddaf4531f66d1adc73f247f529aee981b029513aefdbf849" standard verify_py311 copy_python_gdb ensurepip +fi \ No newline at end of file diff --git a/buildspec.yml b/buildspec.yml index 620a238f..e622cc23 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -5,5 +5,5 @@ phases: commands: - cd $CODEBUILD_SRC_DIR/ubuntu/standard/7.0 - docker build -t aws/codebuild/standard:7.0 . - - cd $CODEBUILD_SRC_DIR/al2/x86_64/standard/4.0 - - docker build -t aws/codebuild/amazonlinux2-x86_64-standard:4.0 . + - cd $CODEBUILD_SRC_DIR/al2/x86_64/standard/5.0 + - docker build -t aws/codebuild/amazonlinux2-x86_64-standard:5.0 . diff --git a/ubuntu/standard/5.0/Dockerfile b/ubuntu/standard/5.0/Dockerfile index 03248e59..dae0e7e7 100644 --- a/ubuntu/standard/5.0/Dockerfile +++ b/ubuntu/standard/5.0/Dockerfile @@ -93,9 +93,9 @@ RUN set -ex \ # Install stunnel RUN set -ex \ - && STUNNEL_VERSION=5.67 \ + && STUNNEL_VERSION=5.69 \ && STUNNEL_TAR=stunnel-$STUNNEL_VERSION.tar.gz \ - && STUNNEL_SHA256="3086939ee6407516c59b0ba3fbf555338f9d52f459bcab6337c0f00e91ea8456" \ + && STUNNEL_SHA256="1ff7d9f30884c75b98c8a0a4e1534fa79adcada2322635e6787337b4e38fdb81" \ && curl -o $STUNNEL_TAR https://www.usenix.org.uk/mirrors/stunnel/archive/5.x/$STUNNEL_TAR && echo "$STUNNEL_SHA256 $STUNNEL_TAR" | sha256sum --check && tar xfz $STUNNEL_TAR \ && cd stunnel-$STUNNEL_VERSION \ && ./configure \ @@ -200,9 +200,9 @@ RUN set -ex \ # Install Powershell Core # See instructions at https://docs.microsoft.com/en-us/powershell/scripting/setup/installing-powershell-core-on-linux -ARG POWERSHELL_VERSION=7.1.7 +ARG POWERSHELL_VERSION=7.3.4 ARG POWERSHELL_DOWNLOAD_URL=https://github.com/PowerShell/PowerShell/releases/download/v$POWERSHELL_VERSION/powershell-$POWERSHELL_VERSION-linux-x64.tar.gz -ARG POWERSHELL_DOWNLOAD_SHA=5E683CA918A62D9A4345BF5E7FB676D3A273A6302D1F162E936FDEB43DBBA5DE +ARG POWERSHELL_DOWNLOAD_SHA=E85D5544E13A924F8B2C4A5DC2D43ABE46E46633F89E8D138D39C0AAEACB9976 RUN set -ex \ && curl -SL $POWERSHELL_DOWNLOAD_URL --output powershell.tar.gz \ @@ -217,7 +217,7 @@ RUN set -ex \ #**************** NODEJS **************************************************** ENV NODE_12_VERSION="12.22.12" -ENV NODE_14_VERSION="14.19.3" +ENV NODE_14_VERSION="14.21.3" RUN n $NODE_14_VERSION && npm install --save-dev -g -f grunt && npm install --save-dev -g -f grunt-cli && npm install --save-dev -g -f webpack \ && n $NODE_12_VERSION && npm install --save-dev -g -f grunt && npm install --save-dev -g -f grunt-cli && npm install --save-dev -g -f webpack \ @@ -232,9 +232,9 @@ RUN n $NODE_14_VERSION && npm install --save-dev -g -f grunt && npm install #**************** RUBY ********************************************************* ENV RUBY_26_VERSION="2.6.10" -ENV RUBY_27_VERSION="2.7.7" +ENV RUBY_27_VERSION="2.7.8" -RUN rbenv install $RUBY_26_VERSION && rm -rf /tmp/* \ +RUN rbenv install $RUBY_26_VERSION && rm -rf /tmp/* \ && rbenv install $RUBY_27_VERSION && rm -rf /tmp/* \ && rbenv global $RUBY_27_VERSION && ruby -v @@ -245,7 +245,7 @@ ENV PYTHON_37_VERSION="3.7.16" ENV PYTHON_38_VERSION="3.8.16" ENV PYTHON_39_VERSION="3.9.16" -ARG PYTHON_PIP_VERSION=21.1.2 +ARG PYTHON_PIP_VERSION=21.3.1 ENV PYYAML_VERSION=5.4.1 COPY tools/runtime_configs/python/$PYTHON_37_VERSION /root/.pyenv/plugins/python-build/share/python-build/$PYTHON_37_VERSION @@ -254,7 +254,7 @@ RUN pyenv global $PYTHON_37_VERSION RUN set -ex \ && pip3 install --no-cache-dir --upgrade --force-reinstall "pip==$PYTHON_PIP_VERSION" \ && pip3 install --no-cache-dir --upgrade "PyYAML==$PYYAML_VERSION" \ - && pip3 install --no-cache-dir --upgrade 'setuptools==57.4.0' wheel aws-sam-cli boto3 pipenv virtualenv --use-feature=2020-resolver + && pip3 install --no-cache-dir --upgrade 'setuptools==57.5.0' wheel aws-sam-cli boto3 pipenv virtualenv --use-feature=2020-resolver COPY tools/runtime_configs/python/$PYTHON_38_VERSION /root/.pyenv/plugins/python-build/share/python-build/$PYTHON_38_VERSION RUN env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install $PYTHON_38_VERSION && rm -rf /tmp/* @@ -262,7 +262,7 @@ RUN pyenv global $PYTHON_38_VERSION RUN set -ex \ && pip3 install --no-cache-dir --upgrade --force-reinstall "pip==$PYTHON_PIP_VERSION" \ && pip3 install --no-cache-dir --upgrade "PyYAML==$PYYAML_VERSION" \ - && pip3 install --no-cache-dir --upgrade 'setuptools==57.4.0' wheel aws-sam-cli boto3 pipenv virtualenv --use-feature=2020-resolver + && pip3 install --no-cache-dir --upgrade 'setuptools==57.5.0' wheel aws-sam-cli boto3 pipenv virtualenv --use-feature=2020-resolver COPY tools/runtime_configs/python/$PYTHON_39_VERSION /root/.pyenv/plugins/python-build/share/python-build/$PYTHON_39_VERSION RUN env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install $PYTHON_39_VERSION && rm -rf /tmp/* @@ -270,14 +270,14 @@ RUN pyenv global $PYTHON_39_VERSION RUN set -ex \ && pip3 install --no-cache-dir --upgrade --force-reinstall "pip==$PYTHON_PIP_VERSION" \ && pip3 install --no-cache-dir --upgrade "PyYAML==$PYYAML_VERSION" \ - && pip3 install --no-cache-dir --upgrade 'setuptools==57.4.0' wheel aws-sam-cli boto3 pipenv virtualenv --use-feature=2020-resolver + && pip3 install --no-cache-dir --upgrade 'setuptools==57.5.0' wheel aws-sam-cli boto3 pipenv virtualenv --use-feature=2020-resolver #**************** END PYTHON ***************************************************** #**************** PHP **************************************************** ENV PHP_73_VERSION="7.3.33" ENV PHP_74_VERSION="7.4.33" -ENV PHP_80_VERSION="8.0.26" +ENV PHP_80_VERSION="8.0.28" RUN curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash ENV PATH="/root/.phpenv/shims:/root/.phpenv/bin:$PATH" @@ -319,16 +319,16 @@ ENV JRE_11_HOME="/usr/lib/jvm/java-11-amazon-corretto" ENV JAVA_8_HOME="/usr/lib/jvm/java-1.8.0-amazon-corretto" ENV JDK_8_HOME="/usr/lib/jvm/java-1.8.0-amazon-corretto" ENV JRE_8_HOME="/usr/lib/jvm/java-1.8.0-amazon-corretto/jre" -ARG ANT_VERSION=1.10.12 +ARG ANT_VERSION=1.10.13 ARG MAVEN_HOME="/opt/maven" ARG MAVEN_VERSION=3.6.3 -ARG INSTALLED_GRADLE_VERSIONS="5.6.4 6.7.1" +ARG INSTALLED_GRADLE_VERSIONS="5.6.4 6.9.4" ARG GRADLE_VERSION=5.6.4 ARG SBT_VERSION=1.6.2 ARG GRADLE_PATH="$SRC_DIR/gradle" -ARG ANT_DOWNLOAD_SHA512="2287dc5cfc21043c14e5413f9afb1c87c9f266ec2a9ba2d3bf2285446f6e4ccb59b558bf2e5c57911a05dfa293c7d5c7ad60ac9f744ba11406f4e6f9a27b2403" +ARG ANT_DOWNLOAD_SHA512="de4ac604629e39a86a306f0541adb3775596909ad92feb8b7de759b1b286417db24f557228737c8b902d6abf722d2ce5bb0c3baa3640cbeec3481e15ab1958c9" ARG MAVEN_DOWNLOAD_SHA512="c35a1803a6e70a126e80b2b3ae33eed961f83ed74d18fcd16909b2d44d7dada3203f1ffe726c17ef8dcca2dcaa9fca676987befeadc9b9f759967a8cb77181c0" -ARG GRADLE_DOWNLOADS_SHA256="abc10bcedb58806e8654210f96031db541bcd2d6fc3161e81cb0572d6a15e821 5.6.4\n22449f5231796abd892c98b2a07c9ceebe4688d192cd2d6763f8e3bf8acbedeb 6.7.1" +ARG GRADLE_DOWNLOADS_SHA256="abc10bcedb58806e8654210f96031db541bcd2d6fc3161e81cb0572d6a15e821 5.6.4\n84b50e7b380e9dc9bbc81e30a8eb45371527010cf670199596c86875f774b8b0 6.9.4" ARG SBT_DOWNLOAD_SHA256="637637b6c4e6fa04ab62cd364061e32b12480b09001cd23303df62b36fadd440" ENV LOG4J_UNSAFE_VERSIONS="2.11.1 1.2.8" @@ -419,11 +419,11 @@ RUN rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/* \ ARG DOCKER_BUCKET="download.docker.com" ARG DOCKER_CHANNEL="stable" ARG DIND_COMMIT="3b5fac462d21ca164b3778647420016315289034" -ARG DOCKER_COMPOSE_VERSION="1.27.4" +ARG DOCKER_COMPOSE_VERSION="1.29.2" ARG SRC_DIR="/usr/src" -ARG DOCKER_SHA256="945C3A3DDCB79EE7307496C2F39EB3D8372466E8654E63D60BBB462E4A3C1427" -ARG DOCKER_VERSION="20.10.22" +ARG DOCKER_SHA256="AB91092320A87691A1EAF0225B48585DB9C69CFF0ED4B0F569F744FF765515E3" +ARG DOCKER_VERSION="20.10.24" # Install Docker RUN set -ex \ @@ -460,8 +460,8 @@ RUN goenv global $GOLANG_15_VERSION COPY ssh_config /root/.ssh/config COPY runtimes.yml /codebuild/image/config/runtimes.yml COPY dockerd-entrypoint.sh /usr/local/bin/dockerd-entrypoint.sh -COPY legal/bill_of_material.txt /usr/share/doc/bill_of_material.txt -COPY amazon-ssm-agent.json /etc/amazon/ssm/amazon-ssm-agent.json +COPY legal/bill_of_material.txt /usr/share/doc/bill_of_material.txt +COPY amazon-ssm-agent.json /etc/amazon/ssm/amazon-ssm-agent.json ENTRYPOINT ["/usr/local/bin/dockerd-entrypoint.sh"] diff --git a/ubuntu/standard/6.0/tools/runtime_configs/php/8.1.13 b/ubuntu/standard/5.0/tools/runtime_configs/php/8.0.28 similarity index 64% rename from ubuntu/standard/6.0/tools/runtime_configs/php/8.1.13 rename to ubuntu/standard/5.0/tools/runtime_configs/php/8.0.28 index 8be4fcb5..06ad0834 100644 --- a/ubuntu/standard/6.0/tools/runtime_configs/php/8.1.13 +++ b/ubuntu/standard/5.0/tools/runtime_configs/php/8.0.28 @@ -5,14 +5,16 @@ configure_option "--with-libedit" PHP_BUILD_EXTRA_MAKE_ARGUMENTS="-j4" -#https://github.com/php-build/php-build/blob/master/share/php-build/definitions/8.1.13 +#https://github.com/php-build/php-build/blob/master/share/php-build/definitions/8.0.28 #Don't change beyond this line configure_option "--enable-gd" configure_option "--with-jpeg" configure_option "--with-zip" -configure_option "--with-sodium" +configure_option "--with-mhash" -install_package "https://secure.php.net/distributions/php-8.1.13.tar.bz2" -install_xdebug "3.1.3" -enable_builtin_opcache +configure_option -D "--with-xmlrpc" + +install_package "https://www.php.net/distributions/php-8.0.28.tar.bz2" +install_xdebug "3.2.0" +enable_builtin_opcache \ No newline at end of file diff --git a/ubuntu/standard/6.0/Dockerfile b/ubuntu/standard/6.0/Dockerfile index 6648f9ed..b92c3c2a 100644 --- a/ubuntu/standard/6.0/Dockerfile +++ b/ubuntu/standard/6.0/Dockerfile @@ -62,9 +62,9 @@ FROM core AS tools # Install stunnel RUN set -ex \ - && STUNNEL_VERSION=5.67 \ + && STUNNEL_VERSION=5.69 \ && STUNNEL_TAR=stunnel-$STUNNEL_VERSION.tar.gz \ - && STUNNEL_SHA256="3086939ee6407516c59b0ba3fbf555338f9d52f459bcab6337c0f00e91ea8456" \ + && STUNNEL_SHA256="1ff7d9f30884c75b98c8a0a4e1534fa79adcada2322635e6787337b4e38fdb81" \ && curl -o $STUNNEL_TAR https://www.usenix.org.uk/mirrors/stunnel/archive/5.x/$STUNNEL_TAR && echo "$STUNNEL_SHA256 $STUNNEL_TAR" | sha256sum --check && tar xfz $STUNNEL_TAR \ && cd stunnel-$STUNNEL_VERSION \ && ./configure \ @@ -143,7 +143,7 @@ FROM tools AS runtimes #**************** .NET-CORE ******************************************************* -ENV DOTNET_6_SDK_VERSION="6.0.405" +ENV DOTNET_6_SDK_VERSION="6.0.408" ENV DOTNET_ROOT="/root/.dotnet" # Add .NET Core 6 Global Tools install folder to PATH @@ -163,9 +163,9 @@ RUN set -ex \ # Install Powershell Core # See instructions at https://docs.microsoft.com/en-us/powershell/scripting/setup/installing-powershell-core-on-linux -ARG POWERSHELL_VERSION=7.2.8 +ARG POWERSHELL_VERSION=7.2.11 ARG POWERSHELL_DOWNLOAD_URL=https://github.com/PowerShell/PowerShell/releases/download/v$POWERSHELL_VERSION/powershell-$POWERSHELL_VERSION-linux-x64.tar.gz -ARG POWERSHELL_DOWNLOAD_SHA=28FF2653667AC63B508F0B98433E48F64E6BC1EC59F8C1D252BA89EB5A7441A2 +ARG POWERSHELL_DOWNLOAD_SHA=9D6F798461D172391B508FCF27F9CBBB4BEF307EBFD6886ED50860C322C7D1B3 RUN set -ex \ && curl -SL $POWERSHELL_DOWNLOAD_URL --output powershell.tar.gz \ @@ -179,7 +179,7 @@ RUN set -ex \ #**************** NODEJS **************************************************** -ENV NODE_16_VERSION="16.19.0" +ENV NODE_16_VERSION="16.20.0" RUN n $NODE_16_VERSION && npm install --save-dev -g -f grunt && npm install --save-dev -g -f grunt-cli && npm install --save-dev -g -f webpack \ && curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \ @@ -192,7 +192,7 @@ RUN n $NODE_16_VERSION && npm install --save-dev -g -f grunt && npm install --s #**************** RUBY ********************************************************* -ENV RUBY_31_VERSION="3.1.3" +ENV RUBY_31_VERSION="3.1.4" RUN rbenv install $RUBY_31_VERSION && rm -rf /tmp/* \ && rbenv global $RUBY_31_VERSION && ruby -v @@ -200,9 +200,9 @@ RUN rbenv install $RUBY_31_VERSION && rm -rf /tmp/* \ #**************** END RUBY ***************************************************** #**************** PYTHON ***************************************************** -ENV PYTHON_310_VERSION="3.10.9" +ENV PYTHON_310_VERSION="3.10.10" -ARG PYTHON_PIP_VERSION=22.1.2 +ARG PYTHON_PIP_VERSION=22.3.1 ENV PYYAML_VERSION=5.4.1 COPY tools/runtime_configs/python/$PYTHON_310_VERSION /root/.pyenv/plugins/python-build/share/python-build/$PYTHON_310_VERSION @@ -216,7 +216,7 @@ RUN set -ex \ #**************** END PYTHON ***************************************************** #**************** PHP **************************************************** -ENV PHP_81_VERSION="8.1.13" +ENV PHP_81_VERSION="8.1.18" COPY tools/runtime_configs/php/$PHP_81_VERSION /root/.phpenv/plugins/php-build/share/php-build/definitions/$PHP_81_VERSION RUN phpenv install $PHP_81_VERSION && rm -rf /tmp/* && phpenv global $PHP_81_VERSION @@ -227,7 +227,7 @@ RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin - #**************** END PHP **************************************************** #**************** GOLANG **************************************************** -ENV GOLANG_18_VERSION="1.18.9" +ENV GOLANG_18_VERSION="1.18.10" RUN goenv install $GOLANG_18_VERSION && rm -rf /tmp/* && \ goenv global $GOLANG_18_VERSION && \ @@ -244,15 +244,15 @@ FROM runtimes AS runtimes_n_corretto ENV JAVA_17_HOME="/usr/lib/jvm/java-17-amazon-corretto" \ JDK_17_HOME="/usr/lib/jvm/java-17-amazon-corretto" \ JRE_17_HOME="/usr/lib/jvm/java-17-amazon-corretto" -ARG ANT_VERSION=1.10.12 +ARG ANT_VERSION=1.10.13 ARG MAVEN_HOME="/opt/maven" -ARG MAVEN_VERSION=3.8.7 +ARG MAVEN_VERSION=3.9.1 ARG INSTALLED_GRADLE_VERSIONS="7.6" ARG GRADLE_VERSION=7.6 ARG SBT_VERSION=1.8.2 ARG GRADLE_PATH="$SRC_DIR/gradle" -ARG ANT_DOWNLOAD_SHA512="2287dc5cfc21043c14e5413f9afb1c87c9f266ec2a9ba2d3bf2285446f6e4ccb59b558bf2e5c57911a05dfa293c7d5c7ad60ac9f744ba11406f4e6f9a27b2403" -ARG MAVEN_DOWNLOAD_SHA512="21c2be0a180a326353e8f6d12289f74bc7cd53080305f05358936f3a1b6dd4d91203f4cc799e81761cf5c53c5bbe9dcc13bdb27ec8f57ecf21b2f9ceec3c8d27" +ARG ANT_DOWNLOAD_SHA512="de4ac604629e39a86a306f0541adb3775596909ad92feb8b7de759b1b286417db24f557228737c8b902d6abf722d2ce5bb0c3baa3640cbeec3481e15ab1958c9" +ARG MAVEN_DOWNLOAD_SHA512="d3be5956712d1c2cf7a6e4c3a2db1841aa971c6097c7a67f59493a5873ccf8c8b889cf988e4e9801390a2b1ae5a0669de07673acb090a083232dbd3faf82f3e3" ARG GRADLE_DOWNLOADS_SHA256="312eb12875e1747e05c2f81a4789902d7e4ec5defbd1eefeaccc08acf096505d 7.6" ARG SBT_DOWNLOAD_SHA256="1f65344da074dbd66dfefa93c0eff8d319d772e5cad47fcbeb6ae178bbdf4686" ENV LOG4J_UNSAFE_VERSIONS="2.11.1 1.2.8" @@ -337,11 +337,11 @@ RUN rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/* \ ARG DOCKER_BUCKET="download.docker.com" ARG DOCKER_CHANNEL="stable" ARG DIND_COMMIT="3b5fac462d21ca164b3778647420016315289034" -ARG DOCKER_COMPOSE_VERSION="2.6.1" +ARG DOCKER_COMPOSE_VERSION="2.17.3" ARG SRC_DIR="/usr/src" -ARG DOCKER_SHA256="945C3A3DDCB79EE7307496C2F39EB3D8372466E8654E63D60BBB462E4A3C1427" -ARG DOCKER_VERSION="20.10.22" +ARG DOCKER_SHA256="AB91092320A87691A1EAF0225B48585DB9C69CFF0ED4B0F569F744FF765515E3" +ARG DOCKER_VERSION="20.10.24" # Install Docker RUN set -ex \ diff --git a/ubuntu/standard/6.0/tools/runtime_configs/php/8.1.18 b/ubuntu/standard/6.0/tools/runtime_configs/php/8.1.18 new file mode 100644 index 00000000..142b51c8 --- /dev/null +++ b/ubuntu/standard/6.0/tools/runtime_configs/php/8.1.18 @@ -0,0 +1,20 @@ +configure_option "--with-curl" +configure_option "--with-password-argon2" +configure_option "--with-pdo-pgsql" +configure_option "--with-libedit" + +PHP_BUILD_EXTRA_MAKE_ARGUMENTS="-j4" + +#https://github.com/php-build/php-build/blob/master/share/php-build/definitions/8.1.18 +#Don't change beyond this line + +configure_option "--enable-gd" +configure_option "--with-jpeg" +configure_option "--with-zip" +configure_option "--with-mhash" + +configure_option -D "--with-xmlrpc" + +install_package "https://www.php.net/distributions/php-8.1.18.tar.bz2" +install_xdebug "3.2.0" +enable_builtin_opcache \ No newline at end of file diff --git a/ubuntu/standard/6.0/tools/runtime_configs/python/3.10.9 b/ubuntu/standard/6.0/tools/runtime_configs/python/3.10.10 similarity index 62% rename from ubuntu/standard/6.0/tools/runtime_configs/python/3.10.9 rename to ubuntu/standard/6.0/tools/runtime_configs/python/3.10.10 index 31ccdb23..18551f05 100644 --- a/ubuntu/standard/6.0/tools/runtime_configs/python/3.10.9 +++ b/ubuntu/standard/6.0/tools/runtime_configs/python/3.10.10 @@ -3,7 +3,7 @@ export PYTHON_CONFIGURE_OPTS="\ --enable-loadable-sqlite-extensions" # Don't change below this line. -# https://github.com/pyenv/pyenv/blob/master/plugins/python-build/share/python-build/3.10.9 +# https://github.com/pyenv/pyenv/blob/master/plugins/python-build/share/python-build/3.10.10 # require_gcc prefer_openssl11 @@ -11,7 +11,7 @@ export PYTHON_BUILD_CONFIGURE_WITH_OPENSSL=1 install_package "openssl-1.1.1o" "https://www.openssl.org/source/openssl-1.1.1o.tar.gz#9384a2b0570dd80358841464677115df785edb941c71211f75076d72fe6b438f" mac_openssl --if has_broken_mac_openssl install_package "readline-8.1" "https://ftpmirror.gnu.org/readline/readline-8.1.tar.gz#f8ceb4ee131e3232226a17f51b164afc46cd0b9e6cef344be87c65962cb82b02" mac_readline --if has_broken_mac_readline if has_tar_xz_support; then - install_package "Python-3.10.9" "https://www.python.org/ftp/python/3.10.9/Python-3.10.9.tar.xz#5ae03e308260164baba39921fdb4dbf8e6d03d8235a939d4582b33f0b5e46a83" standard verify_py310 copy_python_gdb ensurepip + install_package "Python-3.10.10" "https://www.python.org/ftp/python/3.10.10/Python-3.10.10.tar.xz#0419e9085bf51b7a672009b3f50dbf1859acdf18ba725d0ec19aa5c8503f0ea3" standard verify_py310 copy_python_gdb ensurepip else - install_package "Python-3.10.9" "https://www.python.org/ftp/python/3.10.9/Python-3.10.9.tgz#4ccd7e46c8898f4c7862910a1703aa0e63525913a519abb2f55e26220a914d88" standard verify_py310 copy_python_gdb ensurepip -fi + install_package "Python-3.10.10" "https://www.python.org/ftp/python/3.10.10/Python-3.10.10.tgz#fba64559dde21ebdc953e4565e731573bb61159de8e4d4cedee70fb1196f610d" standard verify_py310 copy_python_gdb ensurepip +fi \ No newline at end of file diff --git a/ubuntu/standard/7.0/Dockerfile b/ubuntu/standard/7.0/Dockerfile index 5045e3af..15550c91 100644 --- a/ubuntu/standard/7.0/Dockerfile +++ b/ubuntu/standard/7.0/Dockerfile @@ -143,7 +143,7 @@ FROM tools AS runtimes #**************** .NET-CORE ******************************************************* -ENV DOTNET_6_SDK_VERSION="6.0.407" +ENV DOTNET_6_SDK_VERSION="6.0.408" ENV DOTNET_ROOT="/root/.dotnet" # Add .NET Core 6 Global Tools install folder to PATH @@ -163,9 +163,9 @@ RUN set -ex \ # Install Powershell Core # See instructions at https://docs.microsoft.com/en-us/powershell/scripting/setup/installing-powershell-core-on-linux -ARG POWERSHELL_VERSION=7.3.3 +ARG POWERSHELL_VERSION=7.3.4 ARG POWERSHELL_DOWNLOAD_URL=https://github.com/PowerShell/PowerShell/releases/download/v$POWERSHELL_VERSION/powershell-$POWERSHELL_VERSION-linux-x64.tar.gz -ARG POWERSHELL_DOWNLOAD_SHA=478320F62C9BEC5765414B82B4086310777BF95AB2FC2310B2DB6CBC253B40B4 +ARG POWERSHELL_DOWNLOAD_SHA=E85D5544E13A924F8B2C4A5DC2D43ABE46E46633F89E8D138D39C0AAEACB9976 RUN set -ex \ && curl -SL $POWERSHELL_DOWNLOAD_URL --output powershell.tar.gz \ @@ -179,7 +179,7 @@ RUN set -ex \ #**************** NODEJS **************************************************** -ENV NODE_18_VERSION="18.15.0" +ENV NODE_18_VERSION="18.16.0" RUN n $NODE_18_VERSION && npm install --save-dev -g -f grunt && npm install --save-dev -g -f grunt-cli && npm install --save-dev -g -f webpack \ && cd / && rm -rf $N_SRC_DIR && rm -rf /tmp/* @@ -188,7 +188,7 @@ RUN n $NODE_18_VERSION && npm install --save-dev -g -f grunt && npm install --s #**************** RUBY ********************************************************* -ENV RUBY_32_VERSION="3.2.1" +ENV RUBY_32_VERSION="3.2.2" RUN rbenv install $RUBY_32_VERSION && rm -rf /tmp/* \ && rbenv global $RUBY_32_VERSION && ruby -v @@ -198,7 +198,7 @@ RUN rbenv install $RUBY_32_VERSION && rm -rf /tmp/* \ #**************** PYTHON ***************************************************** ENV PYTHON_311_VERSION="3.11.2" -ARG PYTHON_PIP_VERSION=23.0.1 +ARG PYTHON_PIP_VERSION=23.1.1 ENV PYYAML_VERSION=6.0 COPY tools/runtime_configs/python/$PYTHON_311_VERSION /root/.pyenv/plugins/python-build/share/python-build/$PYTHON_311_VERSION @@ -206,13 +206,13 @@ RUN env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install $PYTHON_311_VERSIO RUN pyenv global $PYTHON_311_VERSION RUN set -ex \ && pip3 install --no-cache-dir --upgrade --force-reinstall "pip==$PYTHON_PIP_VERSION" \ - && pip3 install --no-cache-dir --upgrade 'setuptools==67.6.0' wheel aws-sam-cli boto3 pipenv virtualenv \ + && pip3 install --no-cache-dir --upgrade 'setuptools==67.7.2' wheel aws-sam-cli boto3 pipenv virtualenv \ && pip3 install --no-cache-dir --upgrade "PyYAML==$PYYAML_VERSION" #**************** END PYTHON ***************************************************** #**************** PHP **************************************************** -ENV PHP_82_VERSION="8.2.4" +ENV PHP_82_VERSION="8.2.5" COPY tools/runtime_configs/php/$PHP_82_VERSION /root/.phpenv/plugins/php-build/share/php-build/definitions/$PHP_82_VERSION RUN phpenv install $PHP_82_VERSION && rm -rf /tmp/* && phpenv global $PHP_82_VERSION @@ -223,7 +223,7 @@ RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin - #**************** END PHP **************************************************** #**************** GOLANG **************************************************** -ENV GOLANG_20_VERSION="1.20.2" +ENV GOLANG_20_VERSION="1.20.3" RUN goenv install $GOLANG_20_VERSION && rm -rf /tmp/* && \ goenv global $GOLANG_20_VERSION && \ @@ -242,12 +242,12 @@ ENV JAVA_17_HOME="/usr/lib/jvm/java-17-amazon-corretto" \ ARG ANT_VERSION=1.10.13 ARG MAVEN_HOME="/opt/maven" ARG MAVEN_VERSION=3.9.1 -ARG GRADLE_VERSION=8.0.2 +ARG GRADLE_VERSION=8.1.1 ARG SBT_VERSION=1.8.2 ARG GRADLE_PATH="$SRC_DIR/gradle" ARG ANT_DOWNLOAD_SHA512="de4ac604629e39a86a306f0541adb3775596909ad92feb8b7de759b1b286417db24f557228737c8b902d6abf722d2ce5bb0c3baa3640cbeec3481e15ab1958c9" ARG MAVEN_DOWNLOAD_SHA512="d3be5956712d1c2cf7a6e4c3a2db1841aa971c6097c7a67f59493a5873ccf8c8b889cf988e4e9801390a2b1ae5a0669de07673acb090a083232dbd3faf82f3e3" -ARG GRADLE_DOWNLOADS_SHA256="47a5bfed9ef814f90f8debcbbb315e8e7c654109acd224595ea39fca95c5d4da 8.0.2" +ARG GRADLE_DOWNLOADS_SHA256="5625a0ae20fe000d9225d000b36909c7a0e0e8dda61c19b12da769add847c975 8.1.1" ARG SBT_DOWNLOAD_SHA256="1f65344da074dbd66dfefa93c0eff8d319d772e5cad47fcbeb6ae178bbdf4686" ARG MAVEN_CONFIG_HOME="/root/.m2" @@ -326,12 +326,12 @@ RUN rm -fr /var/lib/apt/lists/* /tmp/* /var/tmp/* \ ARG DOCKER_BUCKET="download.docker.com" ARG DOCKER_CHANNEL="stable" ARG DIND_COMMIT="3b5fac462d21ca164b3778647420016315289034" -ARG DOCKER_COMPOSE_VERSION="2.17.2" +ARG DOCKER_COMPOSE_VERSION="2.17.3" ARG DOCKER_BUILDX_VERSION="0.10.4" ARG SRC_DIR="/usr/src" -ARG DOCKER_SHA256="ec8a71e79125d3ca76f7cc295f35eea225f4450e0ffe0775f103e2952ff580f6" -ARG DOCKER_VERSION="23.0.1" +ARG DOCKER_SHA256="81BD643A32B3428F6D9EAFBD9331D0DA1577C958C1C2702DB1EFF7AFA1CDF3CD" +ARG DOCKER_VERSION="23.0.4" # Install Docker RUN set -ex \ @@ -346,15 +346,19 @@ RUN set -ex \ && echo 'dockremap:165536:65536' >> /etc/subuid \ && echo 'dockremap:165536:65536' >> /etc/subgid \ && wget -q "https://raw.githubusercontent.com/docker/docker/${DIND_COMMIT}/hack/dind" -O /usr/local/bin/dind \ - && curl -L https://github.com/docker/compose/releases/download/v${DOCKER_COMPOSE_VERSION}/docker-compose-Linux-x86_64 > /usr/local/bin/docker-compose \ - # Add docker buildx tool + # Install docker compose as docker plugin and maintain docker-compose usage && mkdir -p /usr/local/lib/docker/cli-plugins \ - && curl -L https://github.com/docker/buildx/releases/download/v${DOCKER_BUILDX_VERSION}/buildx-v${DOCKER_BUILDX_VERSION}.linux-amd64 > /usr/local/lib/docker/cli-plugins/docker-buildx \ - && chmod +x /usr/local/bin/dind /usr/local/bin/docker-compose /usr/local/lib/docker/cli-plugins/docker-buildx \ - # Ensure docker-compose works + && curl -L https://github.com/docker/compose/releases/download/v${DOCKER_COMPOSE_VERSION}/docker-compose-Linux-x86_64 -o /usr/local/lib/docker/cli-plugins/docker-compose \ + && chmod +x /usr/local/lib/docker/cli-plugins/docker-compose \ + && ln -s /usr/local/lib/docker/cli-plugins/docker-compose /usr/local/bin/docker-compose \ + # Ensure docker-compose and docker compose work && docker-compose version \ + && docker compose version \ + # Add docker buildx tool + && curl -L https://github.com/docker/buildx/releases/download/v${DOCKER_BUILDX_VERSION}/buildx-v${DOCKER_BUILDX_VERSION}.linux-amd64 -o /usr/local/bin/docker-buildx \ + && chmod +x /usr/local/bin/dind /usr/local/bin/docker-buildx \ # Ensure docker-buildx works - && /usr/local/lib/docker/cli-plugins/docker-buildx version + && docker-buildx version VOLUME /var/lib/docker #*********************** END DOCKER **************************** diff --git a/al2/x86_64/standard/4.0/tools/runtime_configs/php/8.1.13 b/ubuntu/standard/7.0/tools/runtime_configs/php/8.2.5 similarity index 64% rename from al2/x86_64/standard/4.0/tools/runtime_configs/php/8.1.13 rename to ubuntu/standard/7.0/tools/runtime_configs/php/8.2.5 index f7c65278..1f7eb4a7 100644 --- a/al2/x86_64/standard/4.0/tools/runtime_configs/php/8.1.13 +++ b/ubuntu/standard/7.0/tools/runtime_configs/php/8.2.5 @@ -5,13 +5,16 @@ configure_option "--with-libedit" PHP_BUILD_EXTRA_MAKE_ARGUMENTS="-j4" -#https://github.com/php-build/php-build/blob/master/share/php-build/definitions/8.1.13 +#https://github.com/php-build/php-build/blob/master/share/php-build/definitions/8.2.5 #Don't change beyond this line configure_option "--enable-gd" configure_option "--with-jpeg" configure_option "--with-zip" +configure_option "--with-mhash" -install_package "https://secure.php.net/distributions/php-8.1.13.tar.bz2" -install_xdebug "3.1.3" -enable_builtin_opcache +configure_option -D "--with-xmlrpc" + +install_package "https://www.php.net/distributions/php-8.2.5.tar.bz2" +install_xdebug "3.2.0" +enable_builtin_opcache \ No newline at end of file