mirror of
https://github.com/flutter/packages.git
synced 2025-07-02 16:39:13 +08:00
[ci] Update Dockerfile (#2642)
This commit is contained in:
@ -1,30 +1,43 @@
|
|||||||
# Last updated 02/04/2022 (to rebuild the docker image, update this timestamp)
|
|
||||||
# The Flutter version is not important here, since the CI scripts update Flutter
|
# The Flutter version is not important here, since the CI scripts update Flutter
|
||||||
# before running. What matters is that the base image is pinned to minimize
|
# before running. What matters is that the base image is pinned to minimize
|
||||||
# unintended changes when modifying this file.
|
# unintended changes when modifying this file.
|
||||||
FROM cirrusci/flutter@sha256:283f328d162adfc345bec5e070f79201edcb28f5483addf238c57d78bad0da23
|
# This is the hash for the 3.0.0 image.
|
||||||
|
FROM cirrusci/flutter@sha256:0224587bba33241cf908184283ec2b544f1b672d87043ead1c00521c368cf844
|
||||||
|
|
||||||
RUN sudo apt-get update && \
|
RUN apt-get update -y
|
||||||
sudo apt-get upgrade --yes && \
|
|
||||||
sudo apt-get install --yes gpg-agent && \
|
|
||||||
sudo apt-get clean --yes
|
|
||||||
|
|
||||||
# This must occur after the install of gpg-agent
|
# Set up Firebase Test Lab requirements.
|
||||||
RUN wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
RUN apt-get install -y --no-install-recommends gnupg
|
||||||
|
RUN echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | \
|
||||||
|
sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
|
||||||
|
RUN curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
|
||||||
|
sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
|
||||||
|
RUN apt-get update && apt-get install -y google-cloud-sdk && \
|
||||||
|
gcloud config set core/disable_usage_reporting true && \
|
||||||
|
gcloud config set component_manager/disable_update_check true
|
||||||
|
|
||||||
# Install formatter for C-based languages.
|
# Install formatter for C-based languages.
|
||||||
RUN apt-get install -y clang-format
|
RUN apt-get install -y clang-format
|
||||||
|
|
||||||
# Install Linux desktop build requirements.
|
# Install Linux desktop requirements:
|
||||||
RUN apt-get install -y clang cmake ninja-build file pkg-config libgtk-3-dev
|
# - build tools.
|
||||||
|
RUN apt-get install -y clang cmake ninja-build file pkg-config
|
||||||
|
# - libraries.
|
||||||
|
RUN apt-get install -y libgtk-3-dev libblkid-dev liblzma-dev libgcrypt20-dev
|
||||||
|
# - xvfb to allow running headless.
|
||||||
|
RUN apt-get install -y xvfb libegl1-mesa
|
||||||
|
|
||||||
# Needed for web_benchmarks
|
# Install Chrome and make it the default browser, for Linux url_launcher tests.
|
||||||
|
# IMPORTANT: Web tests should use a pinned version of Chromium, not this, since
|
||||||
|
# this isn't pinned, so any time the docker image is re-created the version of
|
||||||
|
# Chrome may change.
|
||||||
|
RUN wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
|
||||||
|
RUN echo 'deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main' | sudo tee /etc/apt/sources.list.d/google-chrome.list
|
||||||
|
RUN apt-get update && apt-get install -y --no-install-recommends google-chrome-stable
|
||||||
|
# Make Chrome the default for http:, https: and file:.
|
||||||
|
RUN apt-get install -y xdg-utils
|
||||||
|
RUN xdg-settings set default-web-browser google-chrome.desktop
|
||||||
|
RUN xdg-mime default google-chrome.desktop inode/directory
|
||||||
|
|
||||||
|
# Needed for web_benchmarks.
|
||||||
RUN sudo apt-get install -y libgbm-dev
|
RUN sudo apt-get install -y libgbm-dev
|
||||||
|
|
||||||
RUN yes | sdkmanager \
|
|
||||||
"platforms;android-27" \
|
|
||||||
"build-tools;27.0.3" \
|
|
||||||
"extras;google;m2repository" \
|
|
||||||
"extras;android;m2repository"
|
|
||||||
|
|
||||||
RUN yes | sdkmanager --licenses
|
|
||||||
|
Reference in New Issue
Block a user