Cirrus puts the PR description and commit message in environment
variables.
These messages tend to have non ASCII characters sometimes (like
emojis), which triggers a Gradle bug (gradle/gradle#3117) resulting
in Gradle crashing without a helpful error message.
The real solution to this problem should be fixing the Gradle bug.
The better workaround on the Flutter side would be to set a UTF8 locale
on the Cirrus machine, but I have yet figured out how to do it.
For now to avoid more people from hitting this I'm working around by
temporarily unsetting the Cirrus environment variables with the PR
description and commit message.
A non ASCII character to make sure it works: 😄
* Fall back to ANDROID_SDK_ROOT if ANDROID_HOME is not set
And update descriptions to use the non-deprecated ANDROID_SDK_ROOT.
Fixes#15114.
* Remove trailing whitespace
* Update dev/devicelab/lib/framework/adb.dart
Co-Authored-By: DanTup <danny@tuppeny.com>
* Reformat long line
While investigating reports from @gspencergoog about unexpectedly failing tasks I've found out that `tool_tests` sometimes fails with Out Of Memory errors. I've also added detection of such issues to Cirrus CI.
* Add build test for Flutter codelabs
* Fix indentation in build test script
* Correct filename for the codelabs build test run by travis
* Change if statement to elif
* Replace echo statements with set -x
* Add BSD-style license
* Add codelabs build test to Cirrus
* Remove codelabs_build_test from Travis.
* Remove codelabs_build_test from travis_script.sh
* Update documentation for codelabs_build_test.sh
* Update readme for build test
* Add link to open a new issue to MDC-Flutter
* Add phrase to address "if you think you really need to break this test, please escalate this"
* Split analysis steps out of dev/bots/test.dart into dev/bots/analyze.dart.
This allows to run analysis step with command line arguments that are only applicable to flutter analyze(like --dart-sdk, needed for dart-flutter-engine head-head-head bot).
* Add forgotten dev/bots/analyze.dart
* Refactor common code from analyze.dart and test.dart into run_command.dart
* Remove comments, add header
This switches docs and gallery build and deployment to use Cirrus CI instead of Travis, reapplying the changes from #19925, but updating the Firebase tokens for upload, and refining docs.sh some to limit retries to five times (instead of indefinitely).
This adds a Docker image for the linux builds, replacing a lot of the setup code with a Docker build.
Added a docker image build step that has the right gcloud credentials in it.
Also, this finally moves the gallery deployment and docs publishing steps to Cirrus. They were dependent upon some environment setup that was a lot easier to do in Docker than in a setup bash script.
This adds:
- pub's cache to the Cirrus cache. It caches based on the checksums in the pubspec (although pub has things in versioned folders, this'll prevent the cache just getting bigger over time).
- bin/cache/pkg. I think this only includes sky_engine. It caches based on the engine checksum.
- bin/cache/artifacts. This includes engine, gradle_wrapper, material_fonts. Also caches based on the engine checksum.
Our Cirrus Windows tests were not really working: they reported success even when failing.
This should fix several problems with the Cirrus Windows tests.
The trailing whitespace detector wasn't handling file deletes very well (at all, really).
This filters the set of files grepped to only include files that exist.
Also, clarified the failure message to make it more obvious what the failure is when the grep finds results.
* Configure Cirrus CI
* Read file directly instead of shelling a command
* Wait for all streams to finish
* Add LTR `textDirection`
Since `RenderFlex#_debugHasNecessaryDirections` requires it when `direction` is horizontal and there are multiple children.