-
Notifications
You must be signed in to change notification settings - Fork 38
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Publish v2024.09.1. [release] (#152)
- Loading branch information
1 parent
82600c7
commit 3517495
Showing
8 changed files
with
214 additions
and
15 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
# vim:set ft=dockerfile: | ||
|
||
# Do not edit individual Dockerfiles manually. Instead, please make changes to the Dockerfile.template, which will be used by the build script to generate Dockerfiles. | ||
|
||
# By policy, the base image tag should be a quarterly tag unless there's a | ||
# specific reason to use a different one. This means January, April, July, or | ||
# October. | ||
|
||
FROM cimg/base:2024.02 | ||
|
||
LABEL maintainer="CircleCI Execution Team <[email protected]>" | ||
|
||
# Java 17 is default | ||
RUN sudo apt-get update && sudo apt-get install -y \ | ||
ant \ | ||
openjdk-8-jdk \ | ||
openjdk-17-jdk \ | ||
openjdk-21-jdk \ | ||
ruby-full \ | ||
&& \ | ||
sudo rm -rf /var/lib/apt/lists/* && \ | ||
ruby -v && \ | ||
sudo gem install bundler && \ | ||
bundle version | ||
|
||
#fixes issue with bundle install highlighted in https://github.com/CircleCI-Public/cimg-android/issues/82 | ||
RUN sudo chmod -R a+w /var/lib/gems/ /usr/local/bin | ||
|
||
ENV M2_HOME /usr/local/apache-maven | ||
ENV MAVEN_OPTS -Xmx2048m | ||
ENV PATH $M2_HOME/bin:$PATH | ||
# Set JAVA_HOME (and related) environment variable. This will be set to our | ||
# default Java version of 21 but the user would need to reset it when changing | ||
# JAVA versions. | ||
ENV JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64 | ||
ENV JDK_HOME=${JAVA_HOME} | ||
ENV JRE_HOME=${JDK_HOME} | ||
ENV MAVEN_VERSION=3.9.9 | ||
RUN curl -sSL -o /tmp/maven.tar.gz http://apache.osuosl.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.tar.gz && \ | ||
sudo tar -xz -C /usr/local -f /tmp/maven.tar.gz && \ | ||
sudo ln -sf /usr/local/apache-maven-${MAVEN_VERSION} /usr/local/apache-maven && \ | ||
rm -rf /tmp/maven.tar.gz && \ | ||
mkdir -p /home/circleci/.m2 | ||
ENV GRADLE_VERSION=8.10 | ||
ENV PATH $PATH:/usr/local/gradle-${GRADLE_VERSION}/bin | ||
RUN URL=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip && \ | ||
curl -sSL -o /tmp/gradle.zip $URL && \ | ||
sudo unzip -d /usr/local /tmp/gradle.zip && \ | ||
rm -rf /tmp/gradle.zip | ||
|
||
# Install Android SDK Tools | ||
ENV ANDROID_HOME "/home/circleci/android-sdk" | ||
ENV ANDROID_SDK_ROOT $ANDROID_HOME | ||
ENV CMDLINE_TOOLS_ROOT "${ANDROID_HOME}/cmdline-tools/latest/bin" | ||
ENV ADB_INSTALL_TIMEOUT 120 | ||
ENV PATH "${ANDROID_HOME}/emulator:${ANDROID_HOME}/cmdline-tools/latest/bin:${ANDROID_HOME}/tools:${ANDROID_HOME}/tools/bin:${ANDROID_HOME}/platform-tools:${ANDROID_HOME}/platform-tools/bin:${PATH}" | ||
# You can find the latest command line tools here: https://developer.android.com/studio#command-line-tools-only | ||
RUN SDK_TOOLS_URL="https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip" && \ | ||
mkdir -p ${ANDROID_HOME}/cmdline-tools && \ | ||
mkdir ${ANDROID_HOME}/platforms && \ | ||
mkdir ${ANDROID_HOME}/ndk && \ | ||
wget -O /tmp/cmdline-tools.zip -t 5 "${SDK_TOOLS_URL}" && \ | ||
unzip -q /tmp/cmdline-tools.zip -d ${ANDROID_HOME}/cmdline-tools && \ | ||
rm /tmp/cmdline-tools.zip && \ | ||
mv ${ANDROID_HOME}/cmdline-tools/cmdline-tools ${ANDROID_HOME}/cmdline-tools/latest | ||
|
||
RUN echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "tools" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "platform-tools" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "build-tools;35.0.0-rc4" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "build-tools;34.0.0-rc3" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "build-tools;33.0.3" | ||
RUN echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "platforms;android-29" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "platforms;android-30" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "platforms;android-31" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "platforms;android-32" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "platforms;android-33" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "platforms;android-34" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "platforms;android-35" | ||
|
||
# Install some useful packages | ||
RUN echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "extras;android;m2repository" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "extras;google;m2repository" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "extras;google;google_play_services" && \ | ||
sudo gem install fastlane --version 2.222.0 --no-document && \ | ||
curl -sL https://firebase.tools | bash | ||
|
||
# Install Google Cloud CLI | ||
# Latest gcloud version can be found here: https://cloud.google.com/sdk/docs/release-notes | ||
ENV GCLOUD_VERSION=453.0.0-0 | ||
RUN curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - && \ | ||
sudo add-apt-repository "deb https://packages.cloud.google.com/apt cloud-sdk main" && \ | ||
sudo apt-get update && sudo apt-get install -y google-cloud-sdk=${GCLOUD_VERSION} && \ | ||
sudo gcloud config set --installation component_manager/disable_update_check true && \ | ||
sudo gcloud config set disable_usage_reporting false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
# vim:set ft=dockerfile: | ||
|
||
FROM cimg/android:2024.09.1-node | ||
|
||
LABEL maintainer="CircleCI Community & Partner Engineering Team <[email protected]>" | ||
|
||
# Install Selenium | ||
ENV SELENIUM_VER=3.141.59 | ||
RUN curl -sSL -o selenium-server-standalone-${SELENIUM_VER}.jar "https://selenium-release.storage.googleapis.com/${SELENIUM_VER%.*}/selenium-server-standalone-${SELENIUM_VER}.jar" && \ | ||
sudo cp selenium-server-standalone-${SELENIUM_VER}.jar /usr/local/bin/selenium.jar && \ | ||
rm selenium-server-standalone-${SELENIUM_VER}.jar | ||
|
||
RUN sudo apt-get update && \ | ||
sudo apt-get install --yes --no-install-recommends \ | ||
xvfb \ | ||
&& \ | ||
|
||
# Install Java only if it's not already available | ||
# Java is installed for Selenium | ||
if ! command -v java > /dev/null; then \ | ||
echo "Java not found in parent image, installing..." && \ | ||
sudo apt-get install -y --no-install-recommends --no-upgrade openjdk-11-jre; \ | ||
fi && \ | ||
sudo rm -rf /var/lib/apt/lists/* | ||
|
||
# Below is setup to allow xvfb to start when the container starts up. | ||
# The label in particular allows this image to override what CircleCI does | ||
# when booting the image. | ||
LABEL com.circleci.preserve-entrypoint=true | ||
ENV DISPLAY=":99" | ||
#RUN printf '#!/bin/sh\nXvfb :99 -screen 0 1280x1024x24 &\nexec "$@"\n' > /tmp/entrypoint && \ | ||
# chmod +x /tmp/entrypoint && \ | ||
# sudo mv /tmp/entrypoint /docker-entrypoint.sh | ||
RUN printf '#!/bin/sh\nXvfb :99 -screen 0 1280x1024x24 &\nexec "$@"\n' | sudo tee /docker-entrypoint.sh && \ | ||
sudo chmod +x /docker-entrypoint.sh | ||
|
||
# Install a single version of Firefox. This isn't intended to be a regularly | ||
# updated thing. Instead, if this version of Firefox isn't what the end user | ||
# wants they should install a different version via the Browser Tools Orb. | ||
# | ||
# Canonical made a major technology change in how Firefox is installed from | ||
# Ubuntu 21.10 and up. The general CI space doesn't seem to be ready for a snap | ||
# based Firefox right now so we are installing it from the Mozilla PPA. | ||
RUN echo 'Package: *' | sudo tee -a /etc/apt/preferences.d/firefox.pref && \ | ||
echo 'Pin: release o=LP-PPA-mozillateam' | sudo tee -a /etc/apt/preferences.d/firefox.pref && \ | ||
echo 'Pin-Priority: 1001' | sudo tee -a /etc/apt/preferences.d/firefox.pref && \ | ||
sudo add-apt-repository --yes ppa:mozillateam/ppa && \ | ||
sudo apt-get install --no-install-recommends --yes firefox && \ | ||
sudo rm -rf /var/lib/apt/lists/* && \ | ||
firefox --version | ||
|
||
# Install a single version of Google Chrome Stable. This isn't intended to be a | ||
# regularly updated thing. Instead, if this version of Chrome isn't what the | ||
# end user wants they should install a different version via the Browser Tools | ||
# Orb. | ||
RUN wget -q -O - "https://dl.google.com/linux/linux_signing_key.pub" | sudo apt-key add - && \ | ||
echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list && \ | ||
sudo apt-get update && \ | ||
sudo apt-get install google-chrome-stable && \ | ||
sudo rm -rf /var/lib/apt/lists/* | ||
|
||
ENTRYPOINT ["/docker-entrypoint.sh"] | ||
CMD ["/bin/sh"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# vim:set ft=dockerfile: | ||
|
||
FROM cimg/android:2024.09.1 | ||
|
||
LABEL maintainer="Community & Partner Engineering Team <[email protected]>" | ||
|
||
RUN echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "cmake;3.18.1" && \ | ||
echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "cmake;3.22.1" | ||
|
||
# Use the last two versions of the NDK | ||
# Setup LTS release | ||
ENV NDK_LTS_VERSION "27.0.12077973" | ||
ENV ANDROID_NDK_HOME "/home/circleci/android-sdk/ndk/${NDK_LTS_VERSION}" | ||
RUN echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "ndk;${NDK_LTS_VERSION}" | ||
|
||
ENV ANDROID_NDK_ROOT "${ANDROID_NDK_HOME}" | ||
ENV PATH "${ANDROID_NDK_HOME}:${PATH}" | ||
|
||
# Setup Stable release | ||
ENV NDK_STABLE_VERSION "26.3.11579264" | ||
RUN echo y | ${CMDLINE_TOOLS_ROOT}/sdkmanager "ndk;${NDK_STABLE_VERSION}" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# vim:set ft=dockerfile: | ||
|
||
FROM cimg/android:2024.09.1 | ||
|
||
LABEL maintainer="Community & Partner Engineering Team <[email protected]>" | ||
|
||
# Dockerfile will pull the latest LTS release from cimg-node. | ||
RUN curl -sSL "https://raw.githubusercontent.com/CircleCI-Public/cimg-node/main/ALIASES" -o nodeAliases.txt && \ | ||
NODE_VERSION=$(grep "lts" ./nodeAliases.txt | cut -d "=" -f 2-) && \ | ||
[[ $(uname -m) == "x86_64" ]] && ARCH="x64" || ARCH="arm64" && \ | ||
curl -L -o node.tar.xz "https://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-${ARCH}.tar.xz" && \ | ||
sudo tar -xJf node.tar.xz -C /usr/local --strip-components=1 && \ | ||
rm node.tar.xz nodeAliases.txt && \ | ||
sudo ln -s /usr/local/bin/node /usr/local/bin/nodejs | ||
|
||
ENV YARN_VERSION 1.22.19 | ||
RUN curl -L -o yarn.tar.gz "https://yarnpkg.com/downloads/${YARN_VERSION}/yarn-v${YARN_VERSION}.tar.gz" && \ | ||
sudo tar -xzf yarn.tar.gz -C /opt/ && \ | ||
rm yarn.tar.gz && \ | ||
sudo ln -s /opt/yarn-v${YARN_VERSION}/bin/yarn /usr/local/bin/yarn && \ | ||
sudo ln -s /opt/yarn-v${YARN_VERSION}/bin/yarnpkg /usr/local/bin/yarnpkg |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
GEN_CHECK=(2024.08.1) | ||
GEN_CHECK=(2024.09.1) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,11 @@ | ||
#!/usr/bin/env bash | ||
# Do not edit by hand; please use build scripts/templates to make changes | ||
set -eo pipefail | ||
docker push cimg/android:2024.08 | ||
docker push cimg/android:2024.08.1 | ||
docker push cimg/android:2024.08-ndk | ||
docker push cimg/android:2024.08.1-ndk | ||
docker push cimg/android:2024.08-node | ||
docker push cimg/android:2024.08.1-node | ||
docker push cimg/android:2024.08-browsers | ||
docker push cimg/android:2024.08.1-browsers | ||
docker push cimg/android:2024.09 | ||
docker push cimg/android:2024.09.1 | ||
docker push cimg/android:2024.09-ndk | ||
docker push cimg/android:2024.09.1-ndk | ||
docker push cimg/android:2024.09-node | ||
docker push cimg/android:2024.09.1-node | ||
docker push cimg/android:2024.09-browsers | ||
docker push cimg/android:2024.09.1-browsers |