flutter/dev/ci/docker_linux
Greg Spencer 9cea691752
Switch to Debian bullseye, update nodejs to npm package, add flutter desktop run dependencies (#89309)
This change updates the Dockerfile for Cirrus builds:

- Switch to a newer stable Debian build (bullseye instead of stretch)
- Eliminates the very old (10) nodejs install in favor of the npm package
- Installs OpenJDK so that Android SDK manager can run on bullseye
- Installs the prerequisites for Linux desktop flutter run.

The motivation for this change was to include the dependencies for Linux desktop flutter run so that I can run tests that use desktop Flutter apps, but that needs cmake 3.10 or later, and stretch doesn't have a cmake that new. Of course, there's also no openjdk-8-jre for bullseye, so I used OpenJDK from JFrog instead.
2021-09-08 09:52:39 -07:00
..
docker_attach.sh add new docker_attach.sh script and update README (#61363) 2020-07-20 07:21:04 -07:00
docker_build.sh Reland "install goldctl in docker build" (#50124) 2020-02-05 13:18:46 -08:00
docker_login.sh License update (#45373) 2019-11-27 15:04:02 -08:00
docker_push.sh Fix docker tag during upload as well (#46252) 2019-12-09 12:56:47 -08:00
Dockerfile Switch to Debian bullseye, update nodejs to npm package, add flutter desktop run dependencies (#89309) 2021-09-08 09:52:39 -07:00
Gemfile Remove deployment to play store for linux case in deploy_gallery test (#67349) 2020-10-05 19:12:02 -07:00
Gemfile.lock Remove deployment to play store for linux case in deploy_gallery test (#67349) 2020-10-05 19:12:02 -07:00
README.md ✒ Spell Check All .md Files Related to Flutter 💙 (#61564) 2020-07-22 18:23:47 -07:00

This directory includes scripts to build the docker container image used for building flutter/flutter in our CI system (currently Cirrus).

To run the scripts, you have to set up docker and gcloud. Please refer to the internal flutter team doc for how to set up in a Google internal environment.

To debug the image locally:

  • (Optional) edit the Dockerfile to change how the container image is built.
  • Run ./docker_build.sh to build the container image (sudo permission is required)
  • Run ./docker_attach.sh to start a container from the image and attach to its internal bash shell. From here, you can invoke shell commands from the .cirrus.yml (you will have to manually run any setup steps; e.g. the container will not have the Flutter repo cloned yet).