#!/bin/bash set -e function error() { echo "$@" 1>&2 } # This script is only meant to be run by the Cirrus CI system, not locally. # It must be run from the root of the Flutter repo. function accept_android_licenses() { yes "y" | flutter doctor --android-licenses > /dev/null 2>&1 } echo "Flutter SDK directory is: $PWD" # Run flutter to download dependencies and precompile things, and to disable # analytics on the bots. echo "Downloading build dependencies and pre-compiling Flutter snapshot" ./bin/flutter config --no-analytics # Run doctor, to print it to the log for debugging purposes. ./bin/flutter doctor -v # Accept licenses. echo "Accepting Android licenses." accept_android_licenses || (error "Accepting Android licenses failed." && false) # Run pub get in all the repo packages. echo "Updating packages for Flutter." ./bin/flutter update-packages