Revert "[ci_yaml_roller] Add presubmit support"
This reverts commit 2b40dbb7223c033f79830901ab0080a30d4ef47e.
Reason for revert: Broke postsubmit
Original change's description:
> [ci_yaml_roller] Add presubmit support
>
> This allows the builder to run on presubmit to validate
> ci.yaml changes do not break flutter/infra before
> attempting the roll in CI
>
> Add support for release branch configs
>
> Bug: https://github.com/flutter/flutter/issues/87954
> Change-Id: Ifbce769813faecae8105a89d474d283e0ffe03a0
> Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/16740
> Reviewed-by: Christopher Fujino <fujino@google.com>
> Commit-Queue: Casey Hillers <chillers@google.com>
TBR=chillers@google.com,flutter-scoped@luci-project-accounts.iam.gserviceaccount.com,fujino@google.com
Change-Id: I0205507f3b2106fa63b7c9bbcc93b255133fc775
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: https://github.com/flutter/flutter/issues/87954
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/16781
Reviewed-by: Casey Hillers <chillers@google.com>
Commit-Queue: Casey Hillers <chillers@google.com>
diff --git a/recipes/infra/ci_yaml.expected/basic.json b/recipes/infra/ci_yaml.expected/basic.json
index 2c9450c..a85f2ce 100644
--- a/recipes/infra/ci_yaml.expected/basic.json
+++ b/recipes/infra/ci_yaml.expected/basic.json
@@ -440,7 +440,7 @@
"/path/to/tmp/json",
"copy",
"{\"hello\": \"world\"}",
- "[START_DIR]/infra/config/generated/ci_yaml/engine_config.json"
+ "[START_DIR]/infra/config/generated/ci_yamlengine_config.json"
],
"cwd": "[START_DIR]/cocoon/app_dart",
"env": {
@@ -461,8 +461,8 @@
"infra_step": true,
"name": "write jspb",
"~followup_annotations": [
- "@@@STEP_LOG_LINE@engine_config.json@{\"hello\": \"world\"}@@@",
- "@@@STEP_LOG_END@engine_config.json@@@"
+ "@@@STEP_LOG_LINE@ci_yamlengine_config.json@{\"hello\": \"world\"}@@@",
+ "@@@STEP_LOG_END@ci_yamlengine_config.json@@@"
]
},
{
diff --git a/recipes/infra/ci_yaml.expected/presubmit.json b/recipes/infra/ci_yaml.expected/presubmit.json
deleted file mode 100644
index 80508a7..0000000
--- a/recipes/infra/ci_yaml.expected/presubmit.json
+++ /dev/null
@@ -1,504 +0,0 @@
-[
- {
- "cmd": [],
- "name": "Checkout flutter/flutter"
- },
- {
- "cmd": [
- "python",
- "-u",
- "RECIPE_MODULE[depot_tools::git]/resources/git_setup.py",
- "--path",
- "[START_DIR]/flutter",
- "--url",
- "https://chromium.googlesource.com/external/github.com/flutter/flutter"
- ],
- "name": "Checkout flutter/flutter.git setup",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "fetch",
- "origin",
- "stable",
- "--recurse-submodules",
- "--progress",
- "--tags"
- ],
- "cwd": "[START_DIR]/flutter",
- "env": {
- "PATH": "RECIPE_REPO[depot_tools]:<PATH>"
- },
- "infra_step": true,
- "name": "Checkout flutter/flutter.git fetch",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "checkout",
- "-f",
- "FETCH_HEAD"
- ],
- "cwd": "[START_DIR]/flutter",
- "infra_step": true,
- "name": "Checkout flutter/flutter.git checkout",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "rev-parse",
- "HEAD"
- ],
- "cwd": "[START_DIR]/flutter",
- "infra_step": true,
- "name": "Checkout flutter/flutter.read revision",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@",
- "@@@SET_BUILD_PROPERTY@got_revision@\"deadbeef\"@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "clean",
- "-f",
- "-d",
- "-x"
- ],
- "cwd": "[START_DIR]/flutter",
- "infra_step": true,
- "name": "Checkout flutter/flutter.git clean",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "sync"
- ],
- "cwd": "[START_DIR]/flutter",
- "infra_step": true,
- "name": "Checkout flutter/flutter.submodule sync",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "update",
- "--init",
- "--recursive"
- ],
- "cwd": "[START_DIR]/flutter",
- "infra_step": true,
- "name": "Checkout flutter/flutter.submodule update",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [],
- "name": "Checkout flutter/cocoon"
- },
- {
- "cmd": [
- "python",
- "-u",
- "RECIPE_MODULE[depot_tools::git]/resources/git_setup.py",
- "--path",
- "[START_DIR]/cocoon",
- "--url",
- "https://chromium.googlesource.com/external/github.com/flutter/cocoon"
- ],
- "name": "Checkout flutter/cocoon.git setup",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "fetch",
- "origin",
- "master",
- "--recurse-submodules",
- "--progress",
- "--tags"
- ],
- "cwd": "[START_DIR]/cocoon",
- "env": {
- "PATH": "RECIPE_REPO[depot_tools]:<PATH>"
- },
- "infra_step": true,
- "name": "Checkout flutter/cocoon.git fetch",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "checkout",
- "-f",
- "FETCH_HEAD"
- ],
- "cwd": "[START_DIR]/cocoon",
- "infra_step": true,
- "name": "Checkout flutter/cocoon.git checkout",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "rev-parse",
- "HEAD"
- ],
- "cwd": "[START_DIR]/cocoon",
- "infra_step": true,
- "name": "Checkout flutter/cocoon.read revision",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@",
- "@@@SET_BUILD_PROPERTY@got_revision@\"deadbeef\"@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "clean",
- "-f",
- "-d",
- "-x"
- ],
- "cwd": "[START_DIR]/cocoon",
- "infra_step": true,
- "name": "Checkout flutter/cocoon.git clean",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "sync"
- ],
- "cwd": "[START_DIR]/cocoon",
- "infra_step": true,
- "name": "Checkout flutter/cocoon.submodule sync",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "update",
- "--init",
- "--recursive"
- ],
- "cwd": "[START_DIR]/cocoon",
- "infra_step": true,
- "name": "Checkout flutter/cocoon.submodule update",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [],
- "name": "Checkout flutter/infra"
- },
- {
- "cmd": [
- "python",
- "-u",
- "RECIPE_MODULE[depot_tools::git]/resources/git_setup.py",
- "--path",
- "[START_DIR]/infra",
- "--url",
- "https://flutter.googlesource.com/infra"
- ],
- "name": "Checkout flutter/infra.git setup",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "fetch",
- "origin",
- "main",
- "--recurse-submodules",
- "--progress",
- "--tags"
- ],
- "cwd": "[START_DIR]/infra",
- "env": {
- "PATH": "RECIPE_REPO[depot_tools]:<PATH>"
- },
- "infra_step": true,
- "name": "Checkout flutter/infra.git fetch",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "checkout",
- "-f",
- "FETCH_HEAD"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "Checkout flutter/infra.git checkout",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "rev-parse",
- "HEAD"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "Checkout flutter/infra.read revision",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@",
- "@@@SET_BUILD_PROPERTY@got_revision@\"deadbeef\"@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "clean",
- "-f",
- "-d",
- "-x"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "Checkout flutter/infra.git clean",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "sync"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "Checkout flutter/infra.submodule sync",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "update",
- "--init",
- "--recursive"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "Checkout flutter/infra.submodule update",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "cipd",
- "ensure",
- "-root",
- "[START_DIR]/protoc",
- "-ensure-file",
- "infra/3pp/tools/protoc/${platform} version:2@3.17.3",
- "-max-threads",
- "0",
- "-json-output",
- "/path/to/tmp/json"
- ],
- "name": "ensure_installed",
- "~followup_annotations": [
- "@@@STEP_LOG_LINE@json.output@{@@@",
- "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"\": [@@@",
- "@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-version:2@3.17.3\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"package\": \"infra/3pp/tools/protoc/resolved-platform\"@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@ ]@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@}@@@",
- "@@@STEP_LOG_END@json.output@@@"
- ]
- },
- {
- "cmd": [
- "flutter",
- "doctor"
- ],
- "cwd": "[START_DIR]/cocoon/app_dart",
- "env": {
- "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
- "LUCI_BRANCH": "",
- "LUCI_CI": "True",
- "LUCI_PR": "",
- "OS": "linux",
- "PUB_CACHE": "[START_DIR]/.pub-cache",
- "SDK_CHECKOUT_PATH": "[START_DIR]/flutter"
- },
- "env_prefixes": {
- "PATH": [
- "[START_DIR]/flutter/bin",
- "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
- ]
- },
- "name": "flutter doctor"
- },
- {
- "cmd": [
- "pub",
- "get"
- ],
- "cwd": "[START_DIR]/cocoon/app_dart",
- "env": {
- "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
- "LUCI_BRANCH": "",
- "LUCI_CI": "True",
- "LUCI_PR": "",
- "OS": "linux",
- "PUB_CACHE": "[START_DIR]/.pub-cache",
- "SDK_CHECKOUT_PATH": "[START_DIR]/flutter"
- },
- "env_prefixes": {
- "PATH": [
- "[START_DIR]/flutter/bin",
- "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
- ]
- },
- "name": "pub get"
- },
- {
- "cmd": [
- "dart",
- "[START_DIR]/cocoon/app_dart/bin/generate_jspb.dart",
- "engine",
- "def123"
- ],
- "cwd": "[START_DIR]/cocoon/app_dart",
- "env": {
- "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
- "LUCI_BRANCH": "",
- "LUCI_CI": "True",
- "LUCI_PR": "",
- "OS": "linux",
- "PUB_CACHE": "[START_DIR]/.pub-cache",
- "SDK_CHECKOUT_PATH": "[START_DIR]/flutter"
- },
- "env_prefixes": {
- "PATH": [
- "[START_DIR]/flutter/bin",
- "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
- ]
- },
- "name": "generate jspb"
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "copy",
- "",
- "[START_DIR]/infra/config/generated/ci_yaml/engine_config.json"
- ],
- "cwd": "[START_DIR]/cocoon/app_dart",
- "env": {
- "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
- "LUCI_BRANCH": "",
- "LUCI_CI": "True",
- "LUCI_PR": "",
- "OS": "linux",
- "PUB_CACHE": "[START_DIR]/.pub-cache",
- "SDK_CHECKOUT_PATH": "[START_DIR]/flutter"
- },
- "env_prefixes": {
- "PATH": [
- "[START_DIR]/flutter/bin",
- "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
- ]
- },
- "infra_step": true,
- "name": "write jspb",
- "~followup_annotations": [
- "@@@STEP_LOG_END@engine_config.json@@@"
- ]
- },
- {
- "cmd": [
- "cp",
- "[START_DIR]/cocoon/app_dart/lib/src/model/proto/internal/scheduler.proto",
- "[START_DIR]/infra/config/lib/ci_yaml"
- ],
- "env_prefixes": {
- "PATH": [
- "[START_DIR]/protoc/bin"
- ]
- },
- "name": "Roll scheduler.proto"
- },
- {
- "cmd": [
- "bash",
- "[START_DIR]/infra/config/lib/ci_yaml/compile_proto.sh"
- ],
- "env_prefixes": {
- "PATH": [
- "[START_DIR]/protoc/bin"
- ]
- },
- "name": "Compile scheduler.proto"
- },
- {
- "cmd": [
- "lucicfg",
- "generate",
- "config/main.star"
- ],
- "cwd": "[START_DIR]/infra",
- "name": "luci generate"
- },
- {
- "name": "$result"
- }
-]
\ No newline at end of file
diff --git a/recipes/infra/ci_yaml.expected/release.json b/recipes/infra/ci_yaml.expected/release.json
deleted file mode 100644
index 8af3a34..0000000
--- a/recipes/infra/ci_yaml.expected/release.json
+++ /dev/null
@@ -1,745 +0,0 @@
-[
- {
- "cmd": [],
- "name": "Checkout flutter/flutter"
- },
- {
- "cmd": [
- "python",
- "-u",
- "RECIPE_MODULE[depot_tools::git]/resources/git_setup.py",
- "--path",
- "[START_DIR]/flutter",
- "--url",
- "https://chromium.googlesource.com/external/github.com/flutter/flutter"
- ],
- "name": "Checkout flutter/flutter.git setup",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "fetch",
- "origin",
- "stable",
- "--recurse-submodules",
- "--progress",
- "--tags"
- ],
- "cwd": "[START_DIR]/flutter",
- "env": {
- "PATH": "RECIPE_REPO[depot_tools]:<PATH>"
- },
- "infra_step": true,
- "name": "Checkout flutter/flutter.git fetch",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "checkout",
- "-f",
- "FETCH_HEAD"
- ],
- "cwd": "[START_DIR]/flutter",
- "infra_step": true,
- "name": "Checkout flutter/flutter.git checkout",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "rev-parse",
- "HEAD"
- ],
- "cwd": "[START_DIR]/flutter",
- "infra_step": true,
- "name": "Checkout flutter/flutter.read revision",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@",
- "@@@SET_BUILD_PROPERTY@got_revision@\"deadbeef\"@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "clean",
- "-f",
- "-d",
- "-x"
- ],
- "cwd": "[START_DIR]/flutter",
- "infra_step": true,
- "name": "Checkout flutter/flutter.git clean",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "sync"
- ],
- "cwd": "[START_DIR]/flutter",
- "infra_step": true,
- "name": "Checkout flutter/flutter.submodule sync",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "update",
- "--init",
- "--recursive"
- ],
- "cwd": "[START_DIR]/flutter",
- "infra_step": true,
- "name": "Checkout flutter/flutter.submodule update",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [],
- "name": "Checkout flutter/cocoon"
- },
- {
- "cmd": [
- "python",
- "-u",
- "RECIPE_MODULE[depot_tools::git]/resources/git_setup.py",
- "--path",
- "[START_DIR]/cocoon",
- "--url",
- "https://chromium.googlesource.com/external/github.com/flutter/cocoon"
- ],
- "name": "Checkout flutter/cocoon.git setup",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "fetch",
- "origin",
- "master",
- "--recurse-submodules",
- "--progress",
- "--tags"
- ],
- "cwd": "[START_DIR]/cocoon",
- "env": {
- "PATH": "RECIPE_REPO[depot_tools]:<PATH>"
- },
- "infra_step": true,
- "name": "Checkout flutter/cocoon.git fetch",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "checkout",
- "-f",
- "FETCH_HEAD"
- ],
- "cwd": "[START_DIR]/cocoon",
- "infra_step": true,
- "name": "Checkout flutter/cocoon.git checkout",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "rev-parse",
- "HEAD"
- ],
- "cwd": "[START_DIR]/cocoon",
- "infra_step": true,
- "name": "Checkout flutter/cocoon.read revision",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@",
- "@@@SET_BUILD_PROPERTY@got_revision@\"deadbeef\"@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "clean",
- "-f",
- "-d",
- "-x"
- ],
- "cwd": "[START_DIR]/cocoon",
- "infra_step": true,
- "name": "Checkout flutter/cocoon.git clean",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "sync"
- ],
- "cwd": "[START_DIR]/cocoon",
- "infra_step": true,
- "name": "Checkout flutter/cocoon.submodule sync",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "update",
- "--init",
- "--recursive"
- ],
- "cwd": "[START_DIR]/cocoon",
- "infra_step": true,
- "name": "Checkout flutter/cocoon.submodule update",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [],
- "name": "Checkout flutter/infra"
- },
- {
- "cmd": [
- "python",
- "-u",
- "RECIPE_MODULE[depot_tools::git]/resources/git_setup.py",
- "--path",
- "[START_DIR]/infra",
- "--url",
- "https://flutter.googlesource.com/infra"
- ],
- "name": "Checkout flutter/infra.git setup",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "fetch",
- "origin",
- "main",
- "--recurse-submodules",
- "--progress",
- "--tags"
- ],
- "cwd": "[START_DIR]/infra",
- "env": {
- "PATH": "RECIPE_REPO[depot_tools]:<PATH>"
- },
- "infra_step": true,
- "name": "Checkout flutter/infra.git fetch",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "checkout",
- "-f",
- "FETCH_HEAD"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "Checkout flutter/infra.git checkout",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "rev-parse",
- "HEAD"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "Checkout flutter/infra.read revision",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_TEXT@<br/>checked out 'deadbeef'<br/>@@@",
- "@@@SET_BUILD_PROPERTY@got_revision@\"deadbeef\"@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "clean",
- "-f",
- "-d",
- "-x"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "Checkout flutter/infra.git clean",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "sync"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "Checkout flutter/infra.submodule sync",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "submodule",
- "update",
- "--init",
- "--recursive"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "Checkout flutter/infra.submodule update",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "cipd",
- "ensure",
- "-root",
- "[START_DIR]/protoc",
- "-ensure-file",
- "infra/3pp/tools/protoc/${platform} version:2@3.17.3",
- "-max-threads",
- "0",
- "-json-output",
- "/path/to/tmp/json"
- ],
- "name": "ensure_installed",
- "~followup_annotations": [
- "@@@STEP_LOG_LINE@json.output@{@@@",
- "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"\": [@@@",
- "@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-version:2@3.17.3\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"package\": \"infra/3pp/tools/protoc/resolved-platform\"@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@ ]@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@}@@@",
- "@@@STEP_LOG_END@json.output@@@"
- ]
- },
- {
- "cmd": [
- "flutter",
- "doctor"
- ],
- "cwd": "[START_DIR]/cocoon/app_dart",
- "env": {
- "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
- "LUCI_BRANCH": "",
- "LUCI_CI": "True",
- "LUCI_PR": "",
- "OS": "linux",
- "PUB_CACHE": "[START_DIR]/.pub-cache",
- "SDK_CHECKOUT_PATH": "[START_DIR]/flutter"
- },
- "env_prefixes": {
- "PATH": [
- "[START_DIR]/flutter/bin",
- "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
- ]
- },
- "name": "flutter doctor"
- },
- {
- "cmd": [
- "pub",
- "get"
- ],
- "cwd": "[START_DIR]/cocoon/app_dart",
- "env": {
- "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
- "LUCI_BRANCH": "",
- "LUCI_CI": "True",
- "LUCI_PR": "",
- "OS": "linux",
- "PUB_CACHE": "[START_DIR]/.pub-cache",
- "SDK_CHECKOUT_PATH": "[START_DIR]/flutter"
- },
- "env_prefixes": {
- "PATH": [
- "[START_DIR]/flutter/bin",
- "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
- ]
- },
- "name": "pub get"
- },
- {
- "cmd": [
- "dart",
- "[START_DIR]/cocoon/app_dart/bin/generate_jspb.dart",
- "engine",
- "abc123"
- ],
- "cwd": "[START_DIR]/cocoon/app_dart",
- "env": {
- "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
- "LUCI_BRANCH": "",
- "LUCI_CI": "True",
- "LUCI_PR": "",
- "OS": "linux",
- "PUB_CACHE": "[START_DIR]/.pub-cache",
- "SDK_CHECKOUT_PATH": "[START_DIR]/flutter"
- },
- "env_prefixes": {
- "PATH": [
- "[START_DIR]/flutter/bin",
- "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
- ]
- },
- "name": "generate jspb"
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "copy",
- "{\"hello\": \"world\"}",
- "[START_DIR]/infra/config/generated/ci_yaml/engine_dev_config.json"
- ],
- "cwd": "[START_DIR]/cocoon/app_dart",
- "env": {
- "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
- "LUCI_BRANCH": "",
- "LUCI_CI": "True",
- "LUCI_PR": "",
- "OS": "linux",
- "PUB_CACHE": "[START_DIR]/.pub-cache",
- "SDK_CHECKOUT_PATH": "[START_DIR]/flutter"
- },
- "env_prefixes": {
- "PATH": [
- "[START_DIR]/flutter/bin",
- "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
- ]
- },
- "infra_step": true,
- "name": "write jspb",
- "~followup_annotations": [
- "@@@STEP_LOG_LINE@engine_dev_config.json@{\"hello\": \"world\"}@@@",
- "@@@STEP_LOG_END@engine_dev_config.json@@@"
- ]
- },
- {
- "cmd": [
- "cp",
- "[START_DIR]/cocoon/app_dart/lib/src/model/proto/internal/scheduler.proto",
- "[START_DIR]/infra/config/lib/ci_yaml"
- ],
- "env_prefixes": {
- "PATH": [
- "[START_DIR]/protoc/bin"
- ]
- },
- "name": "Roll scheduler.proto"
- },
- {
- "cmd": [
- "bash",
- "[START_DIR]/infra/config/lib/ci_yaml/compile_proto.sh"
- ],
- "env_prefixes": {
- "PATH": [
- "[START_DIR]/protoc/bin"
- ]
- },
- "name": "Compile scheduler.proto"
- },
- {
- "cmd": [
- "lucicfg",
- "generate",
- "config/main.star"
- ],
- "cwd": "[START_DIR]/infra",
- "name": "luci generate"
- },
- {
- "cmd": [
- "git",
- "ls-files",
- "--modified",
- "--deleted",
- "--exclude-standard"
- ],
- "cwd": "[START_DIR]/infra",
- "name": "check for no-op commit",
- "~followup_annotations": [
- "@@@STEP_LOG_LINE@stdout@hello@@@",
- "@@@STEP_LOG_END@stdout@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "add",
- "--update"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "git add"
- },
- {
- "cmd": [
- "git",
- "rev-parse",
- "HEAD"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "git rev-parse"
- },
- {
- "cmd": [],
- "name": "calculate Change-Id",
- "~followup_annotations": [
- "@@@STEP_TEXT@I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "diff",
- "--unified=0",
- "--cached"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "calculate Change-Id.git diff",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@diff --git a/foo.txt b/foo.txt@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@--- a/foo.txt@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@+++ b/foo.txt@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@@@ -16 +16 @@@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@- foo = 5@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@+ foo = 6@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@diff --git a/bar.txt b/bar.txt@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@--- a/bar.txt@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@+++ b/bar.txt@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@@@ -5 +5 @@@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@- bar = 0@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@+ bar = 1@@@",
- "@@@STEP_LOG_LINE@diff (without hashes)@@@@",
- "@@@STEP_LOG_END@diff (without hashes)@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "hash-object",
- "diff --git a/foo.txt b/foo.txt\n--- a/foo.txt\n+++ b/foo.txt\n@@ -16 +16 @@\n- foo = 5\n+ foo = 6\ndiff --git a/bar.txt b/bar.txt\n--- a/bar.txt\n+++ b/bar.txt\n@@ -5 +5 @@\n- bar = 0\n+ bar = 1\n####builder########"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "calculate Change-Id.git hash-object",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [],
- "name": "install infra/tools/luci/gerrit"
- },
- {
- "cmd": [
- "vpython",
- "-u",
- "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
- "--json-output",
- "/path/to/tmp/json",
- "ensure-directory",
- "--mode",
- "0777",
- "[CACHE]/cipd/infra/tools/luci/gerrit/pinned-gerrit-version"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "install infra/tools/luci/gerrit.ensure package directory",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@"
- ]
- },
- {
- "cmd": [
- "cipd",
- "ensure",
- "-root",
- "[CACHE]/cipd/infra/tools/luci/gerrit/pinned-gerrit-version",
- "-ensure-file",
- "infra/tools/luci/gerrit/${platform} pinned-gerrit-version",
- "-max-threads",
- "0",
- "-json-output",
- "/path/to/tmp/json"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "install infra/tools/luci/gerrit.ensure_installed",
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@json.output@{@@@",
- "@@@STEP_LOG_LINE@json.output@ \"result\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"\": [@@@",
- "@@@STEP_LOG_LINE@json.output@ {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-pinned-gerrit-ve\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"package\": \"infra/tools/luci/gerrit/resolved-platform\"@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@ ]@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@}@@@",
- "@@@STEP_LOG_END@json.output@@@"
- ]
- },
- {
- "cmd": [
- "[CACHE]/cipd/infra/tools/luci/gerrit/pinned-gerrit-version/gerrit",
- "change-query",
- "-host",
- "https://flutter-review.googlesource.com",
- "-input",
- "{\"params\": {\"o\": [\"CURRENT_COMMIT\", \"CURRENT_REVISION\", \"MESSAGES\"], \"q\": \"change:infra~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c\"}}",
- "-output",
- "/path/to/tmp/json"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "check for identical roll",
- "timeout": 600,
- "~followup_annotations": [
- "@@@STEP_LOG_LINE@json.output@null@@@",
- "@@@STEP_LOG_END@json.output@@@",
- "@@@STEP_LOG_LINE@json.input@{@@@",
- "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"o\": [@@@",
- "@@@STEP_LOG_LINE@json.input@ \"CURRENT_COMMIT\", @@@",
- "@@@STEP_LOG_LINE@json.input@ \"CURRENT_REVISION\", @@@",
- "@@@STEP_LOG_LINE@json.input@ \"MESSAGES\"@@@",
- "@@@STEP_LOG_LINE@json.input@ ], @@@",
- "@@@STEP_LOG_LINE@json.input@ \"q\": \"change:infra~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c\"@@@",
- "@@@STEP_LOG_LINE@json.input@ }@@@",
- "@@@STEP_LOG_LINE@json.input@}@@@",
- "@@@STEP_LOG_END@json.input@@@"
- ]
- },
- {
- "cmd": [
- "git",
- "commit",
- "-m",
- "Roll engine to abc123\n\nRoller-URL: https://ci.chromium.org/b/8945511751514863184\nCq-Cl-Tag: roller-builder:builder\nCq-Cl-Tag: roller-bid:8945511751514863184\nCQ-Do-Not-Cancel-Tryjobs: true\nChange-Id: I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c",
- "-a"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "git commit"
- },
- {
- "cmd": [
- "git",
- "push",
- "--push-option",
- "nokeycheck",
- "origin",
- "HEAD:refs/for/main%l=Commit-Queue+2,l=Code-Review+2"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "git push",
- "timeout": 180,
- "~followup_annotations": [
- "@@@STEP_LINK@gerrit link@https://flutter-review.googlesource.com/q/infra~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c@@@"
- ]
- },
- {
- "cmd": [],
- "name": "check for completion"
- },
- {
- "cmd": [
- "[CACHE]/cipd/infra/tools/luci/gerrit/pinned-gerrit-version/gerrit",
- "change-detail",
- "-host",
- "https://flutter-review.googlesource.com",
- "-input",
- "{\"change_id\": \"infra~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c\", \"params\": {\"o\": [\"CURRENT_REVISION\"]}}",
- "-output",
- "/path/to/tmp/json"
- ],
- "cwd": "[START_DIR]/infra",
- "infra_step": true,
- "name": "check for completion.check if done (0)",
- "timeout": 30,
- "~followup_annotations": [
- "@@@STEP_NEST_LEVEL@1@@@",
- "@@@STEP_LOG_LINE@json.output@{@@@",
- "@@@STEP_LOG_LINE@json.output@ \"current_revision\": \"abc123\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"labels\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"Commit-Queue\": {@@@",
- "@@@STEP_LOG_LINE@json.output@ \"approved\": {}@@@",
- "@@@STEP_LOG_LINE@json.output@ }@@@",
- "@@@STEP_LOG_LINE@json.output@ }, @@@",
- "@@@STEP_LOG_LINE@json.output@ \"status\": \"MERGED\"@@@",
- "@@@STEP_LOG_LINE@json.output@}@@@",
- "@@@STEP_LOG_END@json.output@@@",
- "@@@STEP_LOG_LINE@json.input@{@@@",
- "@@@STEP_LOG_LINE@json.input@ \"change_id\": \"infra~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c\", @@@",
- "@@@STEP_LOG_LINE@json.input@ \"params\": {@@@",
- "@@@STEP_LOG_LINE@json.input@ \"o\": [@@@",
- "@@@STEP_LOG_LINE@json.input@ \"CURRENT_REVISION\"@@@",
- "@@@STEP_LOG_LINE@json.input@ ]@@@",
- "@@@STEP_LOG_LINE@json.input@ }@@@",
- "@@@STEP_LOG_LINE@json.input@}@@@",
- "@@@STEP_LOG_END@json.input@@@",
- "@@@STEP_LINK@gerrit link@https://flutter-review.googlesource.com/q/infra~main~I28135185e8ac8c69d0b894c4be54ddbb0ea69d5c@@@"
- ]
- },
- {
- "name": "$result"
- }
-]
\ No newline at end of file
diff --git a/recipes/infra/ci_yaml.py b/recipes/infra/ci_yaml.py
index 3493d44..3472e6c 100644
--- a/recipes/infra/ci_yaml.py
+++ b/recipes/infra/ci_yaml.py
@@ -22,10 +22,6 @@
'repo_util',
]
-def _is_postsubmit(api):
- """Returns True if the current build is in prod, otherwise False."""
- return api.buildbucket.build.builder.bucket == 'luci.flutter.prod'
-
def RunSteps(api):
"""Steps to checkout infra, dependencies, and generate new config."""
@@ -61,17 +57,10 @@
)
)
- git_branch = api.properties.get('git_branch')
- repo = api.properties.get('git_repo')
- if _is_postsubmit(api):
- # gitiles commit info
- commit_sha = api.buildbucket.gitiles_commit.id
- else:
- # github pull request info
- commit_sha = None
- for tag in api.buildbucket.build.tags:
- if 'sha/git/' in tag.value:
- commit_sha = tag.value.replace('sha/git/', '')
+ # gitiles commit info
+ commit_sha = api.buildbucket.gitiles_commit.id
+ gitiles_repo = api.buildbucket.gitiles_commit.project
+ repo = gitiles_repo.split("/")[-1]
# The context adds dart-sdk tools to PATH and sets PUB_CACHE.
env, env_prefixes = api.repo_util.flutter_environment(flutter_path)
@@ -79,15 +68,12 @@
api.step('flutter doctor', cmd=['flutter', 'doctor'])
api.step('pub get', cmd=['pub', 'get'])
generate_jspb_path = cocoon_path.join('app_dart', 'bin', 'generate_jspb.dart')
- config_name = '%s_config.json' % repo
- if git_branch and git_branch != 'master':
- config_name = '%s_%s_config.json' % (repo, git_branch)
- infra_config_path = infra_path.join('config', 'generated', 'ci_yaml', config_name)
+ infra_config_path = infra_path.join('config', 'generated', 'ci_yaml' '%s_config.json' % repo)
# Generate_jspb
jspb_step = api.step('generate jspb', cmd=['dart', generate_jspb_path, repo, commit_sha], stdout=api.raw_io.output_text(), stderr=api.raw_io.output_text())
api.file.write_raw('write jspb', infra_config_path, jspb_step.stdout)
- # Roll scheduler.proto
+# Roll scheduler.proto
with api.context(env_prefixes={'PATH': [protoc_path.join('bin')]}):
scheduler_proto_src = cocoon_path.join('app_dart', 'lib', 'src', 'model', 'proto', 'internal', 'scheduler.proto')
scheduler_proto_dst = infra_path.join('config', 'lib', 'ci_yaml')
@@ -97,65 +83,27 @@
with api.context(cwd=infra_path):
# Generate luci configs
api.step('luci generate', cmd=['lucicfg', 'generate', 'config/main.star'])
- # Only send rolls on postsubmit
- if _is_postsubmit(api):
- api.auto_roller.attempt_roll(
- gerrit_host = 'flutter-review.googlesource.com',
- gerrit_project = 'infra',
- repo_dir = infra_path,
- commit_message = 'Roll %s to %s' % (repo, commit_sha),
- # TODO(chillers): Change to oncall group. https://github.com/flutter/flutter/issues/86945
- cc_on_failure = 'chillers@google.com',
- )
+ change = api.auto_roller.attempt_roll(
+ gerrit_host = 'flutter-review.googlesource.com',
+ gerrit_project = 'infra',
+ repo_dir = infra_path,
+ commit_message = 'Roll %s to %s' % (repo, commit_sha),
+ # TODO(chillers): Change to oncall group. https://github.com/flutter/flutter/issues/86945
+ cc_on_failure = 'chillers@google.com',
+ )
+ return api.auto_roller.raw_result(change)
def GenTests(api):
yield api.test(
'basic',
api.buildbucket.ci_build(
- bucket='luci.flutter.prod',
git_repo='https://chromium.googlesource.com/external/github.com/flutter/engine',
revision = 'abc123'
),
- api.properties(
- git_branch='master',
- git_repo='engine'
- ),
api.repo_util.flutter_environment_data(
api.path['start_dir'].join('flutter')
),
api.step_data('generate jspb', stdout=api.raw_io.output_text('{"hello": "world"}')),
api.auto_roller.success()
)
- yield api.test(
- 'release',
- api.buildbucket.ci_build(
- bucket='luci.flutter.prod',
- git_repo='https://chromium.googlesource.com/external/github.com/flutter/engine',
- revision = 'abc123'
- ),
- api.properties(
- git_branch='dev',
- git_repo='engine'
- ),
- api.repo_util.flutter_environment_data(
- api.path['start_dir'].join('flutter')
- ),
- api.step_data('generate jspb', stdout=api.raw_io.output_text('{"hello": "world"}')),
- api.auto_roller.success()
- )
- yield api.test(
- 'presubmit',
- api.buildbucket.try_build(
- bucket='luci.flutter.try',
- tags=api.buildbucket.tags(
- buildset=['sha/git/def123', 'sha/pr/1']
- )
- ),
- api.properties(
- git_repo='engine'
- ),
- api.repo_util.flutter_environment_data(
- api.path['start_dir'].join('flutter')
- ),
- )
diff --git a/recipes/infra/test_ownership.py b/recipes/infra/test_ownership.py
index 9199067..930ec62 100644
--- a/recipes/infra/test_ownership.py
+++ b/recipes/infra/test_ownership.py
@@ -31,7 +31,11 @@
cocoon_path = start_path.join('cocoon')
flutter_path = start_path.join('flutter')
- repo = api.properties.get("git_repo")
+ gitiles_repo = api.properties.get(
+ 'git_url'
+ ) or api.buildbucket.gitiles_commit.project
+ repo = gitiles_repo.split("/")[-1]
+
with api.step.nest('checkout source code'):
# Checkout flutter/flutter at head.
commit_sha = api.repo_util.checkout(
@@ -71,8 +75,6 @@
api.path['start_dir'].join('flutter')
),
api.properties(
- git_ref='refs/pull/123/head',
- git_url='https://abc.com/flutter',
- git_repo='flutter',
+ git_ref='refs/pull/123/head', git_url='https://abc.com/flutter'
)
)