diff --git a/.ci.yaml b/.ci.yaml index 9c6bf0ab77c..0a98d5c0b9f 100644 --- a/.ci.yaml +++ b/.ci.yaml @@ -14,6 +14,10 @@ platform_properties: os: Ubuntu cores: "8" device_type: none + dependencies: >- + [ + {"dependency": "curl", "version": "version:7.64.0"} + ] linux_android: properties: os: Ubuntu @@ -92,6 +96,21 @@ targets: channel: master version_file: flutter_master.version + - name: Linux repo_checks + bringup: true # New target + recipe: packages/packages + timeout: 30 + properties: + add_recipes_cq: "true" + target_file: repo_checks.yaml + channel: master + version_file: flutter_master.version + # The format check requires clang-format. + dependencies: >- + [ + {"dependency": "clang", "version": "git_revision:5d5aba78dbbee75508f01bcaa69aedb2ab79065a"} + ] + - name: Linux dart_unit_test_shard_1 master recipe: packages/packages timeout: 60 diff --git a/.ci/targets/repo_checks.yaml b/.ci/targets/repo_checks.yaml new file mode 100644 index 00000000000..fbce7ef6732 --- /dev/null +++ b/.ci/targets/repo_checks.yaml @@ -0,0 +1,47 @@ +tasks: + - name: prepare tool + script: .ci/scripts/prepare_tool.sh + - name: format + script: script/tool_runner.sh + args: ["format", "--fail-on-change"] + always: true + - name: license validation + script: script/tool_runner.sh + args: ["license-check"] + always: true + # The major and minor version here should match the lowest version analyzed + # in legacy version analysis (currently .cirrus.yaml legacy_version_analyze). + - name: pubspec validation + script: script/tool_runner.sh + args: + - "pubspec-check" + - "--min-min-flutter-version=3.3.0" + - "--allow-dependencies=script/configs/allowed_unpinned_deps.yaml" + - "--allow-pinned-dependencies=script/configs/allowed_pinned_deps.yaml" + always: true + - name: README validation + script: script/tool_runner.sh + args: ["readme-check"] + always: true + # Re-run with --require-excerpts, skipping packages that still need + # to be converted. Once https://github.com/flutter/flutter/issues/102679 + # has been fixed, this can be removed --require-excerpts added to the + # run above. + - name: README snippet validation + script: script/tool_runner.sh + args: ["readme-check", "--require-excerpts", "--exclude=script/configs/temp_exclude_excerpt.yaml"] + always: true + - name: Gradle validation + script: script/tool_runner.sh + args: ["gradle-check"] + always: true + - name: Dependabot coverage validation + script: script/tool_runner.sh + args: ["dependabot-check"] + always: true + - name: publishability + script: script/tool_runner.sh + args: ["publish-check", "--allow-pre-release"] + always: true + # TODO(stuartmorgan): Convert remaining checks from Cirrus repo_checks. See + # https://github.com/flutter/flutter/issues/114373