flutter/dev/ci/docker_linux
Greg Spencer ab2b0851a2
Add smoke tests for all the examples, fix 17 broken examples. (#89021)
This adds a smoke test for every single API example. It also fixes 17 tests that had bugs in them, or were otherwise broken, and even fixes one actual bug in the framework, and one limitation in the framework.

The bug in the framework is that NetworkImage's _loadAsync method had await response.drain<List<int>>();, but if the response is null, it will throw a cryptic exception saying that Null can't be assigned to List<int>. The fix was just to use await response.drain<void>(); instead.

The limitation is that RelativePositionedTransition takes an Animation<Rect> rect parameter, and if you want to use a RectTween with it, the value emitted there is Rect?, and one of the examples was just casting from Animation<Rect> to Animation<Rect?>, which is invalid, so I modified RelativePositionedTransition to take a Rect? and just use Rect.zero if the rect is null.
2021-09-28 09:32:06 -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 Add smoke tests for all the examples, fix 17 broken examples. (#89021) 2021-09-28 09:32:06 -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).