summaryrefslogtreecommitdiff
path: root/qa/Dockerfile
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-05-19 07:33:21 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2022-05-19 07:33:21 +0000
commit36a59d088eca61b834191dacea009677a96c052f (patch)
treee4f33972dab5d8ef79e3944a9f403035fceea43f /qa/Dockerfile
parenta1761f15ec2cae7c7f7bbda39a75494add0dfd6f (diff)
downloadgitlab-ce-36a59d088eca61b834191dacea009677a96c052f.tar.gz
Add latest changes from gitlab-org/gitlab@15-0-stable-eev15.0.0-rc42
Diffstat (limited to 'qa/Dockerfile')
-rw-r--r--qa/Dockerfile62
1 files changed, 13 insertions, 49 deletions
diff --git a/qa/Dockerfile b/qa/Dockerfile
index fa666daa927..4fd44ba02df 100644
--- a/qa/Dockerfile
+++ b/qa/Dockerfile
@@ -1,33 +1,17 @@
-FROM ruby:2.7-buster
+FROM registry.gitlab.com/gitlab-org/gitlab-build-images/debian-bullseye-ruby-2.7:bundler-2.3-git-2.33-lfs-2.9-chrome-99-docker-20.10.14-gcloud-383-kubectl-1.23
LABEL maintainer="GitLab Quality Department <quality@gitlab.com>"
-ENV DEBIAN_FRONTEND="noninteractive"
-ENV DOCKER_VERSION="17.09.0-ce"
+ENV DEBIAN_FRONTEND="noninteractive" \
+ BUNDLE_WITHOUT=development
##
-# Update APT sources and install dependencies
+# Install system libs
#
-RUN sed -i "s/httpredir.debian.org/ftp.us.debian.org/" /etc/apt/sources.list
-RUN apt-get update && apt-get install -y wget unzip xvfb lsb-release git git-lfs
-
-##
-# Install Docker
-#
-RUN wget -q "https://download.docker.com/linux/static/stable/x86_64/docker-${DOCKER_VERSION}.tgz" && \
- tar -zxf "docker-${DOCKER_VERSION}.tgz" && mv docker/docker /usr/local/bin/docker && \
- rm "docker-${DOCKER_VERSION}.tgz"
-
-##
-# Install client certificate - Bug in Chrome Headless: https://gitlab.com/gitlab-org/gitlab/-/issues/331492
-#
-# RUN apt install -y libnss3-tools
-# RUN mkdir -p $HOME/.pki/nssdb
-# RUN certutil -N -d sql:$HOME/.pki/nssdb
-# COPY ./qa/tls_certificates/client/client.pfx /tmp/client.pfx
-# RUN pk12util -d sql:$HOME/.pki/nssdb -i /tmp/client.pfx -W ''
-# RUN mkdir -p /etc/opt/chrome/policies/managed
-# RUN echo '{ "AutoSelectCertificateForUrls": ["{\"pattern\":\"*\",\"filter\":{}}"] }' > /etc/opt/chrome/policies/managed/policy.json
-# RUN cat /etc/opt/chrome/policies/managed/policy.json
+RUN apt-get update; \
+ apt-get install -y xvfb unzip; \
+ apt-get -yq autoremove; \
+ apt-get clean -yqq; \
+ rm -rf /var/lib/apt/lists/*
##
# Install root certificate
@@ -37,39 +21,19 @@ ADD ./qa/tls_certificates/authority/ca.crt /usr/share/ca-certificates/gitlab/
RUN echo 'gitlab/ca.crt' >> /etc/ca-certificates.conf
RUN chmod -R 644 /usr/share/ca-certificates/gitlab && update-ca-certificates
-##
-# Install gcloud and kubectl CLI used in Auto DevOps test to create K8s
-# clusters
-#
-RUN export CLOUD_SDK_REPO="cloud-sdk-$(lsb_release -c -s)" && \
- echo "deb http://packages.cloud.google.com/apt $CLOUD_SDK_REPO main" | tee -a /etc/apt/sources.list.d/google-cloud-sdk.list && \
- curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add - && \
- apt-get update -y && apt-get install google-cloud-sdk kubectl -y
-
-##
-# Install Google Chrome version with headless support
-# Download from our local S3 bucket, populated by https://gitlab.com/gitlab-org/gitlab-build-images/-/blob/master/scripts/cache-google-chrome
-#
-# https://s3.amazonaws.com/gitlab-google-chrome-stable
-ENV CHROME_VERSION="91.0.4472.77-1"
-ENV CHROME_DEB="google-chrome-stable_${CHROME_VERSION}_amd64.deb"
-ENV CHROME_URL="https://s3.amazonaws.com/gitlab-google-chrome-stable/${CHROME_DEB}"
-RUN curl --silent --show-error --fail -O "${CHROME_URL}" && \
- dpkg -i "./${CHROME_DEB}" || true && \
- apt-get install -f -y && \
- rm -f "./${CHROME_DEB}"
-
WORKDIR /home/gitlab/qa
+##
# Install qa dependencies or fetch from cache if unchanged
+#
COPY ./qa/Gemfile* /home/gitlab/qa/
-RUN gem install bundler --no-document --conservative --version 2.3.6
-RUN bundle install --jobs=$(nproc) --retry=3 --without=development --quiet
+RUN bundle install --jobs=$(nproc) --retry=3
##
# Fetch chromedriver based on version of chrome
# Copy rakefile first so that webdriver is not reinstalled on every code change
# https://github.com/titusfortner/webdrivers
+#
COPY ./qa/tasks/webdrivers.rake /home/gitlab/qa/tasks/
RUN bundle exec rake -f tasks/webdrivers.rake webdrivers:chromedriver:update