potiuk commented on a change in pull request #4937: [AIRFLOW-4116] 
Multi-staging includes CI image [Step 2/3]
URL: https://github.com/apache/airflow/pull/4937#discussion_r269473665
 
 

 ##########
 File path: Dockerfile
 ##########
 @@ -85,14 +85,134 @@ RUN adduser airflow \
     && echo "airflow ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/airflow \
     && chmod 0440 /etc/sudoers.d/airflow
 
+############################################################################################################
+# This is an image with all APT dependencies needed by CI. It is built on top 
of the airlfow APT image
+# Parameters:
+#     airflow-apt-deps - this is the base image for CI deps image.
+############################################################################################################
+FROM airflow-apt-deps as airflow-ci-apt-deps
+
+SHELL ["/bin/bash", "-o", "pipefail", "-e", "-u", "-x", "-c"]
+
+ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
+
+ARG APT_DEPS_IMAGE
+ENV APT_DEPS_IMAGE=${APT_DEPS_IMAGE}
+
+RUN echo "${APT_DEPS_IMAGE}"
+
+# Note the ifs below might be removed if Buildkit will become usable. It 
should skip building this
+# image automatically if it is not used. For now we still go through all 
layers below but they are empty
+# Note missing directories on debian-stretch 
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=863199
+RUN if [[ "${APT_DEPS_IMAGE}" == "airflow-ci-apt-deps" ]]; then \
+        mkdir -pv /usr/share/man/man1 \
+        && mkdir -pv /usr/share/man/man7 \
+        && apt-get update \
+        && apt-get install --no-install-recommends -y \
+          lsb-release gnupg dirmngr openjdk-8-jdk \
+          vim tmux less unzip net-tools netcat \
+          ldap-utils postgresql-client sqlite3 \
+          krb5-user openssh-client openssh-server \
+          python-selinux \
 
 Review comment:
   I looked into it and I think we should stick with MySQL. It's only pure 
Debian Stretch that released MariaDB packages as default (and only) choice: 
https://mariadb.org/debian-9-released-mariadb-mysql-variant/ . On Ubuntu 18.04, 
MySQL is still the default choice and you have to add mariadb manually 
(https://tecadmin.net/install-mariadb-on-ubuntu-18-04-bionic/). I am not 100% 
sure, but I think Ubuntu user base will be far bigger than Debian's so having a 
"true" MySQL libs makes perfect sense. MySQL is still FOSS so no problems with 
licensing etc - and I am using official Oracle installation instructions for 
Debian, so I guess this should be fine @ashb?
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to