FROM debian:latest LABEL author="Tara Piccari" maintainer="tarapiccari@gmail.com" COPY ./agent.secret /agent.secret ENV DOCKER 1 USER root WORKDIR / ENV GRADLE_VERSION 8.3 ENV ANDROID_HOME "/opt/android-sdk-linux" ENV HOME /root ENV ANDROID_SDK_VER 11076708 ENV ANDROID_SDK_ROOT $ANDROID_HOME ENV PATH $PATH:$ANDROID_HOME/cmdline-tools:$ANDROID_HOME/cmdline-tools/bin:$ANDROID_HOME/platform-tools:/flutter/bin ENV DEBIAN_FRONTEND=noninteractive RUN apt update; apt-get upgrade -y RUN apt install -y build-essential cmake ninja-build openjdk-17-jdk nasm git curl wget openjdk-17-jre android-sdk android-sdk-build-tools android-sdk-platform-tools clang pkg-config unzip libgtk-3-dev zip lldb libglu1-mesa libpulse0 cargo python3-dev libffi-dev libssl-dev apt-utils RUN curl -sO https://ci.zontreck.com/jnlpJars/agent.jar RUN curl -sO https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.22.2-stable.tar.xz RUN tar -xf /flutter_linux_3.22.2-stable.tar.xz RUN curl -sO https://dl.google.com/android/repository/commandlinetools-linux-${ANDROID_SDK_VER}_latest.zip RUN unzip -qq /commandlinetools-linux-${ANDROID_SDK_VER}_latest.zip -d $ANDROID_SDK_ROOT RUN rm -v /commandlinetools-linux-${ANDROID_SDK_VER}_latest.zip RUN mkdir -p $ANDROID_HOME/licenses RUN yes | $ANDROID_HOME/cmdline-tools/bin/sdkmanager --licenses --sdk_root=${ANDROID_SDK_ROOT} SHELL [ "/bin/bash", "-c" ] RUN mkdir -p /home/adk/.android \ && mkdir -pv /home/adk/app \ && touch /home/adk/.android/repositories.cfg ENV HOME /home/adk WORKDIR /home/adk RUN curl -s "https://get.sdkman.io" | bash ADD packages.txt $HOME RUN apt install -y fonts-liberation libgtk-4-1 libgbm1 libu2f-udev libvulkan1 xdg-utils RUN curl -sO https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb RUN dpkg -i google-chrome-stable_current_amd64.deb RUN chown -R root:root /flutter RUN /flutter/bin/flutter --disable-analytics # Use SDK Manager to install necessary components RUN $ANDROID_HOME/cmdline-tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} --update \ && while read -r pkg; do PKGS="${PKGS}${pkg} "; done < $HOME/packages.txt \ && $ANDROID_HOME/cmdline-tools/bin/sdkmanager --sdk_root=${ANDROID_SDK_ROOT} $PKGS \ && rm $HOME/packages.txt # Install Gradle RUN source "${HOME}/.sdkman/bin/sdkman-init.sh" \ && sdk install gradle ${GRADLE_VERSION} RUN /flutter/bin/flutter doctor RUN /flutter/bin/flutter precache ADD pub.secret / RUN cat /pub.secret | dart pub token add https://git.zontreck.com/api/packages/AriasCreations/pub # Set up needed git and extra build components RUN git config --global user.name "zontreck" RUN git config --global user.email "tarapiccari@gmail.com" RUN apt-get install -y rsync zip WORKDIR /root/.ssh ADD ./id_rsa ./id_rsa ADD ./id_rsa.pub ./id_rsa.pub RUN chmod 0600 id_rsa ENTRYPOINT [ "java", "-jar", "/agent.jar", "-url", "https://ci.zontreck.com", "-secret", "@/agent.secret", "-name", "Linux", "-workDir", "/builder" ]