[autoroll] Refactor commit message
Change-Id: I1ad9af90e840ed3b6e547a31d769a052b39876c1
Reviewed-on: https://skia-review.googlesource.com/c/buildbot/+/285220
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
diff --git a/autoroll/config/afdo-chromium.json b/autoroll/config/afdo-chromium.json
index 1199451..c0b76d0 100644
--- a/autoroll/config/afdo-chromium.json
+++ b/autoroll/config/afdo-chromium.json
@@ -1,7 +1,21 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "AFDO",
+ "childDisplayName": "AFDO",
+ "commitMsg": {
+ "template": "{{- define \"boilerplate\" -}}\n\
+This CL may cause a small binary size increase, roughly proportional\n\
+to how long it's been since our last AFDO profile roll. For larger\n\
+increases (around or exceeding 100KB), please file a bug against\n\
+gbiv@chromium.org. Additional context: https://crbug.com/805539\n\
+\n\
+Please note that, despite rolling to chrome/android, this profile is\n\
+used for both Linux and Android.\n\
+\n\
+{{ template \"defaultBoilerplate\" . }}\n\
+{{- end -}}",
+ "includeTbrLine": true
+ },
"contacts": [
"gbiv@chromium.org"
],
@@ -13,7 +27,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "afdo-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -23,31 +37,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chrome/android/profiles/newest.txt",
- "commitMsgTmpl": "Roll AFDO from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-This CL may cause a small binary size increase, roughly proportional\n\
-to how long it's been since our last AFDO profile roll. For larger\n\
-increases (around or exceeding 100KB), please file a bug against\n\
-gbiv@chromium.org. Additional context: https://crbug.com/805539\n\
-\n\
-Please note that, despite rolling to chrome/android, this profile is\n\
-used for both Linux and Android.\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}\n\
-{{end}}Tbr: {{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/llvm",
"parentBranch": "master",
diff --git a/autoroll/config/angle-chromium.json b/autoroll/config/angle-chromium.json
index ebd4e49..6946230 100644
--- a/autoroll/config/angle-chromium.json
+++ b/autoroll/config/angle-chromium.json
@@ -1,7 +1,24 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ANGLE",
+ "childDisplayName": "ANGLE",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://chromium.googlesource.com/angle/angle.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chromium.try:android_optional_gpu_tests_rel",
+ "luci.chromium.try:linux_optional_gpu_tests_rel",
+ "luci.chromium.try:mac_optional_gpu_tests_rel",
+ "luci.chromium.try:win-asan",
+ "luci.chromium.try:win_optional_gpu_tests_rel",
+ "luci.chromium.try:linux-swangle-try-x64",
+ "luci.chromium.try:win-swangle-try-x86",
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"jmadill@google.com"
],
@@ -13,7 +30,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "angle-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -28,21 +45,9 @@
"childPath": "src/third_party/angle",
"childRepo": "https://chromium.googlesource.com/angle/angle.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/angle/angle.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chromium.try:android_optional_gpu_tests_rel",
- "luci.chromium.try:linux_optional_gpu_tests_rel",
- "luci.chromium.try:mac_optional_gpu_tests_rel",
- "luci.chromium.try:win-asan",
- "luci.chromium.try:win_optional_gpu_tests_rel",
- "luci.chromium.try:linux-swangle-try-x64",
- "luci.chromium.try:win-swangle-try-x86",
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/angle-skia.json b/autoroll/config/angle-skia.json
index 9b3f494..9e92878 100644
--- a/autoroll/config/angle-skia.json
+++ b/autoroll/config/angle-skia.json
@@ -1,7 +1,24 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ANGLE",
+ "childDisplayName": "ANGLE",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://chromium.googlesource.com/angle/angle.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE",
+ "skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE",
+ "skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE",
+ "skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE",
+ "skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE",
+ "skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE",
+ "skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"jmadill@google.com"
],
@@ -13,7 +30,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Skia",
+ "parentDisplayName": "Skia",
"parentWaterfall": "https://status.skia.org",
"rollerName": "angle-skia-autoroll",
"serviceAccount": "skia-autoroll@skia-public.iam.gserviceaccount.com",
@@ -26,20 +43,9 @@
"childPath": "third_party/externals/angle2",
"childRepo": "https://chromium.googlesource.com/angle/angle.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/angle/angle.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://skia.googlesource.com/skia.git"
},
- "cqExtraTrybots": [
- "skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE",
- "skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE",
- "skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE",
- "skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE",
- "skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE",
- "skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE",
- "skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/binaryen-emscripten-releases.json b/autoroll/config/binaryen-emscripten-releases.json
index 3cbda90..0451ef5 100644
--- a/autoroll/config/binaryen-emscripten-releases.json
+++ b/autoroll/config/binaryen-emscripten-releases.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "binaryen",
+ "childDisplayName": "binaryen",
+ "commitMsg": {
+ "bugProject": "",
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"dschuff@google.com"
],
@@ -13,7 +21,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "emscripten-releases",
+ "parentDisplayName": "emscripten-releases",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "binaryen-emscripten-releases",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,8 +33,6 @@
"childPath": "emscripten-releases/binaryen",
"childRepo": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/WebAssembly/binaryen.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/emscripten-releases.git"
},
diff --git a/autoroll/config/catapult-chromium.json b/autoroll/config/catapult-chromium.json
index 79c6631..e73376c 100644
--- a/autoroll/config/catapult-chromium.json
+++ b/autoroll/config/catapult-chromium.json
@@ -1,7 +1,22 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Catapult",
+ "childDisplayName": "Catapult",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://chromium.googlesource.com/catapult.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chromium.try:android_optional_gpu_tests_rel",
+ "luci.chromium.try:chromeos-kevin-rel",
+ "luci.chromium.try:linux_optional_gpu_tests_rel",
+ "luci.chromium.try:mac_optional_gpu_tests_rel",
+ "luci.chromium.try:win_optional_gpu_tests_rel"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"chrome-speed-operations@google.com",
"johnchen@chromium.org",
@@ -18,7 +33,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "catapult-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -33,19 +48,9 @@
"childPath": "src/third_party/catapult",
"childRepo": "https://chromium.googlesource.com/catapult.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/catapult.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chromium.try:android_optional_gpu_tests_rel",
- "luci.chromium.try:chromeos-kevin-rel",
- "luci.chromium.try:linux_optional_gpu_tests_rel",
- "luci.chromium.try:mac_optional_gpu_tests_rel",
- "luci.chromium.try:win_optional_gpu_tests_rel"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/chromite-chromium.json b/autoroll/config/chromite-chromium.json
index 7f59c0a..7b1d268 100644
--- a/autoroll/config/chromite-chromium.json
+++ b/autoroll/config/chromite-chromium.json
@@ -1,7 +1,18 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Chromite",
+ "childDisplayName": "Chromite",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/chromiumos/chromite.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chrome.try:chromeos-betty-pi-arc-chrome",
+ "luci.chromium.try:chromeos-kevin-rel"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"bpastene@google.com"
],
@@ -13,7 +24,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "chromite-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -26,15 +37,9 @@
"childPath": "src/third_party/chromite",
"childRepo": "https://chromium.googlesource.com/chromiumos/chromite.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/chromiumos/chromite.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chrome.try:chromeos-betty-pi-arc-chrome",
- "luci.chromium.try:chromeos-kevin-rel"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/chromium-skia.json b/autoroll/config/chromium-skia.json
index c31e7ef..6d8020e 100644
--- a/autoroll/config/chromium-skia.json
+++ b/autoroll/config/chromium-skia.json
@@ -1,7 +1,18 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Chromium",
+ "childDisplayName": "Chromium",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/chromium/src.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer",
+ "skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer"
+ ],
+ "includeLog": false,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"borenet@google.com"
],
@@ -13,7 +24,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Skia",
+ "parentDisplayName": "Skia",
"parentWaterfall": "https://status.skia.org",
"rollerName": "chromium-skia-autoroll",
"serviceAccount": "skia-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,15 +36,9 @@
"childPath": "../src",
"childRepo": "https://chromium.googlesource.com/chromium/src.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/chromium/src.git/+show/%s",
- "includeBugs": false,
- "includeLog": false,
"parentBranch": "master",
"parentRepo": "https://skia.googlesource.com/skia.git"
},
- "cqExtraTrybots": [
- "skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer",
- "skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/chromiumos-config-infra.json b/autoroll/config/chromiumos-config-infra.json
index ec9a70e..d723772 100644
--- a/autoroll/config/chromiumos-config-infra.json
+++ b/autoroll/config/chromiumos-config-infra.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "chromiumos/config",
+ "childDisplayName": "chromiumos/config",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/chromiumos/config.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"chromeos-infra-discuss@google.com",
"pprabhu@google.com",
@@ -15,7 +22,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "infra",
+ "parentDisplayName": "infra",
"parentWaterfall": "https://ci.chromium.org/p/infra/g/infra/console",
"rollerName": "chromiumos-config-infra-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -28,9 +35,6 @@
"childPath": "infra/go/src/go.chromium.org/chromiumos/config",
"childRepo": "https://chromium.googlesource.com/chromiumos/config.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/chromiumos/config.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/infra/infra.git"
},
diff --git a/autoroll/config/cros-afdo-airmont-chromium-beta.json b/autoroll/config/cros-afdo-airmont-chromium-beta.json
index 021c444..e1d099b 100644
--- a/autoroll/config/cros-afdo-airmont-chromium-beta.json
+++ b/autoroll/config/cros-afdo-airmont-chromium-beta.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ChromeOS Airmont AFDO profile",
+ "childDisplayName": "ChromeOS Airmont AFDO profile",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"gbiv@google.com",
"tcwang@google.com"
@@ -14,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium Beta Branch",
+ "parentDisplayName": "Chromium Beta Branch",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "cros-afdo-airmont-chromium-beta",
"serviceAccount": "chromium-release-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -24,23 +30,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chromeos/profiles/airmont.afdo.newest.txt",
- "commitMsgTmpl": "Roll airmont AFDO profile from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}\n\
-{{end}}Tbr: {{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/vetted/release",
"parentBranch": "refs/branch-heads/4103", // m83
diff --git a/autoroll/config/cros-afdo-airmont-chromium-stable.json b/autoroll/config/cros-afdo-airmont-chromium-stable.json
index f7bbd66..95feec8 100644
--- a/autoroll/config/cros-afdo-airmont-chromium-stable.json
+++ b/autoroll/config/cros-afdo-airmont-chromium-stable.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ChromeOS Airmont AFDO profile",
+ "childDisplayName": "ChromeOS Airmont AFDO profile",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"gbiv@google.com",
"tcwang@google.com"
@@ -14,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium Stable Branch",
+ "parentDisplayName": "Chromium Stable Branch",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "cros-afdo-airmont-chromium-stable",
"serviceAccount": "chromium-release-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -24,23 +30,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chromeos/profiles/airmont.afdo.newest.txt",
- "commitMsgTmpl": "Roll airmont AFDO profile from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}\n\
-{{end}}Tbr: {{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/vetted/release",
"parentBranch": "refs/branch-heads/4044", // m81
diff --git a/autoroll/config/cros-afdo-airmont-chromium.json b/autoroll/config/cros-afdo-airmont-chromium.json
index 38a2301..8a5269a 100644
--- a/autoroll/config/cros-afdo-airmont-chromium.json
+++ b/autoroll/config/cros-afdo-airmont-chromium.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ChromeOS Airmont AFDO profile",
+ "childDisplayName": "ChromeOS Airmont AFDO profile",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"tcwang@google.com"
],
@@ -13,7 +19,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "cros-afdo-airmont-chromium",
"serviceAccount": "chromium-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -23,23 +29,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chromeos/profiles/airmont.afdo.newest.txt",
- "commitMsgTmpl": "Roll airmont AFDO profile from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}\n\
-{{end}}Tbr: {{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/vetted/release",
"parentBranch": "master",
diff --git a/autoroll/config/cros-afdo-broadwell-chromium-beta.json b/autoroll/config/cros-afdo-broadwell-chromium-beta.json
index 6c68153..55d7142 100644
--- a/autoroll/config/cros-afdo-broadwell-chromium-beta.json
+++ b/autoroll/config/cros-afdo-broadwell-chromium-beta.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ChromeOS Broadwell AFDO profile",
+ "childDisplayName": "ChromeOS Broadwell AFDO profile",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"gbiv@google.com",
"tcwang@google.com"
@@ -14,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium Beta Branch",
+ "parentDisplayName": "Chromium Beta Branch",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "cros-afdo-broadwell-chromium-beta",
"serviceAccount": "chromium-release-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -24,23 +30,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chromeos/profiles/broadwell.afdo.newest.txt",
- "commitMsgTmpl": "Roll broadwell AFDO profile from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}\n\
-{{end}}Tbr: {{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/vetted/release",
"parentBranch": "refs/branch-heads/4103", // m83
diff --git a/autoroll/config/cros-afdo-broadwell-chromium-stable.json b/autoroll/config/cros-afdo-broadwell-chromium-stable.json
index d3a9210..3649779 100644
--- a/autoroll/config/cros-afdo-broadwell-chromium-stable.json
+++ b/autoroll/config/cros-afdo-broadwell-chromium-stable.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ChromeOS Broadwell AFDO profile",
+ "childDisplayName": "ChromeOS Broadwell AFDO profile",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"gbiv@google.com",
"tcwang@google.com"
@@ -14,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium Stable Branch",
+ "parentDisplayName": "Chromium Stable Branch",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "cros-afdo-broadwell-chromium-stable",
"serviceAccount": "chromium-release-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -24,23 +30,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chromeos/profiles/broadwell.afdo.newest.txt",
- "commitMsgTmpl": "Roll broadwell AFDO profile from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}\n\
-{{end}}Tbr: {{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/vetted/release",
"parentBranch": "{{.Branches.Chromium.Stable.Ref}}",
diff --git a/autoroll/config/cros-afdo-broadwell-chromium.json b/autoroll/config/cros-afdo-broadwell-chromium.json
index 878ec5f..974ea80 100644
--- a/autoroll/config/cros-afdo-broadwell-chromium.json
+++ b/autoroll/config/cros-afdo-broadwell-chromium.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ChromeOS Broadwell AFDO profile",
+ "childDisplayName": "ChromeOS Broadwell AFDO profile",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"tcwang@google.com"
],
@@ -13,7 +19,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "cros-afdo-broadwell-chromium",
"serviceAccount": "chromium-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -23,23 +29,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chromeos/profiles/broadwell.afdo.newest.txt",
- "commitMsgTmpl": "Roll broadwell AFDO profile from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}\n\
-{{end}}Tbr: {{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/vetted/release",
"parentBranch": "master",
diff --git a/autoroll/config/cros-afdo-silvermont-chromium-beta.json b/autoroll/config/cros-afdo-silvermont-chromium-beta.json
index a96a96d..303bbbe 100644
--- a/autoroll/config/cros-afdo-silvermont-chromium-beta.json
+++ b/autoroll/config/cros-afdo-silvermont-chromium-beta.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ChromeOS Silvermont AFDO profile",
+ "childDisplayName": "ChromeOS Silvermont AFDO profile",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"gbiv@google.com",
"tcwang@google.com"
@@ -14,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium Beta Branch",
+ "parentDisplayName": "Chromium Beta Branch",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "cros-afdo-silvermont-chromium-beta",
"serviceAccount": "chromium-release-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -24,23 +30,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chromeos/profiles/silvermont.afdo.newest.txt",
- "commitMsgTmpl": "Roll silvermont AFDO profile from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}\n\
-{{end}}Tbr: {{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/vetted/release",
"parentBranch": "refs/branch-heads/4103", // m83
diff --git a/autoroll/config/cros-afdo-silvermont-chromium-stable.json b/autoroll/config/cros-afdo-silvermont-chromium-stable.json
index eaf6afb..b29d0af 100644
--- a/autoroll/config/cros-afdo-silvermont-chromium-stable.json
+++ b/autoroll/config/cros-afdo-silvermont-chromium-stable.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ChromeOS Silvermont AFDO profile",
+ "childDisplayName": "ChromeOS Silvermont AFDO profile",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"gbiv@google.com",
"tcwang@google.com"
@@ -14,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium Stable Branch",
+ "parentDisplayName": "Chromium Stable Branch",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "cros-afdo-silvermont-chromium-stable",
"serviceAccount": "chromium-release-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -24,23 +30,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chromeos/profiles/silvermont.afdo.newest.txt",
- "commitMsgTmpl": "Roll silvermont AFDO profile from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}\n\
-{{end}}Tbr: {{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/vetted/release",
"parentBranch": "refs/branch-heads/4044", // m81
diff --git a/autoroll/config/cros-afdo-silvermont-chromium.json b/autoroll/config/cros-afdo-silvermont-chromium.json
index 6340f5d..2994340 100644
--- a/autoroll/config/cros-afdo-silvermont-chromium.json
+++ b/autoroll/config/cros-afdo-silvermont-chromium.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ChromeOS Silvermont AFDO profile",
+ "childDisplayName": "ChromeOS Silvermont AFDO profile",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"tcwang@google.com"
],
@@ -13,7 +19,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "cros-afdo-silvermont-chromium",
"serviceAccount": "chromium-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -23,23 +29,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chromeos/profiles/silvermont.afdo.newest.txt",
- "commitMsgTmpl": "Roll silvermont AFDO profile from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}\n\
-{{end}}Tbr: {{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/vetted/release",
"parentBranch": "master",
diff --git a/autoroll/config/cros-orderfile-chromium-beta.json b/autoroll/config/cros-orderfile-chromium-beta.json
index 9ab1da8..62f83c8 100644
--- a/autoroll/config/cros-orderfile-chromium-beta.json
+++ b/autoroll/config/cros-orderfile-chromium-beta.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ChromeOS Orderfiles",
+ "childDisplayName": "ChromeOS Orderfiles",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"tcwang@google.com"
],
@@ -13,7 +19,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium Beta Branch",
+ "parentDisplayName": "Chromium Beta Branch",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "cros-orderfile-chromium-beta",
"serviceAccount": "chromium-release-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -23,23 +29,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chromeos/profiles/orderfile.newest.txt",
- "commitMsgTmpl": "Roll ChromeOS orderfile from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-CQ_EXTRA_TRYBOTS={{.CqExtraTrybots}}\n\
-TBR={{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/orderfiles/vetted",
"parentBranch": "refs/branch-heads/4103", // m83
diff --git a/autoroll/config/cros-orderfile-chromium-stable.json b/autoroll/config/cros-orderfile-chromium-stable.json
index 9832eab..afbbfed 100644
--- a/autoroll/config/cros-orderfile-chromium-stable.json
+++ b/autoroll/config/cros-orderfile-chromium-stable.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ChromeOS Orderfiles",
+ "childDisplayName": "ChromeOS Orderfiles",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"tcwang@google.com"
],
@@ -13,7 +19,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium Stable Branch",
+ "parentDisplayName": "Chromium Stable Branch",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "cros-orderfile-chromium-stable",
"serviceAccount": "chromium-release-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -23,23 +29,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chromeos/profiles/orderfile.newest.txt",
- "commitMsgTmpl": "Roll ChromeOS orderfile from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-CQ_EXTRA_TRYBOTS={{.CqExtraTrybots}}\n\
-TBR={{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/orderfiles/vetted",
"parentBranch": "refs/branch-heads/4044", // m81
diff --git a/autoroll/config/cros-orderfile-chromium.json b/autoroll/config/cros-orderfile-chromium.json
index c6c0c86..8a9ddd9 100644
--- a/autoroll/config/cros-orderfile-chromium.json
+++ b/autoroll/config/cros-orderfile-chromium.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "ChromeOS Orderfiles",
+ "childDisplayName": "ChromeOS Orderfiles",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"tcwang@google.com"
],
@@ -13,7 +19,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "cros-orderfile-chromium",
"serviceAccount": "chromium-autoroll@skia-public.google.com.iam.gserviceaccount.com",
@@ -23,23 +29,6 @@
"semVerGCSRepoManager": {
"childBranch": "master",
"childPath": "chromeos/profiles/orderfile.newest.txt",
- "commitMsgTmpl": "Roll ChromeOS orderfile from {{.RollingFrom.String}} to {{.RollingTo.String}}\n\
-\n\
-If this roll has caused a breakage, revert this CL and stop the roller\n\
-using the controls here:\n\
-{{.ServerURL}}\n\
-Please CC {{stringsJoin .Reviewers \",\"}} on the revert to ensure that a human\n\
-is aware of the problem.\n\
-\n\
-To report a problem with the AutoRoller itself, please file a bug:\n\
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug\n\
-\n\
-Documentation for the AutoRoller is here:\n\
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md\n\
-\n\
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}\n\
-{{end}}Tbr: {{stringsJoin .Reviewers \",\"}}\n\
-",
"gcsBucket": "chromeos-prebuilt",
"gcsPath": "afdo-job/orderfiles/vetted",
"parentBranch": "master",
diff --git a/autoroll/config/cros-proto-infra.json b/autoroll/config/cros-proto-infra.json
index bd6ec51..97e223f 100644
--- a/autoroll/config/cros-proto-infra.json
+++ b/autoroll/config/cros-proto-infra.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "chromiumos/infra/proto",
+ "childDisplayName": "chromiumos/infra/proto",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://chromium.googlesource.com/chromiumos/infra/proto.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"seanabraham@google.com"
],
@@ -13,7 +21,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "infra",
+ "parentDisplayName": "infra",
"parentWaterfall": "https://ci.chromium.org/p/infra/g/infra/console",
"rollerName": "cros-proto-infra-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,9 +33,6 @@
"childPath": "infra/go/src/go.chromium.org/chromiumos/infra/proto",
"childRepo": "https://chromium.googlesource.com/chromiumos/infra/proto.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/chromiumos/infra/proto.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/infra/infra.git"
},
diff --git a/autoroll/config/dart-sdk-flutter-engine.json b/autoroll/config/dart-sdk-flutter-engine.json
index 2e00297..2b7b31c 100644
--- a/autoroll/config/dart-sdk-flutter-engine.json
+++ b/autoroll/config/dart-sdk-flutter-engine.json
@@ -1,12 +1,19 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#13
// for documentation of the autoroller config.
{
- "childName": "Dart SDK",
+ "childDisplayName": "Dart SDK",
+ "commitMsg": {
+ "childLogURLTmpl": "https://dart.googlesource.com/sdk.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": false,
+ "includeTests": false
+ },
"contacts": ["rmistry@google.com", "aam@google.com"],
"isInternal": false,
"ownerPrimary": "rmistry",
"ownerSecondary": "borenet",
- "parentName": "Flutter Engine",
+ "parentDisplayName": "Flutter Engine",
"parentWaterfall": "https://ci.chromium.org/p/flutter/g/engine/console",
"rollerName": "dart-sdk-flutter-engine",
"serviceAccount": "flutter-engine-autoroll@skia-public.iam.gserviceaccount.com",
@@ -23,7 +30,6 @@
"childRepo": "https://dart.googlesource.com/sdk.git",
"childRevLinkTmpl": "https://dart.googlesource.com/sdk.git/+show/%s",
"forkRepoURL": "git@github.com:skia-flutter-autoroll/engine.git",
- "includeLog": true,
"gclientSpec": "solutions=[{\"name\":\"src/flutter\",\"url\":\"git@github.com:flutter/engine.git\",\"deps_file\":\"DEPS\",\"managed\":False,\"custom_deps\":{},\"safesync_url\":\"\"}]",
"githubParentPath": "src/flutter",
"parentBranch": "master",
diff --git a/autoroll/config/dawn-chromium.json b/autoroll/config/dawn-chromium.json
index 63afeeb..44f8848 100644
--- a/autoroll/config/dawn-chromium.json
+++ b/autoroll/config/dawn-chromium.json
@@ -1,7 +1,21 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Dawn",
+ "childDisplayName": "Dawn",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://dawn.googlesource.com/dawn.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chromium.try:dawn-linux-x64-deps-rel",
+ "luci.chromium.try:dawn-mac-x64-deps-rel",
+ "luci.chromium.try:dawn-win10-x64-deps-rel",
+ "luci.chromium.try:dawn-win10-x86-deps-rel"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"cwallez@google.com"
],
@@ -13,7 +27,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "dawn-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -28,18 +42,9 @@
"childPath": "src/third_party/dawn",
"childRepo": "https://dawn.googlesource.com/dawn.git",
"childRevLinkTmpl": "https://dawn.googlesource.com/dawn.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chromium.try:dawn-linux-x64-deps-rel",
- "luci.chromium.try:dawn-mac-x64-deps-rel",
- "luci.chromium.try:dawn-win10-x64-deps-rel",
- "luci.chromium.try:dawn-win10-x86-deps-rel"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/dawn-skia.json b/autoroll/config/dawn-skia.json
index c025677..4c7c79c 100644
--- a/autoroll/config/dawn-skia.json
+++ b/autoroll/config/dawn-skia.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "dawn",
+ "childDisplayName": "dawn",
+ "commitMsg": {
+ "bugProject": "skia",
+ "childLogURLTmpl": "https://dawn.googlesource.com/dawn.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"cwallez@google.com"
],
@@ -13,7 +21,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Skia",
+ "parentDisplayName": "Skia",
"parentWaterfall": "https://status.skia.org",
"rollerName": "dawn-skia-autoroll",
"serviceAccount": "skia-autoroll@skia-public.iam.gserviceaccount.com",
@@ -26,55 +34,9 @@
"childPath": "third_party/externals/dawn",
"childRepo": "https://dawn.googlesource.com/dawn.git",
"childRevLinkTmpl": "https://dawn.googlesource.com/dawn.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "skia",
"parentBranch": "master",
- "parentRepo": "https://skia.googlesource.com/skia.git",
- "transitiveDeps": [
- {
- "child": {
- "id": "https://chromium.googlesource.com/chromium/src/third_party/jinja2",
- "path": "DEPS"
- },
- "parent": {
- "id": "https://chromium.googlesource.com/chromium/src/third_party/jinja2",
- "path": "DEPS"
- }
- },
- {
- "child": {
- "id": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe",
- "path": "DEPS"
- },
- "parent": {
- "id": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe",
- "path": "DEPS"
- }
- },
- {
- "child": {
- "id": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
- "path": "DEPS"
- },
- "parent": {
- "id": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
- "path": "DEPS"
- }
- },
- {
- "child": {
- "id": "https://chromium.googlesource.com/external/github.com/google/shaderc",
- "path": "DEPS"
- },
- "parent": {
- "id": "https://chromium.googlesource.com/external/github.com/google/shaderc",
- "path": "DEPS"
- }
- }
- ]
+ "parentRepo": "https://skia.googlesource.com/skia.git"
},
- "cqExtraTrybots": [],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
@@ -83,5 +45,47 @@
"readinessFailureThreshold": "10"
},
"maxRollFrequency": "6h",
- "timeWindow": "M-F 04:00-08:00"
+ "timeWindow": "M-F 04:00-08:00",
+ "transitiveDeps": [
+ {
+ "child": {
+ "id": "https://chromium.googlesource.com/chromium/src/third_party/jinja2",
+ "path": "DEPS"
+ },
+ "parent": {
+ "id": "https://chromium.googlesource.com/chromium/src/third_party/jinja2",
+ "path": "DEPS"
+ }
+ },
+ {
+ "child": {
+ "id": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe",
+ "path": "DEPS"
+ },
+ "parent": {
+ "id": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe",
+ "path": "DEPS"
+ }
+ },
+ {
+ "child": {
+ "id": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
+ "path": "DEPS"
+ },
+ "parent": {
+ "id": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
+ "path": "DEPS"
+ }
+ },
+ {
+ "child": {
+ "id": "https://chromium.googlesource.com/external/github.com/google/shaderc",
+ "path": "DEPS"
+ },
+ "parent": {
+ "id": "https://chromium.googlesource.com/external/github.com/google/shaderc",
+ "path": "DEPS"
+ }
+ }
+ ]
}
diff --git a/autoroll/config/depot-tools-chromium.json b/autoroll/config/depot-tools-chromium.json
index d60962a..4691dc1 100644
--- a/autoroll/config/depot-tools-chromium.json
+++ b/autoroll/config/depot-tools-chromium.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Depot Tools",
+ "childDisplayName": "Depot Tools",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"agable@google.com"
],
@@ -13,7 +21,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "depot-tools-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,9 +33,6 @@
"childPath": "src/third_party/depot_tools",
"childRepo": "https://chromium.googlesource.com/chromium/tools/depot_tools.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/chromium/tools/depot_tools.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
diff --git a/autoroll/config/devtools-frontend-chromium.json b/autoroll/config/devtools-frontend-chromium.json
index c059a5e..69e54af 100644
--- a/autoroll/config/devtools-frontend-chromium.json
+++ b/autoroll/config/devtools-frontend-chromium.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "DevTools Frontend",
+ "childDisplayName": "DevTools Frontend",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://chromium.googlesource.com/devtools/devtools-frontend.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"v8-infra@google.com"
],
@@ -13,7 +21,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "devtools-frontend-chromium",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,9 +33,6 @@
"childPath": "src/third_party/devtools-frontend/src",
"childRepo": "https://chromium.googlesource.com/devtools/devtools-frontend.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/devtools/devtools-frontend.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
diff --git a/autoroll/config/emscripten-emscripten-releases.json b/autoroll/config/emscripten-emscripten-releases.json
index 087bab2..c5cd849 100644
--- a/autoroll/config/emscripten-emscripten-releases.json
+++ b/autoroll/config/emscripten-emscripten-releases.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "emscripten",
+ "childDisplayName": "emscripten",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/emscripten-core/emscripten.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"dschuff@google.com"
],
@@ -13,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "emscripten-releases",
+ "parentDisplayName": "emscripten-releases",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "emscripten-emscripten-releases",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,8 +32,6 @@
"childPath": "emscripten-releases/emscripten",
"childRepo": "https://chromium.googlesource.com/external/github.com/emscripten-core/emscripten.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/emscripten-core/emscripten.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/emscripten-releases.git"
},
diff --git a/autoroll/config/flutter-engine-flutter.json b/autoroll/config/flutter-engine-flutter.json
index 5e79e8f..3ec8fc9 100644
--- a/autoroll/config/flutter-engine-flutter.json
+++ b/autoroll/config/flutter-engine-flutter.json
@@ -1,12 +1,19 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Engine",
+ "childDisplayName": "Engine",
+ "commitMsg": {
+ "childLogURLTmpl": "https://github.com/flutter/engine/compare/{{.RollingFrom}}...{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": false,
+ "includeTests": false
+ },
"contacts": ["liyuqian@google.com", "rmistry@google.com"],
"isInternal": false,
"ownerPrimary": "rmistry",
"ownerSecondary": "borenet",
- "parentName": "Flutter",
+ "parentDisplayName": "Flutter",
"parentWaterfall": "https://flutter-dashboard.appspot.com/#/build",
"rollerName": "flutter-engine-flutter-autoroll",
"serviceAccount": "flutter-autoroll@skia-public.iam.gserviceaccount.com",
@@ -28,33 +35,10 @@
"childRepoURL": "git@github.com:flutter/engine",
"childRevLinkTmpl": "https://github.com/flutter/engine/commit/%s",
"childUserName": "flutter",
- "forkRepoURL": "git@github.com:engine-flutter-autoroll/flutter",
- "includeLog": true,
+ "forkRepoURL": "git@github.com:engine-flutter-autoroll/flutter.git",
"parentBranch": "master",
- "parentRepo": "git@github.com:flutter/flutter",
- "revisionFile": "bin/internal/engine.version",
- "transitiveDeps": [
- {
- "child": {
- "id": "fuchsia/sdk/core/linux-amd64",
- "path": "DEPS"
- },
- "parent": {
- "id": "fuchsia/sdk/core/linux-amd64",
- "path": "bin/internal/fuchsia-linux.version"
- }
- },
- {
- "child": {
- "id": "fuchsia/sdk/core/mac-amd64",
- "path": "DEPS"
- },
- "parent": {
- "id": "fuchsia/sdk/core/mac-amd64",
- "path": "bin/internal/fuchsia-mac.version"
- }
- }
- ]
+ "parentRepo": "git@github.com:flutter/flutter.git",
+ "revisionFile": "bin/internal/engine.version"
},
"kubernetes": {
"cpu": "1",
@@ -82,5 +66,27 @@
"emails": ["$SHERIFF"]
}
}
+ ],
+ "transitiveDeps": [
+ {
+ "child": {
+ "id": "fuchsia/sdk/core/linux-amd64",
+ "path": "DEPS"
+ },
+ "parent": {
+ "id": "fuchsia/sdk/core/linux-amd64",
+ "path": "bin/internal/fuchsia-linux.version"
+ }
+ },
+ {
+ "child": {
+ "id": "fuchsia/sdk/core/mac-amd64",
+ "path": "DEPS"
+ },
+ "parent": {
+ "id": "fuchsia/sdk/core/mac-amd64",
+ "path": "bin/internal/fuchsia-mac.version"
+ }
+ }
]
}
diff --git a/autoroll/config/freetype-chromium.json b/autoroll/config/freetype-chromium.json
index 0ee9bfc..603835f 100644
--- a/autoroll/config/freetype-chromium.json
+++ b/autoroll/config/freetype-chromium.json
@@ -1,7 +1,22 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "FreeType",
+ "childDisplayName": "FreeType",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chromium.try:linux_chromium_msan_rel_ng",
+ "luci.chromium.try:linux-blink-rel",
+ "luci.chromium.try:mac10.12-blink-rel",
+ "luci.chromium.try:mac10.13_retina-blink-rel",
+ "luci.chromium.try:win10-blink-rel",
+ "luci.chromium.try:win7-blink-rel"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"bungeman@google.com",
"drott@google.com"
@@ -14,7 +29,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "freetype-chromium",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -29,19 +44,9 @@
"childPath": "src/third_party/freetype/src",
"childRepo": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chromium.try:linux_chromium_msan_rel_ng",
- "luci.chromium.try:linux-blink-rel",
- "luci.chromium.try:mac10.12-blink-rel",
- "luci.chromium.try:mac10.13_retina-blink-rel",
- "luci.chromium.try:win10-blink-rel",
- "luci.chromium.try:win7-blink-rel"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/fuchsia-aemu-chromium.json b/autoroll/config/fuchsia-aemu-chromium.json
index 0c1f944..6617e26 100644
--- a/autoroll/config/fuchsia-aemu-chromium.json
+++ b/autoroll/config/fuchsia-aemu-chromium.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Fuchsia AEMU",
+ "childDisplayName": "Fuchsia AEMU",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"chonggu@google.com"
],
@@ -13,7 +19,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "fuchsia-aemu-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
diff --git a/autoroll/config/fuchsia-linux-sdk-flutter-engine.json b/autoroll/config/fuchsia-linux-sdk-flutter-engine.json
index 5780f03..894d937 100644
--- a/autoroll/config/fuchsia-linux-sdk-flutter-engine.json
+++ b/autoroll/config/fuchsia-linux-sdk-flutter-engine.json
@@ -1,12 +1,18 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Fuchsia Linux SDK",
+ "childDisplayName": "Fuchsia Linux SDK",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": false,
+ "includeTests": false
+ },
"contacts": ["liyuqian@google.com", "rmistry@google.com"],
"isInternal": false,
"ownerPrimary": "rmistry",
"ownerSecondary": "borenet",
- "parentName": "Flutter",
+ "parentDisplayName": "Flutter",
"parentWaterfall": "https://ci.chromium.org/p/flutter/g/engine/console",
"rollerName": "fuchsia-linux-sdk-flutter-engine",
"serviceAccount": "flutter-engine-autoroll@skia-public.iam.gserviceaccount.com",
diff --git a/autoroll/config/fuchsia-linux-toolchain-flutter-engine.json b/autoroll/config/fuchsia-linux-toolchain-flutter-engine.json
index c48da74..1a3b096 100644
--- a/autoroll/config/fuchsia-linux-toolchain-flutter-engine.json
+++ b/autoroll/config/fuchsia-linux-toolchain-flutter-engine.json
@@ -1,12 +1,18 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Fuchsia Linux Toolchain",
+ "childDisplayName": "Fuchsia Linux Toolchain",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": false,
+ "includeTests": false
+ },
"contacts": ["liyuqian@google.com", "rmistry@google.com"],
"isInternal": false,
"ownerPrimary": "rmistry",
"ownerSecondary": "borenet",
- "parentName": "Flutter",
+ "parentDisplayName": "Flutter",
"parentWaterfall": "https://ci.chromium.org/p/flutter/g/engine/console",
"rollerName": "fuchsia-linux-toolchain-flutter-engine",
"serviceAccount": "flutter-engine-autoroll@skia-public.iam.gserviceaccount.com",
diff --git a/autoroll/config/fuchsia-mac-sdk-flutter-engine.json b/autoroll/config/fuchsia-mac-sdk-flutter-engine.json
index 73ec6f7..bee0a9f 100644
--- a/autoroll/config/fuchsia-mac-sdk-flutter-engine.json
+++ b/autoroll/config/fuchsia-mac-sdk-flutter-engine.json
@@ -1,12 +1,18 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Fuchsia Mac SDK",
+ "childDisplayName": "Fuchsia Mac SDK",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": false,
+ "includeTests": false
+ },
"contacts": ["liyuqian@google.com", "rmistry@google.com"],
"isInternal": false,
"ownerPrimary": "rmistry",
"ownerSecondary": "borenet",
- "parentName": "Flutter",
+ "parentDisplayName": "Flutter",
"parentWaterfall": "https://ci.chromium.org/p/flutter/g/engine/console",
"rollerName": "fuchsia-mac-sdk-flutter-engine",
"serviceAccount": "flutter-engine-autoroll@skia-public.iam.gserviceaccount.com",
diff --git a/autoroll/config/fuchsia-mac-toolchain-flutter-engine.json b/autoroll/config/fuchsia-mac-toolchain-flutter-engine.json
index 0474b45..9b0b6a6 100644
--- a/autoroll/config/fuchsia-mac-toolchain-flutter-engine.json
+++ b/autoroll/config/fuchsia-mac-toolchain-flutter-engine.json
@@ -1,12 +1,18 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Fuchsia Mac Toolchain",
+ "childDisplayName": "Fuchsia Mac Toolchain",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": false,
+ "includeTests": false
+ },
"contacts": ["liyuqian@google.com", "rmistry@google.com"],
"isInternal": false,
"ownerPrimary": "rmistry",
"ownerSecondary": "borenet",
- "parentName": "Flutter",
+ "parentDisplayName": "Flutter",
"parentWaterfall": "https://ci.chromium.org/p/flutter/g/engine/console",
"rollerName": "fuchsia-mac-toolchain-flutter-engine",
"serviceAccount": "flutter-engine-autoroll@skia-public.iam.gserviceaccount.com",
diff --git a/autoroll/config/fuchsia-sdk-chromium.json b/autoroll/config/fuchsia-sdk-chromium.json
index e456378..2155453 100644
--- a/autoroll/config/fuchsia-sdk-chromium.json
+++ b/autoroll/config/fuchsia-sdk-chromium.json
@@ -1,7 +1,13 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Fuchsia SDK",
+ "childDisplayName": "Fuchsia SDK",
+ "commitMsg": {
+ "includeLog": false,
+ "includeRevisionCount": false,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"jbudorick@chromium.org",
"cr-fuchsia+bot@chromium.org"
@@ -14,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "fuchsia-sdk-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.google.com.iam.gserviceaccount.com",
diff --git a/autoroll/config/glslang-angle.json b/autoroll/config/glslang-angle.json
index 94975f1..0aabee0 100644
--- a/autoroll/config/glslang-angle.json
+++ b/autoroll/config/glslang-angle.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "glslang",
+ "childDisplayName": "glslang",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": false,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"geofflang@chromium.org",
"jmadill@chromium.org",
@@ -16,7 +23,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "ANGLE",
+ "parentDisplayName": "ANGLE",
"parentWaterfall": "https://ci.chromium.org/p/angle/g/ci/console",
"rollerName": "glslang-angle-autoroll",
"serviceAccount": "angle-autoroll@skia-public.iam.gserviceaccount.com",
@@ -31,8 +38,6 @@
"childPath": "third_party/glslang/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+show/%s",
- "includeBugs": false,
- "includeLog": false,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/angle/angle.git"
},
diff --git a/autoroll/config/glslang-chromium.json b/autoroll/config/glslang-chromium.json
index bb6959c..54817a5 100644
--- a/autoroll/config/glslang-chromium.json
+++ b/autoroll/config/glslang-chromium.json
@@ -1,7 +1,26 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "glslang",
+ "childDisplayName": "glslang",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chromium.try:android_angle_vk32_deqp_rel_ng",
+ "luci.chromium.try:android_angle_vk32_rel_ng",
+ "luci.chromium.try:android_angle_vk64_deqp_rel_ng",
+ "luci.chromium.try:android_angle_vk64_rel_ng",
+ "luci.chromium.try:linux_angle_deqp_rel_ng",
+ "luci.chromium.try:linux-angle-rel",
+ "luci.chromium.try:win-angle-rel-32",
+ "luci.chromium.try:win-angle-rel-64",
+ "luci.chromium.try:win-angle-deqp-rel-32",
+ "luci.chromium.try:win-angle-deqp-rel-64"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"dsinclair@chromium.org",
"geofflang@chromium.org",
@@ -17,7 +36,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "glslang-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -30,23 +49,9 @@
"childPath": "src/third_party/glslang/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chromium.try:android_angle_vk32_deqp_rel_ng",
- "luci.chromium.try:android_angle_vk32_rel_ng",
- "luci.chromium.try:android_angle_vk64_deqp_rel_ng",
- "luci.chromium.try:android_angle_vk64_rel_ng",
- "luci.chromium.try:linux_angle_deqp_rel_ng",
- "luci.chromium.try:linux-angle-rel",
- "luci.chromium.try:win-angle-rel-32",
- "luci.chromium.try:win-angle-rel-64",
- "luci.chromium.try:win-angle-deqp-rel-32",
- "luci.chromium.try:win-angle-deqp-rel-64"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/googletest-chromium.json b/autoroll/config/googletest-chromium.json
index 8cc63c4..9a1e408 100644
--- a/autoroll/config/googletest-chromium.json
+++ b/autoroll/config/googletest-chromium.json
@@ -1,7 +1,20 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "GoogleTest",
+ "childDisplayName": "GoogleTest",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/google/googletest.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chromium.try:android_optional_gpu_tests_rel",
+ "luci.chromium.try:mac_optional_gpu_tests_rel",
+ "luci.chromium.try:linux_chromium_cfi_rel_ng",
+ "luci.chrome.try:win-chrome"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"isamsonov@google.com",
"pwnall@chromium.org"
@@ -14,7 +27,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "googletest-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -27,17 +40,9 @@
"childPath": "src/third_party/googletest/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/google/googletest.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/google/googletest.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chromium.try:android_optional_gpu_tests_rel",
- "luci.chromium.try:mac_optional_gpu_tests_rel",
- "luci.chromium.try:linux_chromium_cfi_rel_ng",
- "luci.chrome.try:win-chrome"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/llvm-project-emscripten-releases.json b/autoroll/config/llvm-project-emscripten-releases.json
index 68cef52..f6d2a03 100644
--- a/autoroll/config/llvm-project-emscripten-releases.json
+++ b/autoroll/config/llvm-project-emscripten-releases.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "llvm-project",
+ "childDisplayName": "llvm-project",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"dschuff@google.com"
],
@@ -13,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "emscripten-releases",
+ "parentDisplayName": "emscripten-releases",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "llvm-project-emscripten-releases",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,8 +32,6 @@
"childPath": "emscripten-releases/llvm-project",
"childRepo": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/emscripten-releases.git"
},
diff --git a/autoroll/config/lottie-android-lottie-ci.json b/autoroll/config/lottie-android-lottie-ci.json
index fc6b4c8..3413671 100644
--- a/autoroll/config/lottie-android-lottie-ci.json
+++ b/autoroll/config/lottie-android-lottie-ci.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Lottie Android",
+ "childDisplayName": "Lottie Android",
+ "commitMsg": {
+ "childLogURLTmpl": "https://skia.googlesource.com/external/github.com/airbnb/lottie-android.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"borenet@google.com"
],
@@ -13,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "rmistry",
"ownerSecondary": "borenet",
- "parentName": "Lottie CI",
+ "parentDisplayName": "Lottie CI",
"parentWaterfall": "https://status.skia.org/repo/lottie-ci",
"rollerName": "lottie-android-lottie-ci-autoroll",
"serviceAccount": "skia-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,8 +32,6 @@
"childPath": "lottie-android",
"childRepo": "https://skia.googlesource.com/external/github.com/airbnb/lottie-android.git",
"childRevLinkTmpl": "https://skia.googlesource.com/external/github.com/airbnb/lottie-android.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://skia.googlesource.com/lottie-ci.git"
},
diff --git a/autoroll/config/lottie-web-lottie-ci.json b/autoroll/config/lottie-web-lottie-ci.json
index 6c42a58..1df0b94 100644
--- a/autoroll/config/lottie-web-lottie-ci.json
+++ b/autoroll/config/lottie-web-lottie-ci.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Lottie Web",
+ "childDisplayName": "Lottie Web",
+ "commitMsg": {
+ "childLogURLTmpl": "https://skia.googlesource.com/external/github.com/airbnb/lottie-web.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"borenet@google.com"
],
@@ -13,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Lottie CI",
+ "parentDisplayName": "Lottie CI",
"parentWaterfall": "https://status.skia.org/repo/lottie-ci",
"rollerName": "lottie-web-lottie-ci-autoroll",
"serviceAccount": "skia-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,8 +32,6 @@
"childPath": "lottie",
"childRepo": "https://skia.googlesource.com/external/github.com/airbnb/lottie-web.git",
"childRevLinkTmpl": "https://skia.googlesource.com/external/github.com/airbnb/lottie-web.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://skia.googlesource.com/lottie-ci.git"
},
diff --git a/autoroll/config/luci-go-infra.json b/autoroll/config/luci-go-infra.json
index 79ca849..dbdf375 100644
--- a/autoroll/config/luci-go-infra.json
+++ b/autoroll/config/luci-go-infra.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "luci-go",
+ "childDisplayName": "luci-go",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/infra/luci/luci-go.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"tandrii@chromium.org"
],
@@ -13,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "infra",
+ "parentDisplayName": "infra",
"parentWaterfall": "https://ci.chromium.org/p/infra/g/infra/console",
"rollerName": "luci-go-infra-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,9 +32,6 @@
"childPath": "infra/go/src/go.chromium.org/luci",
"childRepo": "https://chromium.googlesource.com/infra/luci/luci-go.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/infra/luci/luci-go.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/infra/infra.git"
},
diff --git a/autoroll/config/luci-py-infra.json b/autoroll/config/luci-py-infra.json
index 446e528..f9d813e 100644
--- a/autoroll/config/luci-py-infra.json
+++ b/autoroll/config/luci-py-infra.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "luci-py",
+ "childDisplayName": "luci-py",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/infra/luci/luci-py.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"tikuta@chromium.org"
],
@@ -13,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "infra",
+ "parentDisplayName": "infra",
"parentWaterfall": "https://ci.chromium.org/p/infra/g/infra/console",
"rollerName": "luci-py-infra-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,9 +32,6 @@
"childPath": "infra/luci",
"childRepo": "https://chromium.googlesource.com/infra/luci/luci-py.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/infra/luci/luci-py.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/infra/infra.git"
},
diff --git a/autoroll/config/material-font-disk-loader-ios-chromium.json b/autoroll/config/material-font-disk-loader-ios-chromium.json
index c9f0f9f..1aa2f49 100644
--- a/autoroll/config/material-font-disk-loader-ios-chromium.json
+++ b/autoroll/config/material-font-disk-loader-ios-chromium.json
@@ -1,7 +1,17 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "material-font-disk-loader-ios",
+ "childDisplayName": "material-font-disk-loader-ios",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/material-foundation/material-font-disk-loader-ios/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chrome.try:ios-internal-mdc"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"jbudorick@chromium.org"
],
@@ -13,7 +23,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "material-font-disk-loader-ios-chromium",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,14 +35,9 @@
"childPath": "src/ios/third_party/material_font_disk_loader_ios/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/material-foundation/material-font-disk-loader-ios",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/material-foundation/material-font-disk-loader-ios/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chrome.try:ios-internal-mdc"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/material-internationalization-ios-chromium.json b/autoroll/config/material-internationalization-ios-chromium.json
index 328d4ac..5a85030 100644
--- a/autoroll/config/material-internationalization-ios-chromium.json
+++ b/autoroll/config/material-internationalization-ios-chromium.json
@@ -1,7 +1,17 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "material-internationalization-ios",
+ "childDisplayName": "material-internationalization-ios",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/material-foundation/material-internationalization-ios/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chrome.try:ios-internal-mdc"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"jbudorick@chromium.org"
],
@@ -13,7 +23,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "material-i18n-ios-chromium",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,14 +35,9 @@
"childPath": "src/ios/third_party/material_internationalization_ios/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/material-foundation/material-internationalization-ios",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/material-foundation/material-internationalization-ios/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chrome.try:ios-internal-mdc"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/material-roboto-font-loader-ios-chromium.json b/autoroll/config/material-roboto-font-loader-ios-chromium.json
index 8aad7d4..07b5cc3 100644
--- a/autoroll/config/material-roboto-font-loader-ios-chromium.json
+++ b/autoroll/config/material-roboto-font-loader-ios-chromium.json
@@ -1,7 +1,17 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "material-roboto-font-loader-ios",
+ "childDisplayName": "material-roboto-font-loader-ios",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/material-foundation/material-roboto-font-loader-ios/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chrome.try:ios-internal-mdc"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"jbudorick@chromium.org"
],
@@ -13,7 +23,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "material-roboto-font-loader-ios-chromium",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,14 +35,9 @@
"childPath": "src/ios/third_party/material_roboto_font_loader_ios/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/material-foundation/material-roboto-font-loader-ios",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/material-foundation/material-roboto-font-loader-ios/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chrome.try:ios-internal-mdc"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/material-sprited-animation-view-ios-chromium.json b/autoroll/config/material-sprited-animation-view-ios-chromium.json
index e260ee2..fa17372 100644
--- a/autoroll/config/material-sprited-animation-view-ios-chromium.json
+++ b/autoroll/config/material-sprited-animation-view-ios-chromium.json
@@ -1,7 +1,17 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "material-sprited-animation-view-ios",
+ "childDisplayName": "material-sprited-animation-view-ios",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/material-foundation/material-sprited-animation-view-ios/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chrome.try:ios-internal-mdc"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"jbudorick@chromium.org"
],
@@ -13,7 +23,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "material-sprited-ani-view-ios-chromium",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,14 +35,9 @@
"childPath": "src/ios/third_party/material_sprited_animation_view_ios/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/material-foundation/material-sprited-animation-view-ios",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/material-foundation/material-sprited-animation-view-ios/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chrome.try:ios-internal-mdc"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/material-text-accessibility-ios-chromium.json b/autoroll/config/material-text-accessibility-ios-chromium.json
index 01cbea7..3e4dd14 100644
--- a/autoroll/config/material-text-accessibility-ios-chromium.json
+++ b/autoroll/config/material-text-accessibility-ios-chromium.json
@@ -1,7 +1,17 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "material-text-accessibility-ios",
+ "childDisplayName": "material-text-accessibility-ios",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/material-foundation/material-text-accessibility-ios/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chrome.try:ios-internal-mdc"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"jbudorick@chromium.org"
],
@@ -13,7 +23,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "material-text-accessibility-ios-chromium",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,14 +35,9 @@
"childPath": "src/ios/third_party/material_text_accessibility_ios/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/material-foundation/material-text-accessibility-ios",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/material-foundation/material-text-accessibility-ios/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chrome.try:ios-internal-mdc"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/motion-animator-objc-chromium.json b/autoroll/config/motion-animator-objc-chromium.json
index 8647924..79a53e8 100644
--- a/autoroll/config/motion-animator-objc-chromium.json
+++ b/autoroll/config/motion-animator-objc-chromium.json
@@ -1,7 +1,17 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "motion-animator-objc",
+ "childDisplayName": "motion-animator-objc",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/material-motion/motion-animator-objc/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chrome.try:ios-internal-mdc"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"jbudorick@chromium.org"
],
@@ -13,7 +23,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "motion-animator-objc-chromium",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,14 +35,9 @@
"childPath": "src/ios/third_party/motion_animator_objc/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/material-motion/motion-animator-objc",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/material-motion/motion-animator-objc/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chrome.try:ios-internal-mdc"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/motion-interchange-objc-chromium.json b/autoroll/config/motion-interchange-objc-chromium.json
index c9cd8c3..818d4bf 100644
--- a/autoroll/config/motion-interchange-objc-chromium.json
+++ b/autoroll/config/motion-interchange-objc-chromium.json
@@ -1,7 +1,17 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "motion-interchange-objc",
+ "childDisplayName": "motion-interchange-objc",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/material-motion/motion-interchange-objc/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chrome.try:ios-internal-mdc"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"jbudorick@chromium.org"
],
@@ -13,7 +23,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "motion-interchange-objc-chromium",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,14 +35,9 @@
"childPath": "src/ios/third_party/motion_interchange_objc/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/material-motion/motion-interchange-objc",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/material-motion/motion-interchange-objc/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chrome.try:ios-internal-mdc"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/motion-transitioning-objc-chromium.json b/autoroll/config/motion-transitioning-objc-chromium.json
index 5f12054..e1c5b35 100644
--- a/autoroll/config/motion-transitioning-objc-chromium.json
+++ b/autoroll/config/motion-transitioning-objc-chromium.json
@@ -1,7 +1,17 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "motion-transitioning-objc",
+ "childDisplayName": "motion-transitioning-objc",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/material-motion/motion-transitioning-objc/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chrome.try:ios-internal-mdc"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"jbudorick@chromium.org"
],
@@ -13,7 +23,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "motion-transitioning-objc-chromium",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,14 +35,9 @@
"childPath": "src/ios/third_party/motion_transitioning_objc/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/material-motion/motion-transitioning-objc",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/material-motion/motion-transitioning-objc/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chrome.try:ios-internal-mdc"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/nacl-chromium.json b/autoroll/config/nacl-chromium.json
index bbca0a6..6e75f41 100644
--- a/autoroll/config/nacl-chromium.json
+++ b/autoroll/config/nacl-chromium.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "NaCl",
+ "childDisplayName": "NaCl",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://chromium.googlesource.com/native_client/src/native_client.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"mseaborn@google.com"
],
@@ -13,7 +21,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "nacl-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,9 +33,6 @@
"childPath": "src/native_client",
"childRepo": "https://chromium.googlesource.com/native_client/src/native_client.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/native_client/src/native_client.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
diff --git a/autoroll/config/openscreen-chromium.json b/autoroll/config/openscreen-chromium.json
index e7303a4..09bbee2 100644
--- a/autoroll/config/openscreen-chromium.json
+++ b/autoroll/config/openscreen-chromium.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Open Screen",
+ "childDisplayName": "Open Screen",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://chromium.googlesource.com/openscreen.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"jophba@chromium.org"
],
@@ -13,7 +21,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "openscreen-chromium",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,13 +33,9 @@
"childPath": "src/third_party/openscreen/src",
"childRepo": "https://chromium.googlesource.com/openscreen.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/openscreen.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/pdfium-chromium.json b/autoroll/config/pdfium-chromium.json
index 36c6b40..b03a22e 100644
--- a/autoroll/config/pdfium-chromium.json
+++ b/autoroll/config/pdfium-chromium.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "PDFium",
+ "childDisplayName": "PDFium",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://pdfium.googlesource.com/pdfium.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"thestig@chromium.org"
],
@@ -13,7 +21,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "pdfium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,9 +33,6 @@
"childPath": "src/third_party/pdfium",
"childRepo": "https://pdfium.googlesource.com/pdfium.git",
"childRevLinkTmpl": "https://pdfium.googlesource.com/pdfium.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
diff --git a/autoroll/config/perfetto-chromium.json b/autoroll/config/perfetto-chromium.json
index 01c0aa8..702eb8b 100644
--- a/autoroll/config/perfetto-chromium.json
+++ b/autoroll/config/perfetto-chromium.json
@@ -1,7 +1,18 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Perfetto",
+ "childDisplayName": "Perfetto",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://android.googlesource.com/platform/external/perfetto.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chromium.try:linux-perfetto-rel"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"primiano@chromium.org"
],
@@ -13,7 +24,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "perfetto-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,15 +36,9 @@
"childPath": "src/third_party/perfetto",
"childRepo": "https://android.googlesource.com/platform/external/perfetto.git",
"childRevLinkTmpl": "https://android.googlesource.com/platform/external/perfetto.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chromium.try:linux-perfetto-rel"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/shaderc-chromium.json b/autoroll/config/shaderc-chromium.json
index cb83226..45f7526 100644
--- a/autoroll/config/shaderc-chromium.json
+++ b/autoroll/config/shaderc-chromium.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "shaderc",
+ "childDisplayName": "shaderc",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/google/shaderc/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"dsinclair@chromium.org",
"rharrison@chromium.org",
@@ -15,7 +22,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "shaderc-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -27,8 +34,6 @@
"childPath": "src/third_party/shaderc/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/google/shaderc",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/google/shaderc/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
diff --git a/autoroll/config/skcms-skia.json b/autoroll/config/skcms-skia.json
index 7102b33..4628ab2 100644
--- a/autoroll/config/skcms-skia.json
+++ b/autoroll/config/skcms-skia.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "skcms",
+ "childDisplayName": "skcms",
+ "commitMsg": {
+ "childLogURLTmpl": "https://skia.googlesource.com/skcms.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"brianosman@google.com",
"mtklein@google.com"
@@ -14,7 +21,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Skia",
+ "parentDisplayName": "Skia",
"parentWaterfall": "https://status.skia.org",
"rollerName": "skcms-skia-autoroll",
"serviceAccount": "skia-autoroll@skia-public.iam.gserviceaccount.com",
@@ -26,7 +33,6 @@
"copyRepoManager": {
"childBranch": "master",
"childPath": "skia/third_party/skcms",
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://skia.googlesource.com/skia.git",
"childRepo": "https://skia.googlesource.com/skcms.git",
diff --git a/autoroll/config/skia-chromium.json b/autoroll/config/skia-chromium.json
index 233240c..2b5a759 100644
--- a/autoroll/config/skia-chromium.json
+++ b/autoroll/config/skia-chromium.json
@@ -1,7 +1,23 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Skia",
+ "childDisplayName": "Skia",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://skia.googlesource.com/skia.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chromium.try:android_optional_gpu_tests_rel",
+ "luci.chromium.try:linux-blink-rel",
+ "luci.chromium.try:linux-chromeos-compile-dbg",
+ "luci.chromium.try:linux_optional_gpu_tests_rel",
+ "luci.chromium.try:mac_optional_gpu_tests_rel",
+ "luci.chromium.try:win_optional_gpu_tests_rel"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"borenet@google.com"
],
@@ -13,7 +29,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "skia-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -26,20 +42,9 @@
"childPath": "src/third_party/skia",
"childRepo": "https://skia.googlesource.com/skia.git",
"childRevLinkTmpl": "https://skia.googlesource.com/skia.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chromium.try:android_optional_gpu_tests_rel",
- "luci.chromium.try:linux-blink-rel",
- "luci.chromium.try:linux-chromeos-compile-dbg",
- "luci.chromium.try:linux_optional_gpu_tests_rel",
- "luci.chromium.try:mac_optional_gpu_tests_rel",
- "luci.chromium.try:win_optional_gpu_tests_rel"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/skia-flutter.json b/autoroll/config/skia-flutter.json
index 50b216a..0be42b8 100644
--- a/autoroll/config/skia-flutter.json
+++ b/autoroll/config/skia-flutter.json
@@ -1,12 +1,19 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#13
// for documentation of the autoroller config.
{
- "childName": "Skia",
+ "childDisplayName": "Skia",
+ "commitMsg": {
+ "childLogURLTmpl": "https://skia.googlesource.com/skia.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": false,
+ "includeTests": false
+ },
"contacts": ["brianosman@google.com", "rmistry@google.com"],
"isInternal": false,
"ownerPrimary": "rmistry",
"ownerSecondary": "borenet",
- "parentName": "Flutter",
+ "parentDisplayName": "Flutter",
"parentWaterfall": "https://ci.chromium.org/p/flutter/g/engine/console",
"rollerName": "skia-flutter-autoroll",
"serviceAccount": "flutter-engine-autoroll@skia-public.iam.gserviceaccount.com",
@@ -24,7 +31,6 @@
"forkRepoURL": "git@github.com:skia-flutter-autoroll/engine.git",
"gclientSpec": "solutions=[{\"name\":\"src/flutter\",\"url\":\"git@github.com:flutter/engine.git\",\"deps_file\":\"DEPS\",\"managed\":False,\"custom_deps\":{},\"safesync_url\":\"\"}]",
"githubParentPath": "src/flutter",
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "git@github.com:flutter/engine.git",
"preUploadSteps": ["FlutterLicenseScripts"],
diff --git a/autoroll/config/skia-lottie-ci.json b/autoroll/config/skia-lottie-ci.json
index 41a5764..ec2bb64 100644
--- a/autoroll/config/skia-lottie-ci.json
+++ b/autoroll/config/skia-lottie-ci.json
@@ -1,7 +1,17 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Skia",
+ "childDisplayName": "Skia",
+ "commitMsg": {
+ "childLogURLTmpl": "https://skia.googlesource.com/skia.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "skia/skia.primary:Housekeeper-PerCommit-InfraTests"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"borenet@google.com"
],
@@ -13,7 +23,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Lottie CI",
+ "parentDisplayName": "Lottie CI",
"parentWaterfall": "https://status.skia.org/repo/lottie-ci",
"rollerName": "skia-lottie-ci-autoroll",
"serviceAccount": "skia-autoroll@skia-public.iam.gserviceaccount.com",
@@ -31,12 +41,7 @@
"TrainInfra"
],
"parentRepo": "https://skia.googlesource.com/lottie-ci.git",
- "includeBugs": false,
- "includeLog": true
},
- "cqExtraTrybots": [
- "skia/skia.primary:Housekeeper-PerCommit-InfraTests"
- ],
"kubernetes": {
"cpu": "1",
"memory": "8Gi",
diff --git a/autoroll/config/skia-skiabot-test.json b/autoroll/config/skia-skiabot-test.json
index 0cff96f..f83dd05 100644
--- a/autoroll/config/skia-skiabot-test.json
+++ b/autoroll/config/skia-skiabot-test.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Skia",
+ "childDisplayName": "Skia",
+ "commitMsg": {
+ "childLogURLTmpl": "https://skia.googlesource.com/skia.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": true
+ },
"contacts": [
"borenet@google.com"
],
@@ -13,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Skiabot Test",
+ "parentDisplayName": "Skiabot Test",
"parentWaterfall": "https://status-staging.skia.org/repo/skiabot-test",
"rollerName": "skia-skiabot-test-autoroll",
"serviceAccount": "skia-autoroll@skia-public.iam.gserviceaccount.com",
@@ -26,8 +33,6 @@
"childPath": "skia",
"childRepo": "https://skia.googlesource.com/skia.git",
"childRevLinkTmpl": "https://skia.googlesource.com/skia.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://skia.googlesource.com/skiabot-test.git"
},
diff --git a/autoroll/config/spirv-tools-angle.json b/autoroll/config/spirv-tools-angle.json
index 01ed6d2..0159a8e 100644
--- a/autoroll/config/spirv-tools-angle.json
+++ b/autoroll/config/spirv-tools-angle.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "SPIRV-Tools",
+ "childDisplayName": "SPIRV-Tools",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": false,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"geofflang@chromium.org",
"jmadill@chromium.org",
@@ -16,7 +23,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "ANGLE",
+ "parentDisplayName": "ANGLE",
"parentWaterfall": "https://ci.chromium.org/p/angle/g/ci/console",
"rollerName": "spirv-tools-angle-autoroll",
"serviceAccount": "angle-autoroll@skia-public.iam.gserviceaccount.com",
@@ -32,22 +39,8 @@
"childPath": "third_party/spirv-tools/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+show/%s",
- "includeBugs": false,
- "includeLog": false,
"parentBranch": "master",
- "parentRepo": "https://chromium.googlesource.com/angle/angle.git",
- "transitiveDeps": [
- {
- "child": {
- "id": "https://github.com/KhronosGroup/SPIRV-Headers",
- "path": "DEPS"
- },
- "parent": {
- "id": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers",
- "path": "DEPS"
- }
- }
- ]
+ "parentRepo": "https://chromium.googlesource.com/angle/angle.git"
},
"kubernetes": {
"cpu": "1",
@@ -57,5 +50,17 @@
"readinessFailureThreshold": "10"
},
"maxRollFrequency": "6h",
- "timeWindow": "M-F 07:00-10:00"
+ "timeWindow": "M-F 07:00-10:00",
+ "transitiveDeps": [
+ {
+ "child": {
+ "id": "https://github.com/KhronosGroup/SPIRV-Headers",
+ "path": "DEPS"
+ },
+ "parent": {
+ "id": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers",
+ "path": "DEPS"
+ }
+ }
+ ]
}
diff --git a/autoroll/config/spirv-tools-chromium.json b/autoroll/config/spirv-tools-chromium.json
index 65cffac..30302ff 100644
--- a/autoroll/config/spirv-tools-chromium.json
+++ b/autoroll/config/spirv-tools-chromium.json
@@ -1,7 +1,26 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "SPIRV-Tools",
+ "childDisplayName": "SPIRV-Tools",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chromium.try:android_angle_vk32_deqp_rel_ng",
+ "luci.chromium.try:android_angle_vk32_rel_ng",
+ "luci.chromium.try:android_angle_vk64_deqp_rel_ng",
+ "luci.chromium.try:android_angle_vk64_rel_ng",
+ "luci.chromium.try:linux_angle_deqp_rel_ng",
+ "luci.chromium.try:linux-angle-rel",
+ "luci.chromium.try:win-angle-rel-32",
+ "luci.chromium.try:win-angle-rel-64",
+ "luci.chromium.try:win-angle-deqp-rel-32",
+ "luci.chromium.try:win-angle-deqp-rel-64"
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"dsinclair@chromium.org",
"geofflang@chromium.org",
@@ -17,7 +36,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "spirv-tools-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -31,35 +50,9 @@
"childPath": "src/third_party/SPIRV-Tools/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
- "parentRepo": "https://chromium.googlesource.com/chromium/src.git",
- "transitiveDeps": [
- {
- "child": {
- "id": "https://github.com/KhronosGroup/SPIRV-Headers",
- "path": "DEPS"
- },
- "parent": {
- "id": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers",
- "path": "DEPS"
- }
- }
- ]
+ "parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chromium.try:android_angle_vk32_deqp_rel_ng",
- "luci.chromium.try:android_angle_vk32_rel_ng",
- "luci.chromium.try:android_angle_vk64_deqp_rel_ng",
- "luci.chromium.try:android_angle_vk64_rel_ng",
- "luci.chromium.try:linux_angle_deqp_rel_ng",
- "luci.chromium.try:linux-angle-rel",
- "luci.chromium.try:win-angle-rel-32",
- "luci.chromium.try:win-angle-rel-64",
- "luci.chromium.try:win-angle-deqp-rel-32",
- "luci.chromium.try:win-angle-deqp-rel-64"
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
@@ -68,5 +61,17 @@
"readinessFailureThreshold": "10"
},
"maxRollFrequency": "6h",
- "timeWindow": "M-F 08:00-09:00"
+ "timeWindow": "M-F 08:00-09:00",
+ "transitiveDeps": [
+ {
+ "child": {
+ "id": "https://github.com/KhronosGroup/SPIRV-Headers",
+ "path": "DEPS"
+ },
+ "parent": {
+ "id": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers",
+ "path": "DEPS"
+ }
+ }
+ ]
}
diff --git a/autoroll/config/swiftshader-angle.json b/autoroll/config/swiftshader-angle.json
index 93a089c..33cb8d4 100644
--- a/autoroll/config/swiftshader-angle.json
+++ b/autoroll/config/swiftshader-angle.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "SwiftShader",
+ "childDisplayName": "SwiftShader",
+ "commitMsg": {
+ "bugProject": "angleproject",
+ "childLogURLTmpl": "https://swiftshader.googlesource.com/SwiftShader.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"geofflang@chromium.org",
"jmadill@chromium.org",
@@ -16,7 +24,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "ANGLE",
+ "parentDisplayName": "ANGLE",
"parentWaterfall": "https://ci.chromium.org/p/angle/g/ci/console",
"rollerName": "swiftshader-angle-autoroll",
"serviceAccount": "angle-autoroll@skia-public.iam.gserviceaccount.com",
@@ -32,9 +40,6 @@
"childPath": "third_party/SwiftShader",
"childRepo": "https://swiftshader.googlesource.com/SwiftShader.git",
"childRevLinkTmpl": "https://swiftshader.googlesource.com/SwiftShader.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "angleproject",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/angle/angle.git"
},
diff --git a/autoroll/config/swiftshader-chromium.json b/autoroll/config/swiftshader-chromium.json
index 4fb6ef1..96fee3b 100644
--- a/autoroll/config/swiftshader-chromium.json
+++ b/autoroll/config/swiftshader-chromium.json
@@ -1,7 +1,24 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "SwiftShader",
+ "childDisplayName": "SwiftShader",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://swiftshader.googlesource.com/SwiftShader.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "cqExtraTrybots": [
+ "luci.chromium.try:android_optional_gpu_tests_rel",
+ "luci.chromium.try:linux_chromium_msan_rel_ng",
+ "luci.chromium.try:linux_optional_gpu_tests_rel",
+ "luci.chromium.try:mac_optional_gpu_tests_rel",
+ "luci.chromium.try:win_optional_gpu_tests_rel",
+ "luci.chromium.try:linux-swangle-try-x64",
+ "luci.chromium.try:win-swangle-try-x86",
+ ],
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"capn@chromium.org"
],
@@ -13,7 +30,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "swiftshader-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -26,21 +43,9 @@
"childPath": "src/third_party/swiftshader",
"childRepo": "https://swiftshader.googlesource.com/SwiftShader.git",
"childRevLinkTmpl": "https://swiftshader.googlesource.com/SwiftShader.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
- "cqExtraTrybots": [
- "luci.chromium.try:android_optional_gpu_tests_rel",
- "luci.chromium.try:linux_chromium_msan_rel_ng",
- "luci.chromium.try:linux_optional_gpu_tests_rel",
- "luci.chromium.try:mac_optional_gpu_tests_rel",
- "luci.chromium.try:win_optional_gpu_tests_rel",
- "luci.chromium.try:linux-swangle-try-x64",
- "luci.chromium.try:win-swangle-try-x86",
- ],
"kubernetes": {
"cpu": "1",
"memory": "2Gi",
diff --git a/autoroll/config/swiftshader-skia.json b/autoroll/config/swiftshader-skia.json
index cf290bb..cd39156 100644
--- a/autoroll/config/swiftshader-skia.json
+++ b/autoroll/config/swiftshader-skia.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "SwiftShader",
+ "childDisplayName": "SwiftShader",
+ "commitMsg": {
+ "bugProject": "skia",
+ "childLogURLTmpl": "https://swiftshader.googlesource.com/SwiftShader.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"bsalomon@google.com"
],
@@ -13,7 +21,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Skia",
+ "parentDisplayName": "Skia",
"parentWaterfall": "https://status.skia.org",
"rollerName": "swiftshader-skia-autoroll",
"serviceAccount": "skia-autoroll@skia-public.iam.gserviceaccount.com",
@@ -26,9 +34,6 @@
"childPath": "third_party/externals/swiftshader",
"childRepo": "https://swiftshader.googlesource.com/SwiftShader.git",
"childRevLinkTmpl": "https://swiftshader.googlesource.com/SwiftShader.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "skia",
"parentBranch": "master",
"parentRepo": "https://skia.googlesource.com/skia.git"
},
diff --git a/autoroll/config/vulkan-headers-angle.json b/autoroll/config/vulkan-headers-angle.json
index 9acf393..2a34f6d 100644
--- a/autoroll/config/vulkan-headers-angle.json
+++ b/autoroll/config/vulkan-headers-angle.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Vulkan-Headers",
+ "childDisplayName": "Vulkan-Headers",
+ "commitMsg": {
+ "bugProject": "angleproject",
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"angle-team@google.com",
"jmadill@chromium.org"
@@ -14,7 +22,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "ANGLE",
+ "parentDisplayName": "ANGLE",
"parentWaterfall": "https://ci.chromium.org/p/angle/g/ci/console",
"rollerName": "vulkan-headers-angle-autoroll",
"serviceAccount": "angle-autoroll@skia-public.iam.gserviceaccount.com",
@@ -31,9 +39,6 @@
"childRepo": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git/+show/%s",
"childSubdir": "angle",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "angleproject",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/angle/angle.git",
"preUploadSteps": [
diff --git a/autoroll/config/vulkan-loader-angle.json b/autoroll/config/vulkan-loader-angle.json
index c9f319d..177fc58 100644
--- a/autoroll/config/vulkan-loader-angle.json
+++ b/autoroll/config/vulkan-loader-angle.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Vulkan-Loader",
+ "childDisplayName": "Vulkan-Loader",
+ "commitMsg": {
+ "bugProject": "angleproject",
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"angle-team@google.com",
"jmadill@chromium.org"
@@ -14,7 +22,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "ANGLE",
+ "parentDisplayName": "ANGLE",
"parentWaterfall": "https://ci.chromium.org/p/angle/g/ci/console",
"rollerName": "vulkan-loader-angle-autoroll",
"serviceAccount": "angle-autoroll@skia-public.iam.gserviceaccount.com",
@@ -30,9 +38,6 @@
"childPath": "third_party/vulkan-loader/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "angleproject",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/angle/angle.git"
},
diff --git a/autoroll/config/vulkan-tools-angle.json b/autoroll/config/vulkan-tools-angle.json
index bed3dc2..afd5b2a 100644
--- a/autoroll/config/vulkan-tools-angle.json
+++ b/autoroll/config/vulkan-tools-angle.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Vulkan-Tools",
+ "childDisplayName": "Vulkan-Tools",
+ "commitMsg": {
+ "bugProject": "angleproject",
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"angle-team@google.com",
"jmadill@chromium.org"
@@ -14,7 +22,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "ANGLE",
+ "parentDisplayName": "ANGLE",
"parentWaterfall": "https://ci.chromium.org/p/angle/g/ci/console",
"rollerName": "vulkan-tools-angle-autoroll",
"serviceAccount": "angle-autoroll@skia-public.iam.gserviceaccount.com",
@@ -30,9 +38,6 @@
"childPath": "third_party/vulkan-tools/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "angleproject",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/angle/angle.git"
},
diff --git a/autoroll/config/vulkan-validation-layers-angle.json b/autoroll/config/vulkan-validation-layers-angle.json
index 57c3143..5c51f8d 100644
--- a/autoroll/config/vulkan-validation-layers-angle.json
+++ b/autoroll/config/vulkan-validation-layers-angle.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "Vulkan-ValidationLayers",
+ "childDisplayName": "Vulkan-ValidationLayers",
+ "commitMsg": {
+ "bugProject": "angleproject",
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"angle-team@google.com",
"jmadill@chromium.org"
@@ -14,7 +22,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "ANGLE",
+ "parentDisplayName": "ANGLE",
"parentWaterfall": "https://ci.chromium.org/p/angle/g/ci/console",
"rollerName": "vulkan-validation-layers-angle-autoroll",
"serviceAccount": "angle-autoroll@skia-public.iam.gserviceaccount.com",
@@ -30,9 +38,6 @@
"childPath": "third_party/vulkan-validation-layers/src",
"childRepo": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "angleproject",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/angle/angle.git"
},
diff --git a/autoroll/config/waterfall-emscripten-releases.json b/autoroll/config/waterfall-emscripten-releases.json
index 0a81f6c..bd3f58c 100644
--- a/autoroll/config/waterfall-emscripten-releases.json
+++ b/autoroll/config/waterfall-emscripten-releases.json
@@ -1,7 +1,14 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "waterfall",
+ "childDisplayName": "waterfall",
+ "commitMsg": {
+ "childLogURLTmpl": "https://chromium.googlesource.com/external/github.com/WebAssembly/waterfall.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"dschuff@google.com"
],
@@ -13,7 +20,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "emscripten-releases",
+ "parentDisplayName": "emscripten-releases",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "waterfall-emscripten-releases",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,8 +32,6 @@
"childPath": "emscripten-releases/waterfall",
"childRepo": "https://chromium.googlesource.com/external/github.com/WebAssembly/waterfall.git",
"childRevLinkTmpl": "https://chromium.googlesource.com/external/github.com/WebAssembly/waterfall.git/+show/%s",
- "includeBugs": false,
- "includeLog": true,
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/emscripten-releases.git"
},
diff --git a/autoroll/config/webrtc-chromium.json b/autoroll/config/webrtc-chromium.json
index e09b1d5..d57e932 100644
--- a/autoroll/config/webrtc-chromium.json
+++ b/autoroll/config/webrtc-chromium.json
@@ -1,7 +1,15 @@
// See https://skia.googlesource.com/buildbot.git/+show/master/autoroll/go/roller/config.go#130
// for documentation of the autoroller config.
{
- "childName": "WebRTC",
+ "childDisplayName": "WebRTC",
+ "commitMsg": {
+ "bugProject": "chromium",
+ "childLogURLTmpl": "https://webrtc.googlesource.com/src.git/+log/{{.RollingFrom}}..{{.RollingTo}}",
+ "includeLog": true,
+ "includeRevisionCount": true,
+ "includeTbrLine": true,
+ "includeTests": false
+ },
"contacts": [
"comms-engprod-sto@google.com"
],
@@ -13,7 +21,7 @@
"isInternal": false,
"ownerPrimary": "borenet",
"ownerSecondary": "rmistry",
- "parentName": "Chromium",
+ "parentDisplayName": "Chromium",
"parentWaterfall": "https://build.chromium.org",
"rollerName": "webrtc-chromium-autoroll",
"serviceAccount": "chromium-autoroll@skia-public.iam.gserviceaccount.com",
@@ -25,9 +33,6 @@
"childPath": "src/third_party/webrtc",
"childRepo": "https://webrtc.googlesource.com/src.git",
"childRevLinkTmpl": "https://webrtc.googlesource.com/src.git/+show/%s",
- "includeBugs": true,
- "includeLog": true,
- "bugProject": "chromium",
"parentBranch": "master",
"parentRepo": "https://chromium.googlesource.com/chromium/src.git"
},
diff --git a/autoroll/go/autoroll-be/main.go b/autoroll/go/autoroll-be/main.go
index a812603..b1f6346 100644
--- a/autoroll/go/autoroll-be/main.go
+++ b/autoroll/go/autoroll-be/main.go
@@ -10,7 +10,6 @@
"io/ioutil"
"os"
"os/user"
- "path"
"path/filepath"
"strings"
"time"
@@ -127,7 +126,7 @@
sklog.Fatal(err)
}
- chatbot.Init(fmt.Sprintf("%s -> %s AutoRoller", cfg.ChildName, cfg.ParentName))
+ chatbot.Init(fmt.Sprintf("%s -> %s AutoRoller", cfg.ChildDisplayName, cfg.ParentDisplayName))
user, err := user.Current()
if err != nil {
@@ -156,15 +155,15 @@
gcsClient = gcsclient.New(s, GS_BUCKET_AUTOROLLERS)
// Emailing init.
- emailClientId, err := ioutil.ReadFile(path.Join(*emailCreds, metadata.GMAIL_CLIENT_ID))
+ emailClientId, err := ioutil.ReadFile(filepath.Join(*emailCreds, metadata.GMAIL_CLIENT_ID))
if err != nil {
sklog.Fatal(err)
}
- emailClientSecret, err := ioutil.ReadFile(path.Join(*emailCreds, metadata.GMAIL_CLIENT_SECRET))
+ emailClientSecret, err := ioutil.ReadFile(filepath.Join(*emailCreds, metadata.GMAIL_CLIENT_SECRET))
if err != nil {
sklog.Fatal(err)
}
- cachedGMailToken, err := ioutil.ReadFile(path.Join(*emailCreds, metadata.GMAIL_CACHED_TOKEN_AUTOROLL))
+ cachedGMailToken, err := ioutil.ReadFile(filepath.Join(*emailCreds, metadata.GMAIL_CACHED_TOKEN_AUTOROLL))
if err != nil {
sklog.Fatal(err)
}
@@ -219,9 +218,9 @@
sklog.Fatalf("Failed to create Gerrit client: %s", err)
}
} else if cfg.Github != nil {
- pathToGithubToken := path.Join(user.HomeDir, github.GITHUB_TOKEN_FILENAME)
+ pathToGithubToken := filepath.Join(user.HomeDir, github.GITHUB_TOKEN_FILENAME)
if !*local {
- pathToGithubToken = path.Join(github.GITHUB_TOKEN_SERVER_PATH, github.GITHUB_TOKEN_FILENAME)
+ pathToGithubToken = filepath.Join(github.GITHUB_TOKEN_SERVER_PATH, github.GITHUB_TOKEN_FILENAME)
// Setup the required SSH key from secrets if we are not running
// locally and if the file does not already exist.
sshKeySrc := filepath.Join(github.SSH_KEY_SERVER_PATH, github.SSH_KEY_FILENAME)
diff --git a/autoroll/go/autoroll-fe/main.go b/autoroll/go/autoroll-fe/main.go
index bbbcc21..109a93d 100644
--- a/autoroll/go/autoroll-fe/main.go
+++ b/autoroll/go/autoroll-fe/main.go
@@ -282,8 +282,8 @@
ChildName string
ParentName string
}{
- ChildName: roller.Cfg.ChildName,
- ParentName: roller.Cfg.ParentName,
+ ChildName: roller.Cfg.ChildDisplayName,
+ ParentName: roller.Cfg.ParentDisplayName,
}
if err := rollerTemplate.Execute(w, page); err != nil {
httputils.ReportError(w, err, "Failed to expand template.", http.StatusInternalServerError)
@@ -302,9 +302,9 @@
}
statuses[name] = &autoRollMiniStatus{
AutoRollMiniStatus: status,
- ChildName: roller.Cfg.ChildName,
+ ChildName: roller.Cfg.ChildDisplayName,
Mode: modeStr,
- ParentName: roller.Cfg.ParentName,
+ ParentName: roller.Cfg.ParentDisplayName,
}
}
if err := json.NewEncoder(w).Encode(statuses); err != nil {
diff --git a/autoroll/go/autoroll-google3/google3.go b/autoroll/go/autoroll-google3/google3.go
index 5f8b450..ec66e52 100644
--- a/autoroll/go/autoroll-google3/google3.go
+++ b/autoroll/go/autoroll-google3/google3.go
@@ -151,13 +151,13 @@
NumFailedRolls: numFailures,
NumNotRolledCommits: commitsNotRolled,
},
- ChildName: a.cfg.ChildName,
+ ChildName: a.cfg.ChildDisplayName,
CurrentRoll: a.recent.CurrentRoll(),
Error: errorMsg,
FullHistoryUrl: "https://goto.google.com/skia-autoroll-history",
IssueUrlBase: ISSUE_URL_BASE,
LastRoll: lastRoll,
- ParentName: a.cfg.ParentName,
+ ParentName: a.cfg.ParentDisplayName,
Recent: recent,
Status: state_machine.S_NORMAL_ACTIVE,
ValidModes: []string{modes.MODE_RUNNING},
diff --git a/autoroll/go/autoroll-google3/google3_test.go b/autoroll/go/autoroll-google3/google3_test.go
index 44e40ec..9e0e84e 100644
--- a/autoroll/go/autoroll-google3/google3_test.go
+++ b/autoroll/go/autoroll-google3/google3_test.go
@@ -30,13 +30,13 @@
urlmock := mockhttpclient.NewURLMock()
mockChild := gitiles_testutils.NewMockRepo(t, gb.RepoUrl(), git.GitDir(gb.Dir()), urlmock)
a, err := NewAutoRoller(ctx, &roller.AutoRollerConfig{
- ChildName: "test-child",
+ ChildDisplayName: "test-child",
Google3RepoManager: &roller.Google3FakeRepoManagerConfig{
ChildBranch: "master",
ChildRepo: gb.RepoUrl(),
},
- ParentName: "test-parent",
- RollerName: "test-roller",
+ ParentDisplayName: "test-parent",
+ RollerName: "test-roller",
}, urlmock.Client())
require.NoError(t, err)
a.Start(ctx, time.Second, time.Second)
diff --git a/autoroll/go/autoroll-pusher/main.go b/autoroll/go/autoroll-pusher/main.go
index 015a110..cedebdc 100644
--- a/autoroll/go/autoroll-pusher/main.go
+++ b/autoroll/go/autoroll-pusher/main.go
@@ -323,7 +323,7 @@
tmplBe := "./go/autoroll-be/autoroll-be.yaml.template"
for cfgFile, config := range configs {
// Google3 uses a different type of backend.
- if config.ParentName == GOOGLE3_PARENT_NAME {
+ if config.ParentDisplayName == GOOGLE3_PARENT_NAME {
continue
}
dst := filepath.Join(clusterCfgDir, fmt.Sprintf("autoroll-be-%s.yaml", strings.Split(cfgFile, ".")[0]))
diff --git a/autoroll/go/codereview/roll_test.go b/autoroll/go/codereview/roll_test.go
index 4e92f91..5c622f4 100644
--- a/autoroll/go/codereview/roll_test.go
+++ b/autoroll/go/codereview/roll_test.go
@@ -47,7 +47,7 @@
ChangeId: fmt.Sprintf("%d", issueNum),
Issue: issueNum,
Labels: map[string]*gerrit.LabelEntry{},
- Owner: &gerrit.Owner{
+ Owner: &gerrit.Person{
Email: "fake-deps-roller@chromium.org",
},
Project: "skia",
@@ -403,7 +403,7 @@
ChangeId: fmt.Sprintf("%d", a.Issue),
Issue: a.Issue,
Labels: map[string]*gerrit.LabelEntry{},
- Owner: &gerrit.Owner{
+ Owner: &gerrit.Person{
Email: "fake@chromium.org",
},
Project: "skia",
diff --git a/autoroll/go/commit_msg/android.go b/autoroll/go/commit_msg/android.go
new file mode 100644
index 0000000..9eedbf1
--- /dev/null
+++ b/autoroll/go/commit_msg/android.go
@@ -0,0 +1,27 @@
+package commit_msg
+
+import "text/template"
+
+const (
+ // TmplNameAndroid is the name of the commit message template used by
+ // rollers which roll into Android.
+ TmplNameAndroid = "android"
+)
+
+var (
+ // TmplAndroid is the commit message template used by rollers which roll
+ // into Android. It can be referenced in config files using tmplNameAndroid.
+ tmplAndroid = template.Must(parseCommitMsgTemplate(tmplCommitMsg, TmplNameAndroid,
+ `{{- define "footer" -}}
+Test: Presubmit checks will test this change.
+Exempt-From-Owner-Approval: The autoroll bot does not require owner approval.
+{{ if .BugProject -}}
+{{ range .Bugs }}Bug: {{ . }}
+{{ end }}
+{{- end -}}
+{{- if .IncludeTests -}}
+{{ range .Tests }}Test: {{ . }}
+{{- end}}
+{{- end -}}
+{{- end -}}`))
+)
diff --git a/autoroll/go/commit_msg/android_test.go b/autoroll/go/commit_msg/android_test.go
new file mode 100644
index 0000000..242ae14
--- /dev/null
+++ b/autoroll/go/commit_msg/android_test.go
@@ -0,0 +1,151 @@
+package commit_msg
+
+import (
+ "testing"
+
+ "github.com/stretchr/testify/require"
+ "go.skia.org/infra/go/testutils/unittest"
+)
+
+func TestNamedTemplateAndroid_AllFeatures(t *testing.T) {
+ unittest.SmallTest(t)
+
+ b := fakeBuilder(t)
+ b.cfg.Template = TmplNameAndroid
+ result, err := b.Build(FakeCommitMsgInputs())
+ require.NoError(t, err)
+ require.Equal(t, `Roll fake/child/src from aaaaaaaaaaaa to cccccccccccc (2 revisions)
+
+https://fake-child-log/aaaaaaaaaaaa..cccccccccccc
+
+2020-04-17 c@google.com Commit C
+2020-04-16 b@google.com Commit B
+
+Also rolling transitive DEPS:
+ parent/dep1 from dddddddddddd to eeeeeeeeeeee
+ parent/dep3 from aaaaaaaaaaaa to cccccccccccc
+
+If this roll has caused a breakage, revert this CL and stop the roller
+using the controls here:
+https://fake.server.com/r/fake-autoroll
+Please CC reviewer@google.com on the revert to ensure that a human
+is aware of the problem.
+
+To report a problem with the AutoRoller itself, please file a bug:
+https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
+
+Documentation for the AutoRoller is here:
+https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
+
+Test: Presubmit checks will test this change.
+Exempt-From-Owner-Approval: The autoroll bot does not require owner approval.
+Bug: fakebugproject:1234
+Bug: fakebugproject:5678
+Test: some-test
+`, result)
+}
+
+func TestNamedTemplateAndroid_NoLog(t *testing.T) {
+ unittest.SmallTest(t)
+
+ b := fakeBuilder(t)
+ b.cfg.Template = TmplNameAndroid
+ b.cfg.IncludeLog = false
+ result, err := b.Build(FakeCommitMsgInputs())
+ require.NoError(t, err)
+ require.Equal(t, `Roll fake/child/src from aaaaaaaaaaaa to cccccccccccc (2 revisions)
+
+https://fake-child-log/aaaaaaaaaaaa..cccccccccccc
+
+Also rolling transitive DEPS:
+ parent/dep1 from dddddddddddd to eeeeeeeeeeee
+ parent/dep3 from aaaaaaaaaaaa to cccccccccccc
+
+If this roll has caused a breakage, revert this CL and stop the roller
+using the controls here:
+https://fake.server.com/r/fake-autoroll
+Please CC reviewer@google.com on the revert to ensure that a human
+is aware of the problem.
+
+To report a problem with the AutoRoller itself, please file a bug:
+https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
+
+Documentation for the AutoRoller is here:
+https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
+
+Test: Presubmit checks will test this change.
+Exempt-From-Owner-Approval: The autoroll bot does not require owner approval.
+Bug: fakebugproject:1234
+Bug: fakebugproject:5678
+Test: some-test
+`, result)
+}
+
+func TestNamedTemplateAndroid_NoBugs(t *testing.T) {
+ unittest.SmallTest(t)
+
+ b := fakeBuilder(t)
+ b.cfg.BugProject = ""
+ b.cfg.Template = TmplNameAndroid
+ result, err := b.Build(FakeCommitMsgInputs())
+ require.NoError(t, err)
+ require.Equal(t, `Roll fake/child/src from aaaaaaaaaaaa to cccccccccccc (2 revisions)
+
+https://fake-child-log/aaaaaaaaaaaa..cccccccccccc
+
+2020-04-17 c@google.com Commit C
+2020-04-16 b@google.com Commit B
+
+Also rolling transitive DEPS:
+ parent/dep1 from dddddddddddd to eeeeeeeeeeee
+ parent/dep3 from aaaaaaaaaaaa to cccccccccccc
+
+If this roll has caused a breakage, revert this CL and stop the roller
+using the controls here:
+https://fake.server.com/r/fake-autoroll
+Please CC reviewer@google.com on the revert to ensure that a human
+is aware of the problem.
+
+To report a problem with the AutoRoller itself, please file a bug:
+https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
+
+Documentation for the AutoRoller is here:
+https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
+
+Test: Presubmit checks will test this change.
+Exempt-From-Owner-Approval: The autoroll bot does not require owner approval.
+Test: some-test
+`, result)
+}
+
+func TestNamedTemplateAndroid_Minimal(t *testing.T) {
+ unittest.SmallTest(t)
+
+ b := fakeBuilder(t)
+ b.cfg.BugProject = ""
+ b.cfg.Template = TmplNameAndroid
+ b.cfg.ChildLogURLTmpl = ""
+ b.cfg.CqExtraTrybots = nil
+ b.cfg.IncludeLog = false
+ b.cfg.IncludeTests = false
+ b.transitiveDeps = nil
+ result, err := b.Build(FakeCommitMsgInputs())
+ require.NoError(t, err)
+ require.Equal(t, `Roll fake/child/src from aaaaaaaaaaaa to cccccccccccc (2 revisions)
+
+If this roll has caused a breakage, revert this CL and stop the roller
+using the controls here:
+https://fake.server.com/r/fake-autoroll
+Please CC reviewer@google.com on the revert to ensure that a human
+is aware of the problem.
+
+To report a problem with the AutoRoller itself, please file a bug:
+https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
+
+Documentation for the AutoRoller is here:
+https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
+
+Test: Presubmit checks will test this change.
+Exempt-From-Owner-Approval: The autoroll bot does not require owner approval.
+`, result)
+}
diff --git a/autoroll/go/commit_msg/cmd/mock-commit-msg/main.go b/autoroll/go/commit_msg/cmd/mock-commit-msg/main.go
new file mode 100644
index 0000000..4da5625
--- /dev/null
+++ b/autoroll/go/commit_msg/cmd/mock-commit-msg/main.go
@@ -0,0 +1,61 @@
+package main
+
+import (
+ "flag"
+ "fmt"
+ "io"
+ "log"
+
+ "github.com/flynn/json5"
+ "go.skia.org/infra/autoroll/go/commit_msg"
+ "go.skia.org/infra/autoroll/go/roller"
+ "go.skia.org/infra/go/common"
+ "go.skia.org/infra/go/util"
+)
+
+var (
+ configFile = flag.String("config", "", "Config file to parse. Required.")
+ serverURL = flag.String("server_url", "", "Server URL. Optional.")
+)
+
+func main() {
+ common.Init()
+
+ // Validation.
+ if *configFile == "" {
+ log.Fatal("--config is required.")
+ }
+
+ // Read the roller config file.
+ var cfg roller.AutoRollerConfig
+ if err := util.WithReadFile(*configFile, func(r io.Reader) error {
+ return json5.NewDecoder(r).Decode(&cfg)
+ }); err != nil {
+ log.Fatalf("Failed to read %s: %s", *configFile, err)
+ }
+
+ // Fake the serverURL based on the roller name.
+ if *serverURL == "" {
+ *serverURL = fmt.Sprintf("https://autoroll.skia.org/r/%s", cfg.RollerName)
+ }
+
+ // Obtain fake data to use for the commit message.
+ from, to, revs, _ := commit_msg.FakeCommitMsgInputs()
+ reviewers, err := roller.GetSheriff(cfg.RollerName, cfg.Sheriff, cfg.SheriffBackup)
+ if err != nil {
+ log.Fatalf("Failed to retrieve sheriff: %s", err)
+ }
+
+ // Create the commit message builder.
+ b, err := commit_msg.NewBuilder(cfg.CommitMsgConfig, cfg.ChildDisplayName, *serverURL, cfg.TransitiveDeps)
+ if err != nil {
+ log.Fatalf("Failed to create commit message builder: %s", err)
+ }
+
+ // Build the commit message.
+ genCommitMsg, err := b.Build(from, to, revs, reviewers)
+ if err != nil {
+ log.Fatalf("Failed to build commit message: %s", err)
+ }
+ fmt.Println(genCommitMsg)
+}
diff --git a/autoroll/go/commit_msg/commit_msg.go b/autoroll/go/commit_msg/commit_msg.go
new file mode 100644
index 0000000..09dcd52
--- /dev/null
+++ b/autoroll/go/commit_msg/commit_msg.go
@@ -0,0 +1,378 @@
+package commit_msg
+
+import (
+ "bytes"
+ "fmt"
+ "regexp"
+ "sort"
+ "strings"
+ "text/template"
+ "time"
+
+ "go.skia.org/infra/autoroll/go/repo_manager/common/version_file_common"
+ "go.skia.org/infra/autoroll/go/revision"
+ "go.skia.org/infra/go/skerr"
+ "go.skia.org/infra/go/util"
+)
+
+var (
+ // namedCommitMsgTemplates contains pre-defined commit message templates
+ // which may be referenced by name in config files.
+ namedCommitMsgTemplates = map[string]*template.Template{
+ TmplNameAndroid: tmplAndroid,
+ TmplNameDefault: tmplCommitMsg,
+ }
+
+ limitEmptyLinesRegex = regexp.MustCompile(`\n\n\n+`)
+ newlineAtEndRegex = regexp.MustCompile(`\n*$`)
+)
+
+// transitiveDepUpdate represents an update to one transitive dependency.
+type transitiveDepUpdate struct {
+ Dep string
+ RollingFrom string
+ RollingTo string
+}
+
+// CommitMsgConfig provides configuration for commit messages.
+type CommitMsgConfig struct {
+ BugProject string `json:"bugProject"`
+ ChildLogURLTmpl string `json:"childLogURLTmpl"`
+ CqExtraTrybots []string `json:"cqExtraTrybots"`
+ IncludeLog bool `json:"includeLog"`
+ IncludeRevisionCount bool `json:"includeRevisionCount"`
+ IncludeTbrLine bool `json:"includeTbrLine"`
+ IncludeTests bool `json:"includeTests"`
+ // Template is either a full commit message template string or the name of
+ // an entry in NamedCommitMsgTemplates. If not specified, the default
+ // template is used.
+ Template string `json:"template"`
+}
+
+// See documentation for util.Validator interface.
+func (c *CommitMsgConfig) Validate() error {
+ // We are not concerned with the presence or absence of any given field,
+ // since some rollers may not need all of the fields. If we are able to
+ // execute the template given a typical set of inputs, we consider the
+ // CommitMsgConfig to be valid.
+ from, to, revs, reviewers := FakeCommitMsgInputs()
+ _, err := buildCommitMsg(c, fakeChildName, fakeServerURL, fakeTransitiveDeps, from, to, revs, reviewers)
+ return skerr.Wrap(err)
+}
+
+// Builder is a helper used to build commit messages.
+type Builder struct {
+ cfg *CommitMsgConfig
+ childName string
+ serverURL string
+ transitiveDeps version_file_common.TransitiveDepConfigs
+}
+
+// NewBuilder returns a Builder instance.
+func NewBuilder(c *CommitMsgConfig, childName, serverURL string, transitiveDeps version_file_common.TransitiveDepConfigs) (*Builder, error) {
+ if err := c.Validate(); err != nil {
+ return nil, skerr.Wrap(err)
+ }
+ if childName == "" {
+ return nil, skerr.Fmt("childName is required")
+ }
+ if serverURL == "" {
+ return nil, skerr.Fmt("serverURL is required")
+ }
+ if err := transitiveDeps.Validate(); err != nil {
+ return nil, skerr.Wrap(err)
+ }
+ return &Builder{
+ cfg: c,
+ childName: childName,
+ serverURL: serverURL,
+ transitiveDeps: transitiveDeps,
+ }, nil
+}
+
+// Build a commit message for the given roll.
+func (b *Builder) Build(from, to *revision.Revision, rolling []*revision.Revision, reviewers []string) (string, error) {
+ return buildCommitMsg(b.cfg, b.childName, b.serverURL, b.transitiveDeps, from, to, rolling, reviewers)
+}
+
+// buildCommitMsg builds a commit message for the given roll.
+func buildCommitMsg(c *CommitMsgConfig, childName, serverURL string, transitiveDeps []*version_file_common.TransitiveDepConfig, from, to *revision.Revision, rolling []*revision.Revision, reviewers []string) (string, error) {
+ vars, err := makeVars(c, childName, serverURL, transitiveDeps, from, to, rolling, reviewers)
+ if err != nil {
+ return "", skerr.Wrap(err)
+ }
+ // Create the commit message.
+ commitMsgTmpl := tmplCommitMsg
+ if vars.Template != "" {
+ if builtin, ok := namedCommitMsgTemplates[vars.Template]; ok {
+ commitMsgTmpl = builtin
+ } else {
+ commitMsgTmpl, err = parseCommitMsgTemplate(tmplCommitMsg, "customCommitMsg", vars.Template)
+ if err != nil {
+ return "", skerr.Wrap(err)
+ }
+ }
+ }
+ var buf bytes.Buffer
+ if err := commitMsgTmpl.ExecuteTemplate(&buf, tmplNameCommitMsg, vars); err != nil {
+ return "", skerr.Wrap(err)
+ }
+
+ // Templates make whitespace tricky when they involve optional sections. To
+ // ensure that the message looks reasonable, limit to two newlines in a row
+ // (ie. at most one empty line), and ensure that the message ends in exactly
+ // one newline.
+ msg := limitEmptyLinesRegex.ReplaceAllString(buf.String(), "\n\n")
+ msg = newlineAtEndRegex.ReplaceAllString(msg, "\n")
+ return msg, nil
+}
+
+func fixupRevision(rev *revision.Revision) *revision.Revision {
+ cpy := rev.Copy()
+ cpy.Timestamp = cpy.Timestamp.UTC()
+ return cpy
+}
+
+// makeVars derives commitMsgVars from the CommitMsgConfig for the given roll.
+func makeVars(c *CommitMsgConfig, childName, serverURL string, transitiveDeps []*version_file_common.TransitiveDepConfig, from, to *revision.Revision, revisions []*revision.Revision, reviewers []string) (*commitMsgVars, error) {
+ // Create the commitMsgVars object to be used as input to the template.
+ revsCopy := make([]*revision.Revision, 0, len(revisions))
+ for _, rev := range revisions {
+ revsCopy = append(revsCopy, fixupRevision(rev))
+ }
+ vars := &commitMsgVars{
+ CommitMsgConfig: c,
+ ChildName: childName,
+ Reviewers: reviewers,
+ Revisions: revsCopy,
+ RollingFrom: fixupRevision(from),
+ RollingTo: fixupRevision(to),
+ ServerURL: serverURL,
+ }
+
+ // Bugs.
+ vars.Bugs = nil
+ if c.BugProject != "" {
+ // TODO(borenet): Move this to a util.MakeBugLines utility?
+ bugMap := map[string]bool{}
+ for _, rev := range revisions {
+ for _, bug := range rev.Bugs[c.BugProject] {
+ bugMap[bug] = true
+ }
+ }
+ if len(bugMap) > 0 {
+ vars.Bugs = make([]string, 0, len(bugMap))
+ for bug := range bugMap {
+ bugStr := fmt.Sprintf("%s:%s", c.BugProject, bug)
+ if c.BugProject == util.BUG_PROJECT_BUGANIZER {
+ bugStr = fmt.Sprintf("b/%s", bug)
+ }
+ vars.Bugs = append(vars.Bugs, bugStr)
+ }
+ sort.Strings(vars.Bugs)
+ }
+ }
+
+ // Log URL.
+ vars.ChildLogURL = ""
+ if c.ChildLogURLTmpl != "" {
+ childLogURLTmpl, err := parseCommitMsgTemplate(nil, "childLogURL", c.ChildLogURLTmpl)
+ if err != nil {
+ return nil, skerr.Wrap(err)
+ }
+ var buf bytes.Buffer
+ if err := childLogURLTmpl.Execute(&buf, vars); err != nil {
+ return nil, skerr.Wrap(err)
+ }
+ vars.ChildLogURL = buf.String()
+ }
+
+ // Tests.
+ if c.IncludeTests {
+ testsMap := map[string]bool{}
+ for _, rev := range revisions {
+ for _, test := range rev.Tests {
+ testsMap[test] = true
+ }
+ }
+ if len(testsMap) > 0 {
+ vars.Tests = make([]string, 0, len(testsMap))
+ for test := range testsMap {
+ vars.Tests = append(vars.Tests, test)
+ }
+ sort.Strings(vars.Tests)
+ }
+ }
+
+ // Transitive deps. Note that we can't verify that the repo manager
+ // implementation actually included these changes in the roll; we assume
+ // that it would do so if working correctly and would error out otherwise.
+ var transitiveUpdates []*transitiveDepUpdate
+ for _, td := range transitiveDeps {
+ // Find the versions of the transitive dep in the old and new revisions.
+ oldRev, ok := from.Dependencies[td.Child.ID]
+ if !ok {
+ return nil, skerr.Fmt("Transitive dependency %q is missing from revision %s", td.Child.ID, from.Id)
+ }
+ newRev, ok := to.Dependencies[td.Child.ID]
+ if !ok {
+ return nil, skerr.Fmt("Transitive dependency %q is missing from revision %s", td.Child.ID, to.Id)
+ }
+ if oldRev != newRev {
+ transitiveUpdates = append(transitiveUpdates, &transitiveDepUpdate{
+ Dep: td.Parent.ID,
+ RollingFrom: oldRev,
+ RollingTo: newRev,
+ })
+ }
+ }
+ vars.TransitiveDeps = transitiveUpdates
+ return vars, nil
+}
+
+// commitMsgVars contains variables used to fill in a commit message template.
+type commitMsgVars struct {
+ *CommitMsgConfig
+ Bugs []string
+ ChildLogURL string
+ ChildName string
+ Reviewers []string
+ Revisions []*revision.Revision
+ RollingFrom *revision.Revision
+ RollingTo *revision.Revision
+ ServerURL string
+ Tests []string
+ TransitiveDeps []*transitiveDepUpdate
+}
+
+// parseCommitMsgTemplate parses the given commit message template string and
+// returns a Template instance.
+func parseCommitMsgTemplate(parent *template.Template, name, tmpl string) (*template.Template, error) {
+ var t *template.Template
+ if parent != nil {
+ clone, err := parent.Clone()
+ if err != nil {
+ return nil, skerr.Wrap(err)
+ }
+ t = clone.New(name)
+ } else {
+ t = template.New(name)
+ }
+ return t.Option("missingkey=error").Funcs(template.FuncMap{
+ "stringsJoin": strings.Join,
+ "substr": func(s string, a, b int) string {
+ if a > len(s) {
+ return ""
+ }
+ if b > len(s) {
+ b = len(s)
+ }
+ return s[a:b]
+ },
+ }).Parse(tmpl)
+}
+
+// Fake values for various configuration entries used for testing.
+const fakeBugProject = "fakebugproject"
+const fakeChildName = "fake/child/src"
+const fakeServerURL = "https://fake.server.com/r/fake-autoroll"
+const fakeChildDep1 = "child/dep1"
+const fakeChildDep2 = "child/dep2"
+const fakeChildDep3 = "child/dep3"
+
+var fakeTransitiveDeps = []*version_file_common.TransitiveDepConfig{
+ {
+ Child: &version_file_common.VersionFileConfig{
+ ID: fakeChildDep1,
+ Path: "DEPS",
+ },
+ Parent: &version_file_common.VersionFileConfig{
+ ID: "parent/dep1",
+ Path: "DEPS",
+ },
+ },
+ {
+ Child: &version_file_common.VersionFileConfig{
+ ID: fakeChildDep2,
+ Path: "DEPS",
+ },
+ Parent: &version_file_common.VersionFileConfig{
+ ID: "parent/dep2",
+ Path: "DEPS",
+ },
+ },
+ {
+ Child: &version_file_common.VersionFileConfig{
+ ID: fakeChildDep3,
+ Path: "DEPS",
+ },
+ Parent: &version_file_common.VersionFileConfig{
+ ID: "parent/dep3",
+ Path: "DEPS",
+ },
+ },
+}
+
+// FakeCommitMsgInputs returns Revisions which may be used to validate commit
+// message templates.
+func FakeCommitMsgInputs() (*revision.Revision, *revision.Revision, []*revision.Revision, []string) {
+ a := &revision.Revision{
+ Id: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ Display: "aaaaaaaaaaaa",
+ Author: "a@google.com",
+ Dependencies: map[string]string{
+ fakeChildDep1: "dddddddddddddddddddddddddddddddddddddddd",
+ fakeChildDep2: "1111111111111111111111111111111111111111",
+ fakeChildDep3: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ },
+ Description: "Commit A",
+ Details: `blah blah
+
+ aaaaaaa
+
+ blah`,
+ Timestamp: time.Unix(1586908800, 0),
+ }
+ b := &revision.Revision{
+ Id: "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+ Display: "bbbbbbbbbbbb",
+ Author: "b@google.com",
+ Bugs: map[string][]string{
+ fakeBugProject: {"1234"},
+ },
+ Dependencies: map[string]string{
+ fakeChildDep1: "dddddddddddddddddddddddddddddddddddddddd",
+ fakeChildDep2: "1111111111111111111111111111111111111111",
+ fakeChildDep3: "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+ },
+ Description: "Commit B",
+ Details: `blah blah
+
+ bbbbbbb
+
+ blah`,
+ Timestamp: time.Unix(1586995200, 0),
+ }
+ c := &revision.Revision{
+ Id: "cccccccccccccccccccccccccccccccccccccccc",
+ Display: "cccccccccccc",
+ Author: "c@google.com",
+ Bugs: map[string][]string{
+ fakeBugProject: {"5678"},
+ },
+ Tests: []string{"some-test"},
+ Dependencies: map[string]string{
+ fakeChildDep1: "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
+ fakeChildDep2: "1111111111111111111111111111111111111111",
+ fakeChildDep3: "cccccccccccccccccccccccccccccccccccccccc",
+ },
+ Description: "Commit C",
+ Details: `blah blah
+
+ ccccccc
+
+ blah`,
+ Timestamp: time.Unix(1587081600, 0),
+ }
+ return a, c, []*revision.Revision{c, b}, []string{"reviewer@google.com"}
+}
diff --git a/autoroll/go/commit_msg/commit_msg_test.go b/autoroll/go/commit_msg/commit_msg_test.go
new file mode 100644
index 0000000..da03b59
--- /dev/null
+++ b/autoroll/go/commit_msg/commit_msg_test.go
@@ -0,0 +1,130 @@
+package commit_msg
+
+import (
+ "testing"
+
+ "github.com/stretchr/testify/require"
+ "go.skia.org/infra/go/deepequal/assertdeep"
+ "go.skia.org/infra/go/testutils/unittest"
+)
+
+// fakeCommitMsgConfig returns a valid CommitMsgConfig instance.
+func fakeCommitMsgConfig(t *testing.T) *CommitMsgConfig {
+ c := &CommitMsgConfig{
+ BugProject: fakeBugProject,
+ Template: TmplNameDefault,
+ ChildLogURLTmpl: "https://fake-child-log/{{.RollingFrom}}..{{.RollingTo}}",
+ CqExtraTrybots: []string{"some-trybot"},
+ IncludeLog: true,
+ IncludeRevisionCount: true,
+ IncludeTbrLine: true,
+ IncludeTests: true,
+ }
+ // Sanity check.
+ require.NoError(t, c.Validate())
+ return c
+}
+
+// fakeBuilder returns a Builder instance.
+func fakeBuilder(t *testing.T) *Builder {
+ b, err := NewBuilder(fakeCommitMsgConfig(t), fakeChildName, fakeServerURL, fakeTransitiveDeps)
+ require.NoError(t, err)
+ return b
+}
+
+func TestMakeVars(t *testing.T) {
+ unittest.SmallTest(t)
+
+ check := func(fn func(*Builder)) {
+ c := fakeCommitMsgConfig(t)
+ b, err := NewBuilder(c, fakeChildName, fakeServerURL, fakeTransitiveDeps)
+ require.NoError(t, err)
+ fn(b)
+ from, to, revs, reviewers := FakeCommitMsgInputs()
+ vars, err := makeVars(c, b.childName, b.serverURL, b.transitiveDeps, from, to, revs, reviewers)
+ require.NoError(t, err)
+
+ // Bugs.
+ var expectBugs int
+ if c.BugProject == "" {
+ expectBugs = 0
+ } else if c.BugProject != fakeBugProject {
+ expectBugs = 0
+ } else {
+ expectBugs = 2 // From fakeCommitMsgInputs.
+ }
+ require.Len(t, vars.Bugs, expectBugs)
+
+ // Log URL.
+ if c.ChildLogURLTmpl == "" {
+ require.Equal(t, vars.ChildLogURL, "")
+ } else {
+ require.Equal(t, vars.ChildLogURL, "https://fake-child-log/aaaaaaaaaaaa..cccccccccccc")
+ }
+
+ // RollingFrom and RollingTo.
+ require.Equal(t, fixupRevision(from), vars.RollingFrom)
+ require.Equal(t, fixupRevision(to), vars.RollingTo)
+
+ // Tests.
+ if c.IncludeTests {
+ require.Len(t, vars.Tests, 1)
+ } else {
+ require.Len(t, vars.Tests, 0)
+ }
+
+ // TransitiveDeps.
+ if len(b.transitiveDeps) == 0 {
+ require.Len(t, vars.TransitiveDeps, 0)
+ } else {
+ // Only two of the transitive deps differ.
+ require.Len(t, vars.TransitiveDeps, 2)
+ assertdeep.Equal(t, &transitiveDepUpdate{
+ Dep: "parent/dep1",
+ RollingFrom: "dddddddddddddddddddddddddddddddddddddddd",
+ RollingTo: "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
+ }, vars.TransitiveDeps[0])
+ assertdeep.Equal(t, &transitiveDepUpdate{
+ Dep: "parent/dep3",
+ RollingFrom: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ RollingTo: "cccccccccccccccccccccccccccccccccccccccc",
+ }, vars.TransitiveDeps[1])
+ }
+ }
+
+ // Default config includes everything.
+ check(func(b *Builder) {})
+ // No bugs.
+ check(func(b *Builder) {
+ b.cfg.BugProject = ""
+ })
+ check(func(b *Builder) {
+ b.cfg.BugProject = "bogus project; doesn't match anything"
+ })
+ // No log URL template.
+ check(func(b *Builder) {
+ b.cfg.ChildLogURLTmpl = ""
+ })
+ // No revisions.
+ check(func(b *Builder) {
+ b.cfg.IncludeLog = false
+ })
+ // No tests.
+ check(func(b *Builder) {
+ b.cfg.IncludeTests = false
+ })
+ // No transitive deps.
+ check(func(b *Builder) {
+ b.transitiveDeps = nil
+ })
+}
+
+func TestNamedTemplatesValid(t *testing.T) {
+ unittest.SmallTest(t)
+
+ cfg := fakeCommitMsgConfig(t)
+ for name := range namedCommitMsgTemplates {
+ cfg.Template = name
+ require.NoError(t, cfg.Validate())
+ }
+}
diff --git a/autoroll/go/commit_msg/default.go b/autoroll/go/commit_msg/default.go
new file mode 100644
index 0000000..01238d7
--- /dev/null
+++ b/autoroll/go/commit_msg/default.go
@@ -0,0 +1,87 @@
+package commit_msg
+
+import "text/template"
+
+const (
+ // TmplNameDefault is the name of the default commit message template which
+ // is suitable for most rollers.
+ TmplNameDefault = "default"
+)
+
+var (
+ // tmplNameCommitMsg is the name of the overall commit message template.
+ tmplNameCommitMsg = "commitMsg"
+
+ // tmplCommitMsg utilizes the skeleton with the default block definitions.
+ // It is the primary entry point which is executed for every commit message.
+ // Custom commit messages may modify it by overriding any of the blocks
+ // defined above, including the commitMsg itself for a completely custom
+ // message.
+ tmplCommitMsg = template.Must(parseCommitMsgTemplate(tmplFooterDefault, tmplNameCommitMsg, `
+{{- define "subject" }}{{ template "defaultSubject" . }}{{ end -}}
+{{- define "revisions" }}{{ template "defaultRevisions" . }}{{ end -}}
+{{- define "boilerplate" }}{{ template "defaultBoilerplate" . }}{{ end -}}
+{{- define "footer" }}{{ template "defaultFooter" . }}{{ end -}}
+{{ template "skeleton" . }}`))
+
+ tmplNameSkeleton = "skeleton"
+ // tmplSkeleton defines the basic structure for all commit messages.
+ tmplSkeleton = template.Must(parseCommitMsgTemplate(nil, tmplNameSkeleton,
+ `{{ template "subject" . }}
+
+{{ template "revisions" . }}
+
+{{ template "boilerplate" . }}
+
+{{ template "footer" . }}
+`))
+
+ tmplNameSubjectDefault = "defaultSubject"
+ tmplSubjectDefault = template.Must(parseCommitMsgTemplate(tmplSkeleton, tmplNameSubjectDefault,
+ `Roll {{ .ChildName }} from {{ .RollingFrom }} to {{ .RollingTo }}{{ if .IncludeRevisionCount}} ({{ len .Revisions }} revision{{ if gt (len .Revisions) 1 }}s{{ end }}){{ end }}`))
+
+ tmplNameRevisionsDefault = "defaultRevisions"
+ tmplRevisionsDefault = template.Must(parseCommitMsgTemplate(tmplSubjectDefault, tmplNameRevisionsDefault,
+ `{{ if .ChildLogURL }}{{ .ChildLogURL }}
+
+{{ end -}}
+{{- if .IncludeLog -}}
+{{ range .Revisions }}{{ .Timestamp.Format "2006-01-02" }} {{ .Author }} {{ .Description }}
+{{ end }}
+{{ end -}}
+{{ if len .TransitiveDeps -}}
+Also rolling transitive DEPS:
+{{ range .TransitiveDeps }} {{ .Dep }} from {{ substr .RollingFrom 0 12 }} to {{ substr .RollingTo 0 12 }}
+{{ end }}
+{{- end }}`))
+
+ tmplNameBoilerplateDefault = "defaultBoilerplate"
+ tmplBoilerplateDefault = template.Must(parseCommitMsgTemplate(tmplRevisionsDefault, tmplNameBoilerplateDefault,
+ `If this roll has caused a breakage, revert this CL and stop the roller
+using the controls here:
+{{.ServerURL}}
+Please CC {{stringsJoin .Reviewers ","}} on the revert to ensure that a human
+is aware of the problem.
+
+To report a problem with the AutoRoller itself, please file a bug:
+https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
+
+Documentation for the AutoRoller is here:
+https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md`))
+
+ tmplNameFooterDefault = "defaultFooter"
+ tmplFooterDefault = template.Must(parseCommitMsgTemplate(tmplBoilerplateDefault, tmplNameFooterDefault,
+ `{{ if .CqExtraTrybots -}}
+Cq-Include-Trybots: {{ stringsJoin .CqExtraTrybots ";" }}
+{{ end -}}
+{{ if .BugProject -}}
+Bug: {{ if .Bugs }}{{ stringsJoin .Bugs "," }}{{ else }}None{{ end }}
+{{ end -}}
+{{ if .IncludeTbrLine -}}
+Tbr: {{ stringsJoin .Reviewers "," }}
+{{ end -}}
+{{ if .IncludeTests -}}
+{{ range .Tests }}Test: {{.}}
+{{- end -}}
+{{- end }}`))
+)
diff --git a/autoroll/go/commit_msg/default_test.go b/autoroll/go/commit_msg/default_test.go
new file mode 100644
index 0000000..7c6e1a6
--- /dev/null
+++ b/autoroll/go/commit_msg/default_test.go
@@ -0,0 +1,201 @@
+package commit_msg
+
+import (
+ "testing"
+
+ "github.com/stretchr/testify/require"
+ "go.skia.org/infra/go/testutils/unittest"
+)
+
+func TestNamedTemplateDefault_AllFeatures(t *testing.T) {
+ unittest.SmallTest(t)
+
+ b := fakeBuilder(t)
+ result, err := b.Build(FakeCommitMsgInputs())
+ require.NoError(t, err)
+ require.Equal(t, `Roll fake/child/src from aaaaaaaaaaaa to cccccccccccc (2 revisions)
+
+https://fake-child-log/aaaaaaaaaaaa..cccccccccccc
+
+2020-04-17 c@google.com Commit C
+2020-04-16 b@google.com Commit B
+
+Also rolling transitive DEPS:
+ parent/dep1 from dddddddddddd to eeeeeeeeeeee
+ parent/dep3 from aaaaaaaaaaaa to cccccccccccc
+
+If this roll has caused a breakage, revert this CL and stop the roller
+using the controls here:
+https://fake.server.com/r/fake-autoroll
+Please CC reviewer@google.com on the revert to ensure that a human
+is aware of the problem.
+
+To report a problem with the AutoRoller itself, please file a bug:
+https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
+
+Documentation for the AutoRoller is here:
+https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
+
+Cq-Include-Trybots: some-trybot
+Bug: fakebugproject:1234,fakebugproject:5678
+Tbr: reviewer@google.com
+Test: some-test
+`, result)
+}
+
+func TestNamedTemplateDefault_NoLog(t *testing.T) {
+ unittest.SmallTest(t)
+
+ b := fakeBuilder(t)
+ b.cfg.IncludeLog = false
+ result, err := b.Build(FakeCommitMsgInputs())
+ require.NoError(t, err)
+ require.Equal(t, `Roll fake/child/src from aaaaaaaaaaaa to cccccccccccc (2 revisions)
+
+https://fake-child-log/aaaaaaaaaaaa..cccccccccccc
+
+Also rolling transitive DEPS:
+ parent/dep1 from dddddddddddd to eeeeeeeeeeee
+ parent/dep3 from aaaaaaaaaaaa to cccccccccccc
+
+If this roll has caused a breakage, revert this CL and stop the roller
+using the controls here:
+https://fake.server.com/r/fake-autoroll
+Please CC reviewer@google.com on the revert to ensure that a human
+is aware of the problem.
+
+To report a problem with the AutoRoller itself, please file a bug:
+https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
+
+Documentation for the AutoRoller is here:
+https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
+
+Cq-Include-Trybots: some-trybot
+Bug: fakebugproject:1234,fakebugproject:5678
+Tbr: reviewer@google.com
+Test: some-test
+`, result)
+}
+
+func TestNamedTemplateDefault_NoBugProject(t *testing.T) {
+ unittest.SmallTest(t)
+
+ b := fakeBuilder(t)
+ b.cfg.BugProject = ""
+ result, err := b.Build(FakeCommitMsgInputs())
+ require.NoError(t, err)
+ require.Equal(t, `Roll fake/child/src from aaaaaaaaaaaa to cccccccccccc (2 revisions)
+
+https://fake-child-log/aaaaaaaaaaaa..cccccccccccc
+
+2020-04-17 c@google.com Commit C
+2020-04-16 b@google.com Commit B
+
+Also rolling transitive DEPS:
+ parent/dep1 from dddddddddddd to eeeeeeeeeeee
+ parent/dep3 from aaaaaaaaaaaa to cccccccccccc
+
+If this roll has caused a breakage, revert this CL and stop the roller
+using the controls here:
+https://fake.server.com/r/fake-autoroll
+Please CC reviewer@google.com on the revert to ensure that a human
+is aware of the problem.
+
+To report a problem with the AutoRoller itself, please file a bug:
+https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
+
+Documentation for the AutoRoller is here:
+https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
+
+Cq-Include-Trybots: some-trybot
+Tbr: reviewer@google.com
+Test: some-test
+`, result)
+}
+
+func TestNamedTemplateDefault_NoBugs(t *testing.T) {
+ unittest.SmallTest(t)
+
+ b := fakeBuilder(t)
+ from, to, revs, emails := FakeCommitMsgInputs()
+ from.Bugs = nil
+ to.Bugs = nil
+ for _, rev := range revs {
+ rev.Bugs = nil
+ }
+ result, err := b.Build(from, to, revs, emails)
+ require.NoError(t, err)
+ require.Equal(t, `Roll fake/child/src from aaaaaaaaaaaa to cccccccccccc (2 revisions)
+
+https://fake-child-log/aaaaaaaaaaaa..cccccccccccc
+
+2020-04-17 c@google.com Commit C
+2020-04-16 b@google.com Commit B
+
+Also rolling transitive DEPS:
+ parent/dep1 from dddddddddddd to eeeeeeeeeeee
+ parent/dep3 from aaaaaaaaaaaa to cccccccccccc
+
+If this roll has caused a breakage, revert this CL and stop the roller
+using the controls here:
+https://fake.server.com/r/fake-autoroll
+Please CC reviewer@google.com on the revert to ensure that a human
+is aware of the problem.
+
+To report a problem with the AutoRoller itself, please file a bug:
+https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
+
+Documentation for the AutoRoller is here:
+https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
+
+Cq-Include-Trybots: some-trybot
+Bug: None
+Tbr: reviewer@google.com
+Test: some-test
+`, result)
+}
+
+func TestNamedTemplateDefault_Minimal(t *testing.T) {
+ unittest.SmallTest(t)
+
+ b := fakeBuilder(t)
+ b.cfg.BugProject = ""
+ b.cfg.ChildLogURLTmpl = ""
+ b.cfg.CqExtraTrybots = nil
+ b.cfg.IncludeLog = false
+ b.cfg.IncludeTbrLine = false
+ b.cfg.IncludeTests = false
+ b.transitiveDeps = nil
+ result, err := b.Build(FakeCommitMsgInputs())
+ require.NoError(t, err)
+ require.Equal(t, `Roll fake/child/src from aaaaaaaaaaaa to cccccccccccc (2 revisions)
+
+If this roll has caused a breakage, revert this CL and stop the roller
+using the controls here:
+https://fake.server.com/r/fake-autoroll
+Please CC reviewer@google.com on the revert to ensure that a human
+is aware of the problem.
+
+To report a problem with the AutoRoller itself, please file a bug:
+https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
+
+Documentation for the AutoRoller is here:
+https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
+`, result)
+}
+
+func TestTotalOverride(t *testing.T) {
+ unittest.SmallTest(t)
+
+ b := fakeBuilder(t)
+ b.cfg.Template = `{{ define "commitMsg" }}Completely custom commit message.
+
+Seriously, this can be anything at all.
+{{end}}`
+ result, err := b.Build(FakeCommitMsgInputs())
+ require.NoError(t, err)
+ require.Equal(t, `Completely custom commit message.
+
+Seriously, this can be anything at all.
+`, result)
+}
diff --git a/autoroll/go/repo_manager/android_repo_manager.go b/autoroll/go/repo_manager/android_repo_manager.go
index 55ab7ad..936f44b 100644
--- a/autoroll/go/repo_manager/android_repo_manager.go
+++ b/autoroll/go/repo_manager/android_repo_manager.go
@@ -18,7 +18,6 @@
"go.skia.org/infra/autoroll/go/codereview"
"go.skia.org/infra/autoroll/go/config_vars"
"go.skia.org/infra/autoroll/go/repo_manager/common/gerrit_common"
- "go.skia.org/infra/autoroll/go/repo_manager/parent"
"go.skia.org/infra/autoroll/go/revision"
"go.skia.org/infra/autoroll/go/strategy"
"go.skia.org/infra/go/exec"
@@ -28,35 +27,8 @@
)
const (
- UPSTREAM_REMOTE_NAME = "remote"
- REPO_BRANCH_NAME = "merge"
- TMPL_COMMIT_MSG_ANDROID = `Roll {{.ChildPath}} {{.RollingFrom.String}}..{{.RollingTo.String}} ({{len .Revisions}} commits)
-
-{{.ChildRepo}}/+log/{{.RollingFrom.String}}..{{.RollingTo.String}}
-
-{{if .IncludeLog}}
-{{range .Revisions}}{{.Timestamp.Format "2006-01-02"}} {{.Author}} {{.Description}}
-{{end}}{{end}}
-
-If this roll has caused a breakage, revert this CL and stop the roller
-using the controls here:
-{{.ServerURL}}
-Please CC {{stringsJoin .Reviewers ","}} on the revert to ensure that a human
-is aware of the problem.
-
-To report a problem with the AutoRoller itself, please file a bug:
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
-
-Documentation for the AutoRoller is here:
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
-
-Test: Presubmit checks will test this change.
-Exempt-From-Owner-Approval: The autoroll bot does not require owner approval.
-
-{{range .Bugs}}Bug: {{.}}
-{{end}}{{range .Tests}}{{.}}
-{{end}}
-`
+ UPSTREAM_REMOTE_NAME = "remote"
+ REPO_BRANCH_NAME = "merge"
)
var (
@@ -149,10 +121,6 @@
}
wd := path.Join(workdir, "android_repo")
-
- if c.CommitMsgTmpl == "" {
- c.CommitMsgTmpl = TMPL_COMMIT_MSG_ANDROID
- }
crm, err := newCommonRepoManager(ctx, c.CommonRepoManagerConfig, reg, wd, serverURL, g, client, cr, local)
if err != nil {
return nil, err
@@ -285,7 +253,7 @@
}
// See documentation for RepoManager interface.
-func (r *androidRepoManager) CreateNewRoll(ctx context.Context, from, to *revision.Revision, rolling []*revision.Revision, emails []string, cqExtraTrybots string, dryRun bool) (int64, error) {
+func (r *androidRepoManager) CreateNewRoll(ctx context.Context, from, to *revision.Revision, rolling []*revision.Revision, emails []string, dryRun bool, commitMsg string) (int64, error) {
r.repoMtx.Lock()
defer r.repoMtx.Unlock()
@@ -373,23 +341,6 @@
sort.Strings(rollEmails)
}
- // Create commit message.
- commitMsg, err := r.buildCommitMsg(&parent.CommitMsgVars{
- ChildPath: r.childPath,
- ChildRepo: r.childRepoURL,
- Reviewers: rollEmails,
- Revisions: rolling,
- RollingFrom: from,
- RollingTo: to,
- ServerURL: r.serverURL,
- })
- if err != nil {
- return 0, err
- }
-
- // Temporary hack to substitute P4 for "Pixel4". See skbug.com/9595.
- commitMsg = strings.Replace(commitMsg, "Pixel4", "P4", -1)
-
// Commit the change with the above message.
if _, commitErr := r.childRepo.Git(ctx, "commit", "-m", commitMsg); commitErr != nil {
util.LogErr(r.abandonRepoBranch(ctx))
diff --git a/autoroll/go/repo_manager/android_repo_manager_test.go b/autoroll/go/repo_manager/android_repo_manager_test.go
index 0913c91..2bc4b2e 100644
--- a/autoroll/go/repo_manager/android_repo_manager_test.go
+++ b/autoroll/go/repo_manager/android_repo_manager_test.go
@@ -156,7 +156,7 @@
lastRollRev, tipRev, notRolledRevs, err := rm.Update(ctx)
require.NoError(t, err)
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, androidEmails, "", false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, androidEmails, false, fakeCommitMsg)
require.NoError(t, err)
require.Equal(t, issueNum, issue)
}
@@ -183,7 +183,7 @@
}
// Create a roll, assert that we ran the PreUploadSteps.
- _, err = rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, androidEmails, "", false)
+ _, err = rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, androidEmails, false, fakeCommitMsg)
require.NoError(t, err)
require.True(t, ran)
}
diff --git a/autoroll/go/repo_manager/common/version_file_common/version_file_common.go b/autoroll/go/repo_manager/common/version_file_common/version_file_common.go
index c8a4a41..fcbfc20 100644
--- a/autoroll/go/repo_manager/common/version_file_common/version_file_common.go
+++ b/autoroll/go/repo_manager/common/version_file_common/version_file_common.go
@@ -61,7 +61,7 @@
// Primary dependency.
VersionFileConfig
// Transitive dependencies.
- TransitiveDeps []*TransitiveDepConfig
+ TransitiveDeps TransitiveDepConfigs
}
// See documentation for util.Validator interface.
@@ -69,19 +69,24 @@
if err := c.VersionFileConfig.Validate(); err != nil {
return skerr.Wrap(err)
}
- for _, td := range c.TransitiveDeps {
- if err := td.Validate(); err != nil {
- return skerr.Wrap(err)
- }
+ if err := c.TransitiveDeps.Validate(); err != nil {
+ return skerr.Wrap(err)
}
return nil
}
-// TransitiveDepUpdate represents an update to one transitive dependency.
-type TransitiveDepUpdate struct {
- Dep string
- RollingFrom string
- RollingTo string
+// TransitiveDepConfigs provide configuration for multiple transitive
+// dependencies.
+type TransitiveDepConfigs []*TransitiveDepConfig
+
+// See documentation for util.Validator interface.
+func (c TransitiveDepConfigs) Validate() error {
+ for _, elem := range c {
+ if err := elem.Validate(); err != nil {
+ return skerr.Wrap(err)
+ }
+ }
+ return nil
}
// GetPinnedRev reads the given file contents to find the pinned revision.
@@ -140,7 +145,7 @@
// updateSingleDep updates the dependency in the given file, writing the new
// contents into the changes map and returning the previous version.
-func updateSingleDep(ctx context.Context, dep VersionFileConfig, newVersion string, changes map[string]string, getFile GetFileFunc) (string, error) {
+func updateSingleDep(ctx context.Context, dep VersionFileConfig, newVersion string, changes map[string]string, getFile GetFileFunc) error {
// Look up the path in our changes map to prevent overwriting
// modifications we've already made.
oldContents, ok := changes[dep.Path]
@@ -148,60 +153,52 @@
var err error
oldContents, err = getFile(ctx, dep.Path)
if err != nil {
- return "", skerr.Wrap(err)
+ return skerr.Wrap(err)
}
}
// Find the currently-pinned revision.
oldVersion, err := GetPinnedRev(dep, oldContents)
if err != nil {
- return "", skerr.Wrap(err)
+ return skerr.Wrap(err)
}
// Create the new file content.
if newVersion != oldVersion {
newContents, err := SetPinnedRev(dep, newVersion, oldContents)
if err != nil {
- return "", skerr.Wrap(err)
+ return skerr.Wrap(err)
}
changes[dep.Path] = newContents
}
- return oldVersion, nil
+ return nil
}
// UpdateDep updates the given dependency to the given revision, also updating
// any transitive dependencies to the revisions specified in the new revision of
// the primary dependency. Returns a map whose keys are file names to update and
// values are their updated contents.
-func UpdateDep(ctx context.Context, primaryDep DependencyConfig, rev *revision.Revision, getFile GetFileFunc) (map[string]string, []*TransitiveDepUpdate, error) {
+func UpdateDep(ctx context.Context, primaryDep DependencyConfig, rev *revision.Revision, getFile GetFileFunc) (map[string]string, error) {
// Update the primary dependency.
changes := make(map[string]string, 1+len(primaryDep.TransitiveDeps))
- if _, err := updateSingleDep(ctx, primaryDep.VersionFileConfig, rev.Id, changes, getFile); err != nil {
- return nil, nil, skerr.Wrap(err)
+ if err := updateSingleDep(ctx, primaryDep.VersionFileConfig, rev.Id, changes, getFile); err != nil {
+ return nil, skerr.Wrap(err)
}
// Handle transitive dependencies.
- var td []*TransitiveDepUpdate
if len(primaryDep.TransitiveDeps) > 0 {
for _, dep := range primaryDep.TransitiveDeps {
// Find the new revision.
newVersion, ok := rev.Dependencies[dep.Child.ID]
if !ok {
- return nil, nil, skerr.Fmt("Could not find transitive dependency %q in %#v", dep.Child.ID, rev)
+ return nil, skerr.Fmt("Could not find transitive dependency %q in %#v", dep.Child.ID, rev)
}
// Update.
- oldVersion, err := updateSingleDep(ctx, *dep.Parent, newVersion, changes, getFile)
- if err != nil {
- return nil, nil, skerr.Wrap(err)
+ if err := updateSingleDep(ctx, *dep.Parent, newVersion, changes, getFile); err != nil {
+ return nil, skerr.Wrap(err)
}
- // Add the transitive dep to the list.
- td = append(td, &TransitiveDepUpdate{
- Dep: dep.Parent.ID,
- RollingFrom: oldVersion,
- RollingTo: newVersion,
- })
}
}
- return changes, td, nil
+ return changes, nil
}
diff --git a/autoroll/go/repo_manager/copy_repo_manager.go b/autoroll/go/repo_manager/copy_repo_manager.go
index e0d61a89..c297983 100644
--- a/autoroll/go/repo_manager/copy_repo_manager.go
+++ b/autoroll/go/repo_manager/copy_repo_manager.go
@@ -50,14 +50,6 @@
parentCfg := parent.CopyConfig{
GitCheckoutGerritConfig: parent.GitCheckoutGerritConfig{
GitCheckoutConfig: parent.GitCheckoutConfig{
- BaseConfig: parent.BaseConfig{
- ChildPath: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.ChildPath,
- ChildRepo: c.ChildRepo,
- IncludeBugs: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.IncludeBugs,
- IncludeLog: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.IncludeLog,
- CommitMsgTmpl: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.CommitMsgTmpl,
- MonorailProject: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.BugProject,
- },
GitCheckoutConfig: git_common.GitCheckoutConfig{
Branch: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.ParentBranch,
RepoURL: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.ParentRepo,
diff --git a/autoroll/go/repo_manager/copy_repo_manager_test.go b/autoroll/go/repo_manager/copy_repo_manager_test.go
index f950319..3f4e686 100644
--- a/autoroll/go/repo_manager/copy_repo_manager_test.go
+++ b/autoroll/go/repo_manager/copy_repo_manager_test.go
@@ -176,7 +176,7 @@
urlMock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/123/revisions/ps1/review", mockhttpclient.MockPostDialogue("application/json", reqBody, []byte("")))
// Upload the CL.
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, err)
require.Equal(t, int64(123), issue)
}
diff --git a/autoroll/go/repo_manager/deps_repo_manager.go b/autoroll/go/repo_manager/deps_repo_manager.go
index 493fdef..f65eb28 100644
--- a/autoroll/go/repo_manager/deps_repo_manager.go
+++ b/autoroll/go/repo_manager/deps_repo_manager.go
@@ -49,14 +49,6 @@
func (c DEPSRepoManagerConfig) splitParentChild() (parent.DEPSLocalConfig, child.GitCheckoutConfig, error) {
parentCfg := parent.DEPSLocalConfig{
GitCheckoutConfig: parent.GitCheckoutConfig{
- BaseConfig: parent.BaseConfig{
- ChildPath: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.ChildPath,
- ChildRepo: c.ChildRepo,
- IncludeBugs: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.IncludeBugs,
- IncludeLog: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.IncludeLog,
- CommitMsgTmpl: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.CommitMsgTmpl,
- MonorailProject: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.BugProject,
- },
GitCheckoutConfig: git_common.GitCheckoutConfig{
Branch: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.ParentBranch,
RepoURL: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.ParentRepo,
@@ -108,9 +100,9 @@
}
// Find the path to the child repo.
- childPath := parentCfg.ChildPath
+ childPath := c.ChildPath
if c.ChildSubdir != "" {
- childPath = filepath.Join(c.ChildSubdir, parentCfg.ChildPath)
+ childPath = filepath.Join(c.ChildSubdir, c.ChildPath)
}
childFullPath := filepath.Join(workdir, childPath)
childCheckout := &git.Checkout{GitDir: git.GitDir(childFullPath)}
diff --git a/autoroll/go/repo_manager/deps_repo_manager_test.go b/autoroll/go/repo_manager/deps_repo_manager_test.go
index 9511033..74be892 100644
--- a/autoroll/go/repo_manager/deps_repo_manager_test.go
+++ b/autoroll/go/repo_manager/deps_repo_manager_test.go
@@ -14,13 +14,10 @@
"github.com/stretchr/testify/require"
"go.skia.org/infra/autoroll/go/codereview"
"go.skia.org/infra/autoroll/go/repo_manager/parent"
- "go.skia.org/infra/autoroll/go/revision"
"go.skia.org/infra/go/exec"
"go.skia.org/infra/go/gerrit"
"go.skia.org/infra/go/git"
git_testutils "go.skia.org/infra/go/git/testutils"
- "go.skia.org/infra/go/gitiles"
- "go.skia.org/infra/go/issues"
"go.skia.org/infra/go/mockhttpclient"
"go.skia.org/infra/go/recipe_cfg"
"go.skia.org/infra/go/skerr"
@@ -36,6 +33,10 @@
mockServer = "https://skia-review.googlesource.com"
mockUser = "user@chromium.org"
numChildCommits = 10
+ fakeCommitMsg = `Roll fake-dep oldrev..newrev
+
+blah blah blah
+`
)
var (
@@ -221,7 +222,7 @@
mockGerritGetAndPublishChange(t, urlmock, cfg)
// Create a roll, assert that it's at tip of tree.
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, err)
require.Equal(t, int64(123), issue)
}
@@ -250,40 +251,11 @@
mockGerritGetAndPublishChange(t, urlmock, cfg)
// Create a roll, assert that we ran the PreUploadSteps.
- _, err = rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ _, err = rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, err)
require.True(t, ran)
}
-// Verify that we respect the includeLog parameter.
-func TestDEPSRepoManagerIncludeLog(t *testing.T) {
- unittest.LargeTest(t)
-
- test := func(includeLog bool) {
- cfg := depsCfg(t)
- cfg.IncludeLog = includeLog
- ctx, rm, _, _, _, _, _, lastUpload, urlmock, cleanup := setupDEPSRepoManager(t, cfg)
- defer cleanup()
-
- lastRollRev, tipRev, notRolledRevs, err := rm.Update(ctx)
- require.NoError(t, err)
-
- // Mock the request to load the change.
- mockGerritGetAndPublishChange(t, urlmock, cfg)
-
- // Create a roll.
- _, err = rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
- require.NoError(t, err)
-
- // Ensure that we included the log, or not, as appropriate.
- require.NoError(t, err)
- require.Equal(t, includeLog, strings.Contains(lastUpload.Body, "git log"))
- }
-
- test(true)
- test(false)
-}
-
// Verify that we properly utilize a gclient spec.
func TestDEPSRepoManagerGClientSpec(t *testing.T) {
unittest.LargeTest(t)
@@ -318,7 +290,7 @@
mockGerritGetAndPublishChange(t, urlmock, cfg)
// Create a roll.
- _, err = rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ _, err = rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, err)
// Ensure that we pass the spec into "gclient config".
@@ -335,77 +307,6 @@
require.True(t, found)
}
-// Verify that we include the correct bug lings.
-func TestDEPSRepoManagerBugs(t *testing.T) {
- unittest.LargeTest(t)
-
- project := "skiatestproject"
-
- test := func(bugLine, expect string) {
- // Setup.
- cfg := depsCfg(t)
- cfg.IncludeBugs = true
- cfg.BugProject = project
- ctx, rm, _, childRepo, _, parentRepo, _, lastUpload, urlmock, cleanup := setupDEPSRepoManager(t, cfg)
- defer cleanup()
-
- // Initial update.
- _, _, _, err := rm.Update(ctx)
- require.NoError(t, err)
-
- // Insert a fake entry into the repo mapping.
- issues.REPO_PROJECT_MAPPING[parentRepo.RepoUrl()] = project
-
- // Make a commit with the bug entry.
- childRepo.AddGen(ctx, "myfile")
- hash := childRepo.CommitMsg(ctx, fmt.Sprintf(`Some dummy commit
-
-%s
-`, bugLine))
- details, err := git.GitDir(childRepo.Dir()).Details(ctx, hash)
- require.NoError(t, err)
- rev := revision.FromLongCommit(fmt.Sprintf(gitiles.CommitURL, cfg.ChildRepo, "%s"), details)
- // Update.
- lastRollRev, tipRev, notRolledRevs, err := rm.Update(ctx)
- require.NoError(t, err)
- require.Equal(t, hash, tipRev.Id)
-
- // Mock the request to load the change.
- mockGerritGetAndPublishChange(t, urlmock, cfg)
-
- // Create a roll.
- _, err = rm.CreateNewRoll(ctx, lastRollRev, rev, notRolledRevs, emails, cqExtraTrybots, false)
- require.NoError(t, err)
-
- // Verify that we passed the correct --bug argument to roll-dep.
- found := false
- for _, line := range strings.Split(lastUpload.Body, "\n") {
- if strings.HasPrefix(line, "BUG=") {
- found = true
- require.Equal(t, expect, line[4:])
- } else if strings.HasPrefix(line, "Bug: ") {
- found = true
- require.Equal(t, expect, line[5:])
- }
- }
- if expect == "" {
- require.False(t, found)
- } else {
- require.True(t, found)
- }
- }
-
- // Test cases.
- test("", "None")
- test("BUG=skiatestproject:23", "skiatestproject:23")
- test("BUG=skiatestproject:18,skiatestproject:58", "skiatestproject:18,skiatestproject:58")
- // No prefix defaults to "chromium", which we don't include for rolls into "skiatestproject".
- test("BUG=skiatestproject:18,58", "skiatestproject:18")
- test("BUG=456", "None")
- test("BUG=skia:123,chromium:4532,skiatestproject:21", "skiatestproject:21")
- test("Bug: skiatestproject:33", "skiatestproject:33")
-}
-
func TestDEPSRepoManagerConfigValidation(t *testing.T) {
unittest.SmallTest(t)
diff --git a/autoroll/go/repo_manager/freetype_repo_manager_test.go b/autoroll/go/repo_manager/freetype_repo_manager_test.go
index 8f7e692..0f02637 100644
--- a/autoroll/go/repo_manager/freetype_repo_manager_test.go
+++ b/autoroll/go/repo_manager/freetype_repo_manager_test.go
@@ -190,44 +190,7 @@
// actually creates a checkout and uses that.
}
- // Mock the initial change creation.
- logStr := ""
- childGitRepo := git.GitDir(childRepo.Dir())
- for _, c := range notRolledRevs {
- details, err := childGitRepo.Details(ctx, c.Id)
- require.NoError(t, err)
- ts := details.Timestamp.Format("2006-01-02")
- author := details.Author
- authorSplit := strings.Split(details.Author, "(")
- if len(authorSplit) > 1 {
- author = strings.TrimRight(strings.TrimSpace(authorSplit[1]), ")")
- }
- logStr += fmt.Sprintf("%s %s %s\n", ts, author, details.Subject)
- }
- commitMsg := fmt.Sprintf(`Roll %s %s..%s (%d commits)
-
-%s/+log/%s..%s
-
-git log %s..%s --date=short --first-parent --format='%%ad %%ae %%s'
-%s
-Created with:
- gclient setdep -r %s@%s
-
-If this roll has caused a breakage, revert this CL and stop the roller
-using the controls here:
-fake.server.com
-Please CC me@google.com on the revert to ensure that a human
-is aware of the problem.
-
-To report a problem with the AutoRoller itself, please file a bug:
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
-
-Documentation for the AutoRoller is here:
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
-
-Bug: None
-Tbr: me@google.com`, ftChildPath, lastRollRev.Id[:12], tipRev.Id[:12], len(notRolledRevs), childRepo.RepoUrl(), lastRollRev.Id[:12], tipRev.Id[:12], lastRollRev.Id[:12], tipRev.Id[:12], logStr, ftChildPath, tipRev.Id[:12])
- subject := strings.Split(commitMsg, "\n")[0]
+ subject := strings.Split(fakeCommitMsg, "\n")[0]
reqBody := []byte(fmt.Sprintf(`{"project":"%s","subject":"%s","branch":"%s","topic":"","status":"NEW","base_commit":"%s"}`, "fake-gerrit-project", subject, "master", parentMaster))
ci := gerrit.ChangeInfo{
ChangeId: "123",
@@ -247,7 +210,7 @@
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/", mockhttpclient.MockPostDialogueWithResponseCode("application/json", reqBody, respBody, 201))
// Mock the edit of the change to update the commit message.
- reqBody = []byte(fmt.Sprintf(`{"message":"%s"}`, strings.Replace(commitMsg, "\n", "\\n", -1)))
+ reqBody = []byte(fmt.Sprintf(`{"message":"%s"}`, strings.Replace(fakeCommitMsg, "\n", "\\n", -1)))
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/123/edit:message", mockhttpclient.MockPutDialogue("application/json", reqBody, []byte("")))
// Mock the request to modify the DEPS file.
@@ -285,7 +248,7 @@
reqBody = []byte(`{"labels":{"Code-Review":1,"Commit-Queue":2},"message":"","reviewers":[{"reviewer":"me@google.com"}]}`)
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/123/revisions/ps1/review", mockhttpclient.MockPostDialogue("application/json", reqBody, []byte("")))
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, []string{"me@google.com"}, "", false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, []string{"me@google.com"}, false, fakeCommitMsg)
require.NoError(t, err)
require.NotEqual(t, 0, issue)
}
diff --git a/autoroll/go/repo_manager/fuchsia_sdk_android_repo_manager.go b/autoroll/go/repo_manager/fuchsia_sdk_android_repo_manager.go
index d9f52f1..828d667 100644
--- a/autoroll/go/repo_manager/fuchsia_sdk_android_repo_manager.go
+++ b/autoroll/go/repo_manager/fuchsia_sdk_android_repo_manager.go
@@ -21,9 +21,8 @@
)
const (
- FuchsiaSDKAndroidVersionFile = "sdk_id"
- FuchsiaSDKAndroidGenScript = "scripts/update_fuchsia_sdk.py"
- TmplCommitMsgFuchsiaSDKAndroid = TmplCommitMsgFuchsiaSDK + "Exempt-From-Owner-Approval: The autoroll bot does not require owner approval."
+ FuchsiaSDKAndroidVersionFile = "sdk_id"
+ FuchsiaSDKAndroidGenScript = "scripts/update_fuchsia_sdk.py"
)
// FuchsiaSDKAndroidRepoManagerConfig provides configuration for
@@ -72,18 +71,7 @@
}
// Create the parent.
- if c.CommitMsgTmpl == "" {
- c.CommitMsgTmpl = TmplCommitMsgFuchsiaSDKAndroid
- }
parentCfg := parent.GitCheckoutConfig{
- BaseConfig: parent.BaseConfig{
- ChildPath: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.ChildPath,
- ChildRepo: "FuchsiaSDK",
- IncludeBugs: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.IncludeBugs,
- IncludeLog: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.IncludeLog,
- CommitMsgTmpl: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.CommitMsgTmpl,
- MonorailProject: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.BugProject,
- },
GitCheckoutConfig: git_common.GitCheckoutConfig{
Branch: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.ParentBranch,
RepoURL: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.ParentRepo,
diff --git a/autoroll/go/repo_manager/fuchsia_sdk_android_repo_manager_test.go b/autoroll/go/repo_manager/fuchsia_sdk_android_repo_manager_test.go
index a38f61e..0b225d3 100644
--- a/autoroll/go/repo_manager/fuchsia_sdk_android_repo_manager_test.go
+++ b/autoroll/go/repo_manager/fuchsia_sdk_android_repo_manager_test.go
@@ -188,7 +188,7 @@
reqBody := []byte(`{"labels":{"Autosubmit":1,"Code-Review":2,"Presubmit-Ready":1},"message":"","reviewers":[{"reviewer":"reviewer@chromium.org"}]}`)
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/123/revisions/ps1/review", mockhttpclient.MockPostDialogue("application/json", reqBody, []byte("")))
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, err)
require.Equal(t, ci.Issue, issue)
}
diff --git a/autoroll/go/repo_manager/fuchsia_sdk_repo_manager.go b/autoroll/go/repo_manager/fuchsia_sdk_repo_manager.go
index 966c011..d1df847 100644
--- a/autoroll/go/repo_manager/fuchsia_sdk_repo_manager.go
+++ b/autoroll/go/repo_manager/fuchsia_sdk_repo_manager.go
@@ -19,24 +19,6 @@
const (
FuchsiaSDKVersionFilePathLinux = "build/fuchsia/linux.sdk.sha1"
FuchsiaSDKVersionFilePathMac = "build/fuchsia/mac.sdk.sha1"
-
- TmplCommitMsgFuchsiaSDK = `Roll Fuchsia SDK from {{.RollingFrom.String}} to {{.RollingTo.String}}
-
-If this roll has caused a breakage, revert this CL and stop the roller
-using the controls here:
-{{.ServerURL}}
-Please CC {{stringsJoin .Reviewers ","}} on the revert to ensure that a human
-is aware of the problem.
-
-To report a problem with the AutoRoller itself, please file a bug:
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
-
-Documentation for the AutoRoller is here:
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
-
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}
-{{end}}Tbr: {{stringsJoin .Reviewers ","}}
-`
)
// FuchsiaSDKRepoManagerConfig provides configuration for the Fuchia SDK
@@ -72,19 +54,7 @@
},
}
}
- commitMsgTmpl := TmplCommitMsgFuchsiaSDK
- if c.CommitMsgTmpl != "" {
- commitMsgTmpl = c.CommitMsgTmpl
- }
parentCfg := parent.GitilesConfig{
- BaseConfig: parent.BaseConfig{
- ChildPath: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.ChildPath,
- ChildRepo: "FuchsiaSDK",
- IncludeBugs: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.IncludeBugs,
- IncludeLog: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.IncludeLog,
- CommitMsgTmpl: commitMsgTmpl,
- MonorailProject: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.BugProject,
- },
DependencyConfig: version_file_common.DependencyConfig{
VersionFileConfig: version_file_common.VersionFileConfig{
ID: "FuchsiaSDK",
diff --git a/autoroll/go/repo_manager/fuchsia_sdk_repo_manager_test.go b/autoroll/go/repo_manager/fuchsia_sdk_repo_manager_test.go
index 15c090c..c2b9d0b 100644
--- a/autoroll/go/repo_manager/fuchsia_sdk_repo_manager_test.go
+++ b/autoroll/go/repo_manager/fuchsia_sdk_repo_manager_test.go
@@ -153,25 +153,7 @@
mockParent.MockReadFile(ctx, FuchsiaSDKVersionFilePathMac, parentMaster)
// Mock the initial change creation.
- from := lastRollRev
- to := tipRev
- commitMsg := fmt.Sprintf(`Roll Fuchsia SDK from %s to %s
-
-If this roll has caused a breakage, revert this CL and stop the roller
-using the controls here:
-fake.server.com
-Please CC reviewer@chromium.org on the revert to ensure that a human
-is aware of the problem.
-
-To report a problem with the AutoRoller itself, please file a bug:
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
-
-Documentation for the AutoRoller is here:
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
-
-Tbr: reviewer@chromium.org
-`, from, to)
- subject := strings.Split(commitMsg, "\n")[0]
+ subject := strings.Split(fakeCommitMsg, "\n")[0]
reqBody := []byte(fmt.Sprintf(`{"project":"%s","subject":"%s","branch":"%s","topic":"","status":"NEW","base_commit":"%s"}`, "fake-gerrit-project", subject, "master", parentMaster))
ci := gerrit.ChangeInfo{
ChangeId: "123",
@@ -190,7 +172,7 @@
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/", mockhttpclient.MockPostDialogueWithResponseCode("application/json", reqBody, respBody, 201))
// Mock the edit of the change to update the commit message.
- reqBody = []byte(fmt.Sprintf(`{"message":"%s"}`, strings.Replace(commitMsg, "\n", "\\n", -1)))
+ reqBody = []byte(fmt.Sprintf(`{"message":"%s"}`, strings.Replace(fakeCommitMsg, "\n", "\\n", -1)))
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/123/edit:message", mockhttpclient.MockPutDialogue("application/json", reqBody, []byte("")))
// Mock the request to modify the version files.
@@ -215,7 +197,7 @@
reqBody = []byte(`{"labels":{"Code-Review":1,"Commit-Queue":2},"message":"","reviewers":[{"reviewer":"reviewer@chromium.org"}]}`)
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/123/revisions/ps1/review", mockhttpclient.MockPostDialogue("application/json", reqBody, []byte("")))
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, err)
require.Equal(t, ci.Issue, issue)
}
diff --git a/autoroll/go/repo_manager/github_cipd_deps_repo_manager.go b/autoroll/go/repo_manager/github_cipd_deps_repo_manager.go
index 51e4d03..4497123 100644
--- a/autoroll/go/repo_manager/github_cipd_deps_repo_manager.go
+++ b/autoroll/go/repo_manager/github_cipd_deps_repo_manager.go
@@ -16,23 +16,6 @@
"go.skia.org/infra/go/skerr"
)
-const (
- TMPL_COMMIT_MSG_GITHUB_CIPD_DEPS = `Roll {{.ChildPath}} from {{.RollingFrom.String}} to {{.RollingTo.String}}
-
-If this roll has caused a breakage, revert this CL and stop the roller
-using the controls here:
-{{.ServerURL}}
-Please CC {{stringsJoin .Reviewers ","}} on the revert to ensure that a human
-is aware of the problem.
-
-To report a problem with the AutoRoller itself, please file a bug:
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
-
-Documentation for the AutoRoller is here:
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
-`
-)
-
// GithubCipdDEPSRepoManagerConfig provides configuration for the Github RepoManager.
type GithubCipdDEPSRepoManagerConfig struct {
GithubDEPSRepoManagerConfig
@@ -60,14 +43,6 @@
func (c GithubCipdDEPSRepoManagerConfig) splitParentChild() (parent.DEPSLocalConfig, child.CIPDConfig, error) {
parentCfg := parent.DEPSLocalConfig{
GitCheckoutConfig: parent.GitCheckoutConfig{
- BaseConfig: parent.BaseConfig{
- ChildPath: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.ChildPath,
- ChildRepo: c.CipdAssetName,
- IncludeBugs: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.IncludeBugs,
- IncludeLog: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.IncludeLog,
- CommitMsgTmpl: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.CommitMsgTmpl,
- MonorailProject: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.BugProject,
- },
GitCheckoutConfig: git_common.GitCheckoutConfig{
Branch: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.ParentBranch,
RepoURL: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.ParentRepo,
@@ -107,9 +82,6 @@
if err != nil {
return nil, skerr.Wrap(err)
}
- if parentCfg.CommitMsgTmpl == "" {
- parentCfg.CommitMsgTmpl = TMPL_COMMIT_MSG_GITHUB_CIPD_DEPS
- }
uploadRoll := parent.GitCheckoutUploadGithubRollFunc(githubClient, cr.UserName(), rollerName)
parentRM, err := parent.NewDEPSLocal(ctx, parentCfg, reg, httpClient, serverURL, workdir, cr.UserName(), cr.UserEmail(), recipeCfgFile, uploadRoll)
if err != nil {
diff --git a/autoroll/go/repo_manager/github_cipd_deps_repo_manager_test.go b/autoroll/go/repo_manager/github_cipd_deps_repo_manager_test.go
index 9f7116b..9493a21 100644
--- a/autoroll/go/repo_manager/github_cipd_deps_repo_manager_test.go
+++ b/autoroll/go/repo_manager/github_cipd_deps_repo_manager_test.go
@@ -204,7 +204,7 @@
// Create a roll.
mockGithubRequests(t, urlMock)
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, err)
require.Equal(t, issueNum, issue)
}
@@ -230,7 +230,7 @@
// Create a roll, assert that we ran the PreUploadSteps.
mockGithubRequests(t, urlMock)
- _, createErr := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ _, createErr := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, createErr)
require.True(t, ran)
}
@@ -256,7 +256,7 @@
// Create a roll, assert that we ran the PreUploadSteps.
mockGithubRequests(t, urlMock)
- _, createErr := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ _, createErr := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.Error(t, expectedErr, createErr)
require.True(t, ran)
}
diff --git a/autoroll/go/repo_manager/github_deps_repo_manager.go b/autoroll/go/repo_manager/github_deps_repo_manager.go
index d3ba9fc..723a380 100644
--- a/autoroll/go/repo_manager/github_deps_repo_manager.go
+++ b/autoroll/go/repo_manager/github_deps_repo_manager.go
@@ -58,14 +58,6 @@
}
parentCfg := parent.DEPSLocalConfig{
GitCheckoutConfig: parent.GitCheckoutConfig{
- BaseConfig: parent.BaseConfig{
- ChildPath: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.ChildPath,
- ChildRepo: c.ChildRepo,
- IncludeBugs: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.IncludeBugs,
- IncludeLog: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.IncludeLog,
- CommitMsgTmpl: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.CommitMsgTmpl,
- MonorailProject: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.BugProject,
- },
GitCheckoutConfig: git_common.GitCheckoutConfig{
Branch: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.ParentBranch,
RepoURL: c.DepotToolsRepoManagerConfig.CommonRepoManagerConfig.ParentRepo,
@@ -120,7 +112,7 @@
}
// Find the path to the child repo.
- childPath := filepath.Join(workdir, parentCfg.ChildPath)
+ childPath := filepath.Join(workdir, c.ChildPath)
childCheckout := &git.Checkout{GitDir: git.GitDir(childPath)}
childRM, err := child.NewGitCheckout(ctx, childCfg, reg, workdir, cr.UserName(), cr.UserEmail(), childCheckout)
if err != nil {
diff --git a/autoroll/go/repo_manager/github_deps_repo_manager_test.go b/autoroll/go/repo_manager/github_deps_repo_manager_test.go
index ab1e5ab..5d3b85f 100644
--- a/autoroll/go/repo_manager/github_deps_repo_manager_test.go
+++ b/autoroll/go/repo_manager/github_deps_repo_manager_test.go
@@ -209,7 +209,7 @@
// Create a roll, assert that it's at tip of tree.
mockGithubDEPSRequests(t, urlMock)
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, err)
require.Equal(t, issueNum, issue)
}
@@ -238,7 +238,7 @@
// Create a roll, assert that it's at tip of tree.
mockGithubDEPSRequests(t, urlMock)
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, err)
require.Equal(t, issueNum, issue)
}
@@ -262,7 +262,7 @@
// Create a roll, assert that we ran the PreUploadSteps.
mockGithubDEPSRequests(t, urlMock)
- _, createErr := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ _, createErr := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, createErr)
require.True(t, ran)
}
@@ -288,7 +288,7 @@
// Create a roll, assert that we ran the PreUploadSteps.
mockGithubDEPSRequests(t, urlMock)
- _, createErr := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ _, createErr := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.Error(t, expectedErr, createErr)
require.True(t, ran)
}
diff --git a/autoroll/go/repo_manager/github_repo_manager.go b/autoroll/go/repo_manager/github_repo_manager.go
index 6a938d7..74df322 100644
--- a/autoroll/go/repo_manager/github_repo_manager.go
+++ b/autoroll/go/repo_manager/github_repo_manager.go
@@ -57,14 +57,6 @@
parentCfg := parent.GitCheckoutGithubFileConfig{
GitCheckoutGithubConfig: parent.GitCheckoutGithubConfig{
GitCheckoutConfig: parent.GitCheckoutConfig{
- BaseConfig: parent.BaseConfig{
- ChildPath: c.CommonRepoManagerConfig.ChildPath,
- ChildRepo: c.ChildRepoURL,
- IncludeBugs: c.CommonRepoManagerConfig.IncludeBugs,
- IncludeLog: c.CommonRepoManagerConfig.IncludeLog,
- CommitMsgTmpl: c.CommonRepoManagerConfig.CommitMsgTmpl,
- MonorailProject: c.CommonRepoManagerConfig.BugProject,
- },
GitCheckoutConfig: git_common.GitCheckoutConfig{
Branch: c.ParentBranch,
RepoURL: c.ParentRepo,
diff --git a/autoroll/go/repo_manager/github_repo_manager_test.go b/autoroll/go/repo_manager/github_repo_manager_test.go
index 087a71a..8a183e2 100644
--- a/autoroll/go/repo_manager/github_repo_manager_test.go
+++ b/autoroll/go/repo_manager/github_repo_manager_test.go
@@ -209,7 +209,7 @@
// Create a roll.
mockGithubRequests(t, urlMock)
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, err)
require.Equal(t, issueNum, issue)
}
@@ -234,7 +234,7 @@
// Create a roll, assert that we ran the PreUploadSteps.
mockGithubRequests(t, urlMock)
- _, createErr := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ _, createErr := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, createErr)
require.True(t, ran)
}
@@ -261,7 +261,7 @@
// Create a roll, assert that we ran the PreUploadSteps.
mockGithubRequests(t, urlMock)
- _, createErr := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ _, createErr := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.Error(t, expectedErr, createErr)
require.True(t, ran)
}
diff --git a/autoroll/go/repo_manager/gitiles_cipd_deps_repo_manager.go b/autoroll/go/repo_manager/gitiles_cipd_deps_repo_manager.go
index 946dabb..1887333 100644
--- a/autoroll/go/repo_manager/gitiles_cipd_deps_repo_manager.go
+++ b/autoroll/go/repo_manager/gitiles_cipd_deps_repo_manager.go
@@ -49,14 +49,6 @@
// and child. We shouldn't need most of the New.*RepoManager functions.
func (c GitilesCIPDDEPSRepoManagerConfig) splitParentChild() (parent.GitilesConfig, child.CIPDConfig, error) {
parentCfg := parent.GitilesConfig{
- BaseConfig: parent.BaseConfig{
- ChildPath: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.ChildPath,
- ChildRepo: c.CipdAssetName,
- IncludeBugs: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.IncludeBugs,
- IncludeLog: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.IncludeLog,
- CommitMsgTmpl: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.CommitMsgTmpl,
- MonorailProject: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.BugProject,
- },
DependencyConfig: version_file_common.DependencyConfig{
VersionFileConfig: version_file_common.VersionFileConfig{
ID: c.CipdAssetName,
diff --git a/autoroll/go/repo_manager/no_checkout_deps_repo_manager.go b/autoroll/go/repo_manager/no_checkout_deps_repo_manager.go
index 9fb7e67..dd97f8b 100644
--- a/autoroll/go/repo_manager/no_checkout_deps_repo_manager.go
+++ b/autoroll/go/repo_manager/no_checkout_deps_repo_manager.go
@@ -82,14 +82,6 @@
}
}
parentCfg := parent.GitilesConfig{
- BaseConfig: parent.BaseConfig{
- ChildPath: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.ChildPath,
- ChildRepo: c.ChildRepo,
- IncludeBugs: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.IncludeBugs,
- IncludeLog: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.IncludeLog,
- CommitMsgTmpl: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.CommitMsgTmpl,
- MonorailProject: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.BugProject,
- },
DependencyConfig: version_file_common.DependencyConfig{
VersionFileConfig: version_file_common.VersionFileConfig{
ID: c.ChildRepo,
diff --git a/autoroll/go/repo_manager/no_checkout_deps_repo_manager_test.go b/autoroll/go/repo_manager/no_checkout_deps_repo_manager_test.go
index 9f2834b..1a3530b 100644
--- a/autoroll/go/repo_manager/no_checkout_deps_repo_manager_test.go
+++ b/autoroll/go/repo_manager/no_checkout_deps_repo_manager_test.go
@@ -176,43 +176,7 @@
mockParent.MockReadFile(ctx, "DEPS", parentMaster)
// Mock the initial change creation.
- logStr := ""
- childGitRepo := git.GitDir(childRepo.Dir())
- for _, c := range notRolledRevs {
- details, err := childGitRepo.Details(ctx, c.Id)
- require.NoError(t, err)
- ts := details.Timestamp.Format("2006-01-02")
- author := details.Author
- authorSplit := strings.Split(details.Author, "(")
- if len(authorSplit) > 1 {
- author = strings.TrimRight(strings.TrimSpace(authorSplit[1]), ")")
- }
- logStr += fmt.Sprintf("%s %s %s\n", ts, author, details.Subject)
- }
- commitMsg := fmt.Sprintf(`Roll %s %s..%s (%d commits)
-
-%s/+log/%s..%s
-
-git log %s..%s --date=short --first-parent --format='%%ad %%ae %%s'
-%s
-Created with:
- gclient setdep -r %s@%s
-
-If this roll has caused a breakage, revert this CL and stop the roller
-using the controls here:
-fake.server.com
-Please CC me@google.com on the revert to ensure that a human
-is aware of the problem.
-
-To report a problem with the AutoRoller itself, please file a bug:
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
-
-Documentation for the AutoRoller is here:
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
-
-Bug: None
-Tbr: me@google.com`, childPath, lastRollRev.Id[:12], tipRev.Id[:12], len(notRolledRevs), childRepo.RepoUrl(), lastRollRev.Id[:12], tipRev.Id[:12], lastRollRev.Id[:12], tipRev.Id[:12], logStr, childPath, tipRev.Id[:12])
- subject := strings.Split(commitMsg, "\n")[0]
+ subject := strings.Split(fakeCommitMsg, "\n")[0]
reqBody := []byte(fmt.Sprintf(`{"project":"%s","subject":"%s","branch":"%s","topic":"","status":"NEW","base_commit":"%s"}`, "fake-gerrit-project", subject, "master", parentMaster))
ci := gerrit.ChangeInfo{
ChangeId: "123",
@@ -232,7 +196,7 @@
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/", mockhttpclient.MockPostDialogueWithResponseCode("application/json", reqBody, respBody, 201))
// Mock the edit of the change to update the commit message.
- reqBody = []byte(fmt.Sprintf(`{"message":"%s"}`, strings.Replace(commitMsg, "\n", "\\n", -1)))
+ reqBody = []byte(fmt.Sprintf(`{"message":"%s"}`, strings.Replace(fakeCommitMsg, "\n", "\\n", -1)))
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/123/edit:message", mockhttpclient.MockPutDialogue("application/json", reqBody, []byte("")))
// Mock the request to modify the DEPS file.
@@ -269,7 +233,7 @@
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/123/submit", mockhttpclient.MockPostDialogue("application/json", []byte("{}"), []byte("")))
}
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, []string{"me@google.com"}, "", false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, []string{"me@google.com"}, false, fakeCommitMsg)
require.NoError(t, err)
require.NotEqual(t, 0, issue)
}
@@ -338,33 +302,7 @@
}
logStr += fmt.Sprintf("%s %s %s\n", ts, author, details.Subject)
}
- commitMsg := fmt.Sprintf(`Roll %s %s..%s (%d commits)
-
-%s/+log/%s..%s
-
-git log %s..%s --date=short --first-parent --format='%%ad %%ae %%s'
-%s
-Also rolling transitive DEPS:
- https://grandchild-in-parent abc1230000ab..def4560000de
-
-Created with:
- gclient setdep -r %s@%s
-
-If this roll has caused a breakage, revert this CL and stop the roller
-using the controls here:
-fake.server.com
-Please CC me@google.com on the revert to ensure that a human
-is aware of the problem.
-
-To report a problem with the AutoRoller itself, please file a bug:
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
-
-Documentation for the AutoRoller is here:
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
-
-Bug: None
-Tbr: me@google.com`, childPath, lastRollRev.Id[:12], tipRev.Id[:12], len(notRolledRevs), childRepo.RepoUrl(), lastRollRev.Id[:12], tipRev.Id[:12], lastRollRev.Id[:12], tipRev.Id[:12], logStr, childPath, tipRev.Id[:12])
- subject := strings.Split(commitMsg, "\n")[0]
+ subject := strings.Split(fakeCommitMsg, "\n")[0]
reqBody := []byte(fmt.Sprintf(`{"project":"%s","subject":"%s","branch":"%s","topic":"","status":"NEW","base_commit":"%s"}`, "fake-gerrit-project", subject, "master", parentMaster))
ci := gerrit.ChangeInfo{
ChangeId: "123",
@@ -384,7 +322,7 @@
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/", mockhttpclient.MockPostDialogueWithResponseCode("application/json", reqBody, respBody, 201))
// Mock the edit of the change to update the commit message.
- reqBody = []byte(fmt.Sprintf(`{"message":"%s"}`, strings.Replace(commitMsg, "\n", "\\n", -1)))
+ reqBody = []byte(fmt.Sprintf(`{"message":"%s"}`, strings.Replace(fakeCommitMsg, "\n", "\\n", -1)))
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/123/edit:message", mockhttpclient.MockPutDialogue("application/json", reqBody, []byte("")))
// Mock the request to modify the DEPS file.
@@ -413,7 +351,7 @@
reqBody = []byte(`{"labels":{"Code-Review":1,"Commit-Queue":2},"message":"","reviewers":[{"reviewer":"me@google.com"}]}`)
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/123/revisions/ps1/review", mockhttpclient.MockPostDialogue("application/json", reqBody, []byte("")))
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, []string{"me@google.com"}, "", false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, []string{"me@google.com"}, false, fakeCommitMsg)
require.NoError(t, err)
require.NotEqual(t, 0, issue)
}
diff --git a/autoroll/go/repo_manager/parent/commit_msg.go b/autoroll/go/repo_manager/parent/commit_msg.go
deleted file mode 100644
index fe8dc94..0000000
--- a/autoroll/go/repo_manager/parent/commit_msg.go
+++ /dev/null
@@ -1,124 +0,0 @@
-package parent
-
-import (
- "bytes"
- "strings"
- "text/template"
-
- "go.skia.org/infra/autoroll/go/repo_manager/common/version_file_common"
- "go.skia.org/infra/autoroll/go/revision"
- "go.skia.org/infra/go/skerr"
-)
-
-const (
- TMPL_COMMIT_MSG_DEFAULT = `Roll {{.ChildPath}} {{.RollingFrom.String}}..{{.RollingTo.String}} ({{len .Revisions}} commits)
-
-{{.ChildRepo}}/+log/{{.RollingFrom.String}}..{{.RollingTo.String}}
-
-{{if .IncludeLog}}git log {{.RollingFrom}}..{{.RollingTo}} --date=short --first-parent --format='%ad %ae %s'
-{{range .Revisions}}{{.Timestamp.Format "2006-01-02"}} {{.Author}} {{.Description}}
-{{end}}{{end}}{{if len .TransitiveDeps}}
-Also rolling transitive DEPS:
-{{range .TransitiveDeps}} {{.Dep}} {{substr .RollingFrom 0 12}}..{{substr .RollingTo 0 12}}
-{{end}}{{end}}
-Created with:
- gclient setdep -r {{.ChildPath}}@{{.RollingTo}}
-
-If this roll has caused a breakage, revert this CL and stop the roller
-using the controls here:
-{{.ServerURL}}
-Please CC {{stringsJoin .Reviewers ","}} on the revert to ensure that a human
-is aware of the problem.
-
-To report a problem with the AutoRoller itself, please file a bug:
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
-
-Documentation for the AutoRoller is here:
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
-
-{{if .CqExtraTrybots}}Cq-Include-Trybots: {{.CqExtraTrybots}}
-{{end}}Bug: {{if .Bugs}}{{stringsJoin .Bugs ","}}{{else}}None{{end}}
-Tbr: {{stringsJoin .Reviewers ","}}`
-)
-
-// CommitMsgVars contains variables used to fill in a commit message template.
-type CommitMsgVars struct {
- Bugs []string
- ChildPath string
- ChildRepo string
- CqExtraTrybots string
- IncludeLog bool
- Reviewers []string
- Revisions []*revision.Revision
- RollingFrom *revision.Revision
- RollingTo *revision.Revision
- ServerURL string
- Tests []string
- TransitiveDeps []*version_file_common.TransitiveDepUpdate
-}
-
-// ParseCommitMsgTemplate parses the given commit message template string and
-// returns a Template instance.
-func ParseCommitMsgTemplate(tmpl string) (*template.Template, error) {
- return template.New("commitMsg").Funcs(template.FuncMap{
- "stringsJoin": strings.Join,
- "substr": func(s string, a, b int) string {
- if a > len(s) {
- return ""
- }
- if b > len(s) {
- b = len(s)
- }
- return s[a:b]
- },
- }).Parse(tmpl)
-}
-
-// ValidateCommitMsgTemplate returns an error if the given commit message
-// template cannot be parsed and executed with a typical set of inputs.
-func ValidateCommitMsgTemplate(tmpl string) error {
- t, err := ParseCommitMsgTemplate(tmpl)
- if err != nil {
- return skerr.Wrapf(err, "Failed to parse template")
- }
- a := &revision.Revision{
- Id: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
- Display: "aaaaaaaaaaaa",
- Author: "a@google.com",
- }
- b := &revision.Revision{
- Id: "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
- Display: "bbbbbbbbbbbb",
- Author: "b@google.com",
- }
- c := &revision.Revision{
- Id: "cccccccccccccccccccccccccccccccccccccccc",
- Display: "cccccccccccc",
- Author: "c@google.com",
- }
- vars := &CommitMsgVars{
- Bugs: []string{"skia:1234"},
- ChildPath: "path/to/child",
- ChildRepo: "https://child-repo.git",
- CqExtraTrybots: "extra-bot",
- IncludeLog: true,
- Reviewers: []string{"me@google.com"},
- Revisions: []*revision.Revision{b, c},
- RollingFrom: a,
- RollingTo: c,
- ServerURL: "https://fake.server.url",
- Tests: []string{"some-test"},
- TransitiveDeps: []*version_file_common.TransitiveDepUpdate{
- {
- Dep: "path/to/other",
- RollingFrom: "dddddddddddddddddddddddddddddddddddddddd",
- RollingTo: "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
- },
- },
- }
- var buf bytes.Buffer
- if err := t.Execute(&buf, vars); err != nil {
- return err
- }
- return nil
-}
diff --git a/autoroll/go/repo_manager/parent/freetype.go b/autoroll/go/repo_manager/parent/freetype.go
index d921f38..a655d6e 100644
--- a/autoroll/go/repo_manager/parent/freetype.go
+++ b/autoroll/go/repo_manager/parent/freetype.go
@@ -14,7 +14,6 @@
"go.skia.org/infra/autoroll/go/config_vars"
"go.skia.org/infra/autoroll/go/repo_manager/common/gitiles_common"
- "go.skia.org/infra/autoroll/go/repo_manager/common/version_file_common"
"go.skia.org/infra/autoroll/go/revision"
"go.skia.org/infra/go/git"
"go.skia.org/infra/go/skerr"
@@ -41,30 +40,30 @@
)
func NewFreeTypeParent(ctx context.Context, c GitilesConfig, reg *config_vars.Registry, workdir string, client *http.Client, serverURL string) (*gitilesParent, error) {
- localChildRepo, err := git.NewRepo(ctx, c.ChildRepo, workdir)
+ localChildRepo, err := git.NewRepo(ctx, c.DependencyConfig.ID, workdir)
if err != nil {
return nil, err
}
getChangesHelper := gitilesFileGetChangesForRollFunc(c.DependencyConfig)
- getChangesForRoll := func(ctx context.Context, parentRepo *gitiles_common.GitilesRepo, baseCommit string, from, to *revision.Revision, rolling []*revision.Revision) (map[string]string, []*version_file_common.TransitiveDepUpdate, error) {
+ getChangesForRoll := func(ctx context.Context, parentRepo *gitiles_common.GitilesRepo, baseCommit string, from, to *revision.Revision, rolling []*revision.Revision) (map[string]string, error) {
// Get the DEPS changes via gitilesDEPSGetChangesForRollFunc.
- changes, transitiveDeps, err := getChangesHelper(ctx, parentRepo, baseCommit, from, to, rolling)
+ changes, err := getChangesHelper(ctx, parentRepo, baseCommit, from, to, rolling)
if err != nil {
- return nil, nil, skerr.Wrap(err)
+ return nil, skerr.Wrap(err)
}
// Update README.chromium.
if err := localChildRepo.Update(ctx); err != nil {
- return nil, nil, skerr.Wrap(err)
+ return nil, skerr.Wrap(err)
}
ftVersion, err := localChildRepo.Git(ctx, "describe", "--long", to.Id)
if err != nil {
- return nil, nil, skerr.Wrap(err)
+ return nil, skerr.Wrap(err)
}
ftVersion = strings.TrimSpace(ftVersion)
var buf bytes.Buffer
if err := parentRepo.ReadFileAtRef(ctx, FtReadmePath, baseCommit, &buf); err != nil {
- return nil, nil, skerr.Wrap(err)
+ return nil, skerr.Wrap(err)
}
oldReadmeContents := buf.String()
newReadmeContents := FtReadmeVersionRegex.ReplaceAllString(oldReadmeContents, fmt.Sprintf(FtReadmeVersionTmpl, "", ftVersion))
@@ -76,19 +75,19 @@
// Merge includes.
for _, include := range FtIncludesToMerge {
if err := mergeInclude(ctx, include, from.Id, to.Id, baseCommit, changes, parentRepo, localChildRepo); err != nil {
- return nil, nil, skerr.Wrap(err)
+ return nil, skerr.Wrap(err)
}
}
// Check modules.cfg. Give up if it has changed.
diff, err := localChildRepo.Git(ctx, "diff", "--name-only", git.LogFromTo(from.Id, to.Id))
if err != nil {
- return nil, nil, err
+ return nil, err
}
if strings.Contains(diff, "modules.cfg") {
- return nil, nil, skerr.Fmt("modules.cfg has been modified; cannot roll automatically.")
+ return nil, skerr.Fmt("modules.cfg has been modified; cannot roll automatically.")
}
- return changes, transitiveDeps, nil
+ return changes, nil
}
return newGitiles(ctx, c, reg, client, serverURL, getChangesForRoll)
}
diff --git a/autoroll/go/repo_manager/parent/git_checkout.go b/autoroll/go/repo_manager/parent/git_checkout.go
index e3f7f09..bd30b8b 100644
--- a/autoroll/go/repo_manager/parent/git_checkout.go
+++ b/autoroll/go/repo_manager/parent/git_checkout.go
@@ -28,16 +28,12 @@
// GitCheckoutConfig provides configuration for a Parent which uses a local
// checkout to create changes.
type GitCheckoutConfig struct {
- BaseConfig
git_common.GitCheckoutConfig
version_file_common.DependencyConfig
}
// See documentation for util.Validator interface.
func (c GitCheckoutConfig) Validate() error {
- if err := c.BaseConfig.Validate(); err != nil {
- return skerr.Wrap(err)
- }
if err := c.GitCheckoutConfig.Validate(); err != nil {
return skerr.Wrap(err)
}
@@ -53,7 +49,6 @@
// GitCheckoutParent is a base for implementations of Parent which use a local
// Git checkout.
type GitCheckoutParent struct {
- *baseParent
*git_common.Checkout
childID string
createRoll GitCheckoutCreateRollFunc
@@ -75,11 +70,6 @@
if err := c.Validate(); err != nil {
return nil, skerr.Wrap(err)
}
- // Create a baseParent.
- base, err := newBaseParent(ctx, c.BaseConfig, serverURL)
- if err != nil {
- return nil, skerr.Wrap(err)
- }
// Create the local checkout.
deps := make([]*version_file_common.VersionFileConfig, 0, len(c.DependencyConfig.TransitiveDeps)+1)
deps = append(deps, &c.DependencyConfig.VersionFileConfig)
@@ -92,7 +82,6 @@
return nil, skerr.Wrap(err)
}
return &GitCheckoutParent{
- baseParent: base,
Checkout: checkout,
childID: c.DependencyConfig.ID,
createRoll: createRoll,
@@ -114,7 +103,7 @@
}
// See documentation for Parent interface.
-func (p *GitCheckoutParent) CreateNewRoll(ctx context.Context, from, to *revision.Revision, rolling []*revision.Revision, emails []string, cqExtraTrybots string, dryRun bool) (int64, error) {
+func (p *GitCheckoutParent) CreateNewRoll(ctx context.Context, from, to *revision.Revision, rolling []*revision.Revision, emails []string, dryRun bool, commitMsg string) (int64, error) {
// Create the roll branch.
_, upstreamBranch, err := p.Checkout.Update(ctx)
if err != nil {
@@ -128,13 +117,6 @@
return 0, skerr.Wrap(err)
}
- // Generate the commit message.
- // TODO(borenet): This should probably move into parentChildRepoManager.
- commitMsg, err := p.buildCommitMsg(from, to, rolling, emails, cqExtraTrybots, nil)
- if err != nil {
- return 0, skerr.Wrap(err)
- }
-
// Run the provided function to create the changes for the roll.
hash, err := p.createRoll(ctx, p.Checkout.Checkout, from, to, rolling, commitMsg)
if err != nil {
@@ -174,7 +156,7 @@
getFile := func(ctx context.Context, path string) (string, error) {
return co.GetFile(ctx, path, "HEAD")
}
- changes, _, err := version_file_common.UpdateDep(ctx, dep, to, getFile)
+ changes, err := version_file_common.UpdateDep(ctx, dep, to, getFile)
if err != nil {
return "", skerr.Wrap(err)
}
diff --git a/autoroll/go/repo_manager/parent/git_checkout_github.go b/autoroll/go/repo_manager/parent/git_checkout_github.go
index 07e42b1..9816e7c 100644
--- a/autoroll/go/repo_manager/parent/git_checkout_github.go
+++ b/autoroll/go/repo_manager/parent/git_checkout_github.go
@@ -12,31 +12,6 @@
)
const (
- TMPL_COMMIT_MSG_GITHUB = `Roll {{.ChildPath}} {{.RollingFrom.String}}..{{.RollingTo.String}} ({{len .Revisions}} commits)
-
-{{.ChildRepo}}/compare/{{.RollingFrom.String}}...{{.RollingTo.String}}
-
-{{if .IncludeLog}}git log {{.RollingFrom}}..{{.RollingTo}} --first-parent --oneline
-{{range .Revisions}}{{.Timestamp.Format "2006-01-02"}} {{.Author}} {{.Description}}
-{{end}}{{end}}{{if len .TransitiveDeps}}
-Also rolling transitive DEPS:
-{{range .TransitiveDeps}} {{.Dep}} {{.RollingFrom}}..{{.RollingTo}}
-{{end}}{{end}}
-
-If this roll has caused a breakage, revert this CL and stop the roller
-using the controls here:
-{{.ServerURL}}
-Please CC {{stringsJoin .Reviewers ","}} on the revert to ensure that a human
-is aware of the problem.
-
-To report a problem with the AutoRoller itself, please file a bug:
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
-
-Documentation for the AutoRoller is here:
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
-
-`
-
githubForkRemoteName = "fork"
)
@@ -111,9 +86,6 @@
if err := c.Validate(); err != nil {
return nil, skerr.Wrap(err)
}
- if c.CommitMsgTmpl == "" {
- c.CommitMsgTmpl = TMPL_COMMIT_MSG_GITHUB
- }
// See documentation for GitCheckoutUploadRollFunc.
uploadRoll := GitCheckoutUploadGithubRollFunc(githubClient, userName, c.ForkBranchName)
diff --git a/autoroll/go/repo_manager/parent/gitiles.go b/autoroll/go/repo_manager/parent/gitiles.go
index 8fb21cc..825dd48 100644
--- a/autoroll/go/repo_manager/parent/gitiles.go
+++ b/autoroll/go/repo_manager/parent/gitiles.go
@@ -22,7 +22,6 @@
// GitilesConfig provides configuration for a Parent which uses Gitiles.
type GitilesConfig struct {
- BaseConfig
gitiles_common.GitilesConfig
version_file_common.DependencyConfig
// Gerrit provides configuration for the Gerrit instance used for
@@ -32,9 +31,6 @@
// See documentation for util.Validator interface.
func (c GitilesConfig) Validate() error {
- if err := c.BaseConfig.Validate(); err != nil {
- return skerr.Wrap(err)
- }
if c.Gerrit == nil {
return skerr.Fmt("Gerrit is required")
}
@@ -57,11 +53,10 @@
// roll. These are returned in a map[string]string whose keys are file paths
// within the repo and values are the new whole contents of the files. Also
// returns any dependencies which are being transitively rolled.
-type gitilesGetChangesForRollFunc func(context.Context, *gitiles_common.GitilesRepo, string, *revision.Revision, *revision.Revision, []*revision.Revision) (map[string]string, []*version_file_common.TransitiveDepUpdate, error)
+type gitilesGetChangesForRollFunc func(context.Context, *gitiles_common.GitilesRepo, string, *revision.Revision, *revision.Revision, []*revision.Revision) (map[string]string, error)
// gitilesParent is a base for implementations of Parent which use Gitiles.
type gitilesParent struct {
- *baseParent
*gitiles_common.GitilesRepo
childID string
gerrit gerrit.GerritInterface
@@ -100,12 +95,7 @@
if err != nil {
return nil, skerr.Wrapf(err, "Failed to create Gerrit client")
}
- base, err := newBaseParent(ctx, c.BaseConfig, serverURL)
- if err != nil {
- return nil, skerr.Wrap(err)
- }
return &gitilesParent{
- baseParent: base,
childID: c.DependencyConfig.ID,
GitilesRepo: gr,
gerrit: g,
@@ -134,20 +124,14 @@
}
// See documentation for Parent interface.
-func (p *gitilesParent) CreateNewRoll(ctx context.Context, from, to *revision.Revision, rolling []*revision.Revision, emails []string, cqExtraTrybots string, dryRun bool) (int64, error) {
+func (p *gitilesParent) CreateNewRoll(ctx context.Context, from, to *revision.Revision, rolling []*revision.Revision, emails []string, dryRun bool, commitMsg string) (int64, error) {
p.baseCommitMtx.Lock()
defer p.baseCommitMtx.Unlock()
- nextRollChanges, transitiveDeps, err := p.getChangesForRoll(ctx, p.GitilesRepo, p.baseCommit, from, to, rolling)
+ nextRollChanges, err := p.getChangesForRoll(ctx, p.GitilesRepo, p.baseCommit, from, to, rolling)
if err != nil {
return 0, skerr.Wrapf(err, "getChangesForRoll func failed")
}
-
- commitMsg, err := p.buildCommitMsg(from, to, rolling, emails, cqExtraTrybots, transitiveDeps)
- if err != nil {
- return 0, skerr.Wrap(err)
- }
-
return CreateNewGerritRoll(ctx, p.gerrit, p.gerritConfig.Project, p.Branch(), commitMsg, p.baseCommit, nextRollChanges, emails, dryRun)
}
diff --git a/autoroll/go/repo_manager/parent/gitiles_file.go b/autoroll/go/repo_manager/parent/gitiles_file.go
index d78ac63..b76e770 100644
--- a/autoroll/go/repo_manager/parent/gitiles_file.go
+++ b/autoroll/go/repo_manager/parent/gitiles_file.go
@@ -14,7 +14,7 @@
// gitilesFileGetChangesForRollFunc returns a gitilesGetChangesForRollFunc which
// update the given file.
func gitilesFileGetChangesForRollFunc(dep version_file_common.DependencyConfig) gitilesGetChangesForRollFunc {
- return func(ctx context.Context, repo *gitiles_common.GitilesRepo, baseCommit string, from, to *revision.Revision, rolling []*revision.Revision) (map[string]string, []*version_file_common.TransitiveDepUpdate, error) {
+ return func(ctx context.Context, repo *gitiles_common.GitilesRepo, baseCommit string, from, to *revision.Revision, rolling []*revision.Revision) (map[string]string, error) {
getFile := func(ctx context.Context, path string) (string, error) {
return repo.GetFile(ctx, path, baseCommit)
}
diff --git a/autoroll/go/repo_manager/parent/parent.go b/autoroll/go/repo_manager/parent/parent.go
index 29800c6..599c155 100644
--- a/autoroll/go/repo_manager/parent/parent.go
+++ b/autoroll/go/repo_manager/parent/parent.go
@@ -5,16 +5,9 @@
*/
import (
- "bytes"
"context"
- "fmt"
- "sort"
- "text/template"
- "go.skia.org/infra/autoroll/go/repo_manager/common/version_file_common"
"go.skia.org/infra/autoroll/go/revision"
- "go.skia.org/infra/go/skerr"
- "go.skia.org/infra/go/util"
)
// Parent represents a git repo (or other destination) which depends on a Child
@@ -27,144 +20,5 @@
// CreateNewRoll uploads a CL which updates the pinned version of the
// dependency to the given Revision.
- CreateNewRoll(ctx context.Context, from, to *revision.Revision, rolling []*revision.Revision, emails []string, cqExtraTrybots string, dryRun bool) (int64, error)
-}
-
-// BaseConfig provides common configuration for all implementations of Parent.
-// It is intended to be embedded in the various Parent Config types.
-type BaseConfig struct {
- // Required fields.
-
- // If false, roll CLs do not link to bugs referenced by the Revisions
- // in the roll.
- IncludeBugs bool `json:"includeBugs"`
- // If true, include the "git log" (or other revision details) in the
- // commit message. This should be false for internal -> external rollers
- // to avoid leaking internal commit messages.
- IncludeLog bool `json:"includeLog"`
-
- // TODO(borenet): These fields are not applicable to some rollers, but
- // they're needed for CommitMsgVars. We should probably revisit how we
- // build commit messages.
- ChildPath string `json:"childPath"`
- ChildRepo string `json:"childRepo"`
-
- // Optional fields.
-
- // CommitMsgTmpl is a template used to build commit messages. See the
- // parent.CommitMsgVars type for more information.
- CommitMsgTmpl string `json:"commitMsgTmpl"`
-
- // Monorail project name associated with the Parent.
- // TODO(borenet): Add a BugFramework interface to support other
- // frameworks (eg. Buganizer, GitHub).
- MonorailProject string `json:"monorailProject,omitempty"`
-}
-
-// See documentation for util.Validator interface.
-func (c BaseConfig) Validate() error {
- if c.ChildPath == "" {
- return skerr.Fmt("ChildPath is required")
- }
- if c.ChildRepo == "" {
- return skerr.Fmt("ChildRepo is required")
- }
- // All other fields are booleans or optional.
- return nil
-}
-
-// baseParent provides common functionality for all implementations of Parent.
-type baseParent struct {
- childPath string
- childRepoUrl string
- commitMsgTmpl *template.Template
- includeBugs bool
- includeLog bool
- monorailProject string
- serverUrl string
-}
-
-func newBaseParent(ctx context.Context, c BaseConfig, serverUrl string) (*baseParent, error) {
- commitMsgTmplStr := TMPL_COMMIT_MSG_DEFAULT
- if c.CommitMsgTmpl != "" {
- commitMsgTmplStr = c.CommitMsgTmpl
- }
- commitMsgTmpl, err := ParseCommitMsgTemplate(commitMsgTmplStr)
- if err != nil {
- return nil, err
- }
- return &baseParent{
- childPath: c.ChildPath,
- childRepoUrl: c.ChildRepo,
- commitMsgTmpl: commitMsgTmpl,
- includeBugs: c.IncludeBugs,
- includeLog: c.IncludeLog,
- monorailProject: c.MonorailProject,
- serverUrl: serverUrl,
- }, nil
-}
-
-// buildCommitMsg is a helper function used to create commit messages.
-func (p *baseParent) buildCommitMsg(from, to *revision.Revision, rolling []*revision.Revision, reviewers []string, cqExtraTrybots string, transitiveDeps []*version_file_common.TransitiveDepUpdate) (string, error) {
- // Basic variables.
- vars := &CommitMsgVars{
- ChildPath: p.childPath,
- ChildRepo: p.childRepoUrl,
- CqExtraTrybots: cqExtraTrybots,
- Reviewers: reviewers,
- Revisions: rolling,
- RollingFrom: from,
- RollingTo: to,
- ServerURL: p.serverUrl,
- TransitiveDeps: transitiveDeps,
- }
-
- // Bugs.
- vars.Bugs = nil
- if p.includeBugs {
- // TODO(borenet): Move this to a util.MakeBugLines utility?
- bugMap := map[string]bool{}
- for _, rev := range vars.Revisions {
- for _, bug := range rev.Bugs[p.monorailProject] {
- bugMap[bug] = true
- }
- }
- if len(bugMap) > 0 {
- vars.Bugs = make([]string, 0, len(bugMap))
- for bug := range bugMap {
- bugStr := fmt.Sprintf("%s:%s", p.monorailProject, bug)
- if p.monorailProject == util.BUG_PROJECT_BUGANIZER {
- bugStr = fmt.Sprintf("b/%s", bug)
- }
- vars.Bugs = append(vars.Bugs, bugStr)
- }
- sort.Strings(vars.Bugs)
- }
- }
-
- // IncludeLog.
- vars.IncludeLog = p.includeLog
-
- // Tests.
- vars.Tests = nil
- testsMap := map[string]bool{}
- for _, rev := range vars.Revisions {
- for _, test := range rev.Tests {
- testsMap[test] = true
- }
- }
- if len(testsMap) > 0 {
- vars.Tests = make([]string, 0, len(testsMap))
- for test := range testsMap {
- vars.Tests = append(vars.Tests, test)
- }
- sort.Strings(vars.Tests)
- }
-
- // Create the commit message.
- var buf bytes.Buffer
- if err := p.commitMsgTmpl.Execute(&buf, vars); err != nil {
- return "", err
- }
- return buf.String(), nil
+ CreateNewRoll(ctx context.Context, from, to *revision.Revision, rolling []*revision.Revision, emails []string, dryRun bool, commitMsg string) (int64, error)
}
diff --git a/autoroll/go/repo_manager/repo_manager.go b/autoroll/go/repo_manager/repo_manager.go
index 96c1b94..11860be 100644
--- a/autoroll/go/repo_manager/repo_manager.go
+++ b/autoroll/go/repo_manager/repo_manager.go
@@ -1,30 +1,23 @@
package repo_manager
import (
- "bytes"
"context"
"errors"
"fmt"
"net/http"
"os"
"path"
- "sort"
- "strings"
"sync"
- "text/template"
"go.skia.org/infra/autoroll/go/codereview"
"go.skia.org/infra/autoroll/go/config_vars"
"go.skia.org/infra/autoroll/go/repo_manager/parent"
"go.skia.org/infra/autoroll/go/revision"
"go.skia.org/infra/autoroll/go/strategy"
- "go.skia.org/infra/go/depot_tools"
- "go.skia.org/infra/go/exec"
"go.skia.org/infra/go/gerrit"
"go.skia.org/infra/go/git"
"go.skia.org/infra/go/issues"
"go.skia.org/infra/go/skerr"
- "go.skia.org/infra/go/util"
"go.skia.org/infra/go/vcsinfo"
)
@@ -38,7 +31,7 @@
// to manage checkouts.
type RepoManager interface {
// Create a new roll attempt.
- CreateNewRoll(context.Context, *revision.Revision, *revision.Revision, []*revision.Revision, []string, string, bool) (int64, error)
+ CreateNewRoll(ctx context.Context, rollingFrom *revision.Revision, rollingTo *revision.Revision, revisions []*revision.Revision, reviewers []string, dryRun bool, commitMsg string) (int64, error)
// Update the RepoManager's view of the world. Depending on the
// implementation, this may sync repos and may take some time. Returns
@@ -61,9 +54,6 @@
ChildBranch *config_vars.Template `json:"childBranch"`
// Path of the child repo within the parent repo.
ChildPath string `json:"childPath"`
- // If false, roll CLs do not link to bugs from the commits in the child
- // repo.
- IncludeBugs bool `json:"includeBugs"`
// If true, include the "git log" (or other revision details) in the
// commit message. This should be false for internal -> external rollers
// to avoid leaking internal commit messages.
@@ -78,9 +68,6 @@
// ChildRevLinkTmpl is a template used to create links to revisions of
// the child repo. If not supplied, no links will be created.
ChildRevLinkTmpl string `json:"childRevLinkTmpl"`
- // CommitMsgTmpl is a template used to build commit messages. See the
- // parent.CommitMsgVars type for more information.
- CommitMsgTmpl string `json:"commitMsgTmpl"`
// ChildSubdir indicates the subdirectory of the workdir in which
// the childPath should be rooted. In most cases, this should be empty,
// but if ChildPath is relative to the parent repo dir (eg. when DEPS
@@ -112,9 +99,6 @@
if c.ParentRepo == "" {
return errors.New("ParentRepo is required.")
}
- if c.IncludeBugs && c.BugProject == "" {
- return errors.New("IncludeBugs is true, but BugProject is empty.")
- }
if proj := issues.REPO_PROJECT_MAPPING[c.ParentRepo]; proj != "" && c.BugProject != "" && proj != c.BugProject {
return errors.New("BugProject is non-empty but does not match the entry in issues.REPO_PROJECT_MAPPING.")
}
@@ -152,19 +136,11 @@
childPath string
childRepo *git.Checkout
childRevLinkTmpl string
- childSubdir string
- codereview codereview.CodeReview
- commitMsgTmpl *template.Template
g gerrit.GerritInterface
httpClient *http.Client
- includeBugs bool
- includeLog bool
- local bool
- bugProject string
parentBranch *config_vars.Template
preUploadSteps []parent.PreUploadStep
repoMtx sync.RWMutex
- serverURL string
workdir string
}
@@ -191,14 +167,6 @@
if err != nil {
return nil, err
}
- commitMsgTmplStr := parent.TMPL_COMMIT_MSG_DEFAULT
- if c.CommitMsgTmpl != "" {
- commitMsgTmplStr = c.CommitMsgTmpl
- }
- commitMsgTmpl, err := parent.ParseCommitMsgTemplate(commitMsgTmplStr)
- if err != nil {
- return nil, err
- }
if err := reg.Register(c.ChildBranch); err != nil {
return nil, err
}
@@ -211,18 +179,10 @@
childPath: c.ChildPath,
childRepo: childRepo,
childRevLinkTmpl: c.ChildRevLinkTmpl,
- childSubdir: c.ChildSubdir,
- codereview: cr,
- commitMsgTmpl: commitMsgTmpl,
g: g,
httpClient: client,
- includeBugs: c.IncludeBugs,
- includeLog: c.IncludeLog,
- local: local,
- bugProject: c.BugProject,
parentBranch: c.ParentBranch,
preUploadSteps: preUploadSteps,
- serverURL: serverURL,
workdir: workdir,
}, nil
}
@@ -265,59 +225,6 @@
return revision.FromLongCommit(r.childRevLinkTmpl, details), nil
}
-// buildCommitMsg executes the commit message template using the given
-// CommitMsgVars.
-func (r *commonRepoManager) buildCommitMsg(vars *parent.CommitMsgVars) (string, error) {
- // Bugs.
- vars.Bugs = nil
- if r.includeBugs {
- // TODO(borenet): Move this to a util.MakeBugLines utility?
- bugMap := map[string]bool{}
- for _, rev := range vars.Revisions {
- for _, bug := range rev.Bugs[r.bugProject] {
- bugMap[bug] = true
- }
- }
- if len(bugMap) > 0 {
- vars.Bugs = make([]string, 0, len(bugMap))
- for bug := range bugMap {
- bugStr := fmt.Sprintf("%s:%s", r.bugProject, bug)
- if r.bugProject == util.BUG_PROJECT_BUGANIZER {
- bugStr = fmt.Sprintf("b/%s", bug)
- }
- vars.Bugs = append(vars.Bugs, bugStr)
- }
- sort.Strings(vars.Bugs)
- }
- }
-
- // IncludeLog.
- vars.IncludeLog = r.includeLog
-
- // Tests.
- vars.Tests = nil
- testsMap := map[string]bool{}
- for _, rev := range vars.Revisions {
- for _, test := range rev.Tests {
- testsMap[test] = true
- }
- }
- if len(testsMap) > 0 {
- vars.Tests = make([]string, 0, len(testsMap))
- for test := range testsMap {
- vars.Tests = append(vars.Tests, test)
- }
- sort.Strings(vars.Tests)
- }
-
- // Create the commit message.
- var buf bytes.Buffer
- if err := r.commitMsgTmpl.Execute(&buf, vars); err != nil {
- return "", err
- }
- return buf.String(), nil
-}
-
// DepotToolsRepoManagerConfig provides configuration for depotToolsRepoManager.
type DepotToolsRepoManagerConfig struct {
CommonRepoManagerConfig
@@ -344,121 +251,6 @@
runhooks bool
}
-// Return a depotToolsRepoManager instance.
-func newDepotToolsRepoManager(ctx context.Context, c DepotToolsRepoManagerConfig, reg *config_vars.Registry, workdir, recipeCfgFile, serverURL string, g gerrit.GerritInterface, client *http.Client, cr codereview.CodeReview, local bool) (*depotToolsRepoManager, error) {
- if err := c.Validate(); err != nil {
- return nil, err
- }
- crm, err := newCommonRepoManager(ctx, c.CommonRepoManagerConfig, reg, workdir, serverURL, g, client, cr, local)
- if err != nil {
- return nil, err
- }
- depotTools, err := depot_tools.GetDepotTools(ctx, workdir, recipeCfgFile)
- if err != nil {
- return nil, err
- }
- parentBase := strings.TrimSuffix(path.Base(c.ParentRepo), ".git")
- parentDir := path.Join(workdir, parentBase)
- return &depotToolsRepoManager{
- commonRepoManager: crm,
- depotTools: depotTools,
- depotToolsEnv: append(depot_tools.Env(depotTools), "SKIP_GCE_AUTH_FOR_GIT=1"),
- gclient: path.Join(depotTools, parent.GClient),
- gclientSpec: c.GClientSpec,
- parentDir: parentDir,
- parentRepo: c.ParentRepo,
- runhooks: c.RunHooks,
- }, nil
-}
-
-// cleanParent forces the parent checkout into a clean state.
-func (r *depotToolsRepoManager) cleanParent(ctx context.Context) error {
- return r.cleanParentWithRemoteAndBranch(ctx, "origin", ROLL_BRANCH, r.parentBranch.String())
-}
-
-func (r *depotToolsRepoManager) cleanParentWithRemoteAndBranch(ctx context.Context, remote, localBranch, remoteBranch string) error {
- if _, err := git.GitDir(r.parentDir).Git(ctx, "clean", "-d", "-f", "-f"); err != nil {
- return err
- }
- _, _ = git.GitDir(r.parentDir).Git(ctx, "rebase", "--abort")
- if _, err := git.GitDir(r.parentDir).Git(ctx, "checkout", fmt.Sprintf("%s/%s", remote, remoteBranch), "-f"); err != nil {
- return err
- }
- _, _ = git.GitDir(r.parentDir).Git(ctx, "branch", "-D", localBranch)
- if _, err := exec.RunCommand(ctx, &exec.Command{
- Dir: r.workdir,
- Env: r.depotToolsEnv,
- Name: "python",
- Args: []string{r.gclient, "revert", "--nohooks"},
- }); err != nil {
- return err
- }
- return nil
-}
-
-func (r *depotToolsRepoManager) createAndSyncParent(ctx context.Context) error {
- return r.createAndSyncParentWithRemoteAndBranch(ctx, "origin", ROLL_BRANCH, r.parentBranch.String())
-}
-
-func (r *depotToolsRepoManager) createAndSyncParentWithRemoteAndBranch(ctx context.Context, remote, localBranch, remoteBranch string) error {
- // Create the working directory if needed.
- if _, err := os.Stat(r.workdir); err != nil {
- if err := os.MkdirAll(r.workdir, 0755); err != nil {
- return err
- }
- }
-
- // Run "gclient config".
- args := []string{r.gclient, "config"}
- if r.gclientSpec != "" {
- args = append(args, fmt.Sprintf("--spec=%s", r.gclientSpec))
- } else {
- args = append(args, r.parentRepo, "--unmanaged")
- }
- if _, err := exec.RunCommand(ctx, &exec.Command{
- Dir: r.workdir,
- Env: r.depotToolsEnv,
- Name: "python",
- Args: args,
- }); err != nil {
- return err
- }
-
- // Clean/reset the parent and child checkouts.
- if _, err := os.Stat(path.Join(r.parentDir, ".git")); err == nil {
- if err := r.cleanParentWithRemoteAndBranch(ctx, remote, localBranch, remoteBranch); err != nil {
- return err
- }
- // Update the repo.
- if _, err := git.GitDir(r.parentDir).Git(ctx, "fetch", remote); err != nil {
- return err
- }
- if _, err := git.GitDir(r.parentDir).Git(ctx, "reset", "--hard", fmt.Sprintf("%s/%s", remote, remoteBranch)); err != nil {
- return err
- }
- }
- if _, err := os.Stat(path.Join(r.childDir, ".git")); err == nil {
- if _, err := r.childRepo.Git(ctx, "fetch"); err != nil {
- return err
- }
- }
-
- // Run "gclient sync".
- args = []string{r.gclient, "sync"}
- if !r.runhooks {
- args = append(args, "--nohooks")
- }
- if _, err := exec.RunCommand(ctx, &exec.Command{
- Dir: r.workdir,
- Env: r.depotToolsEnv,
- Name: "python",
- Args: args,
- }); err != nil {
- return err
- }
- return nil
-}
-
// NoCheckoutRepoManagerConfig provides configuration for RepoManagers which
// don't use a local checkout.
type NoCheckoutRepoManagerConfig struct {
diff --git a/autoroll/go/repo_manager/semver_gcs_repo_manager.go b/autoroll/go/repo_manager/semver_gcs_repo_manager.go
index 8cae925..3d113dc 100644
--- a/autoroll/go/repo_manager/semver_gcs_repo_manager.go
+++ b/autoroll/go/repo_manager/semver_gcs_repo_manager.go
@@ -63,14 +63,6 @@
// and child. We shouldn't need most of the New.*RepoManager functions.
func (c SemVerGCSRepoManagerConfig) splitParentChild() (parent.GitilesConfig, child.SemVerGCSConfig, error) {
parentCfg := parent.GitilesConfig{
- BaseConfig: parent.BaseConfig{
- ChildPath: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.ChildPath,
- ChildRepo: c.GCSPath, // TODO
- IncludeBugs: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.IncludeBugs,
- IncludeLog: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.IncludeLog,
- CommitMsgTmpl: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.CommitMsgTmpl,
- MonorailProject: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.BugProject,
- },
GitilesConfig: gitiles_common.GitilesConfig{
Branch: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.ParentBranch,
RepoURL: c.NoCheckoutRepoManagerConfig.CommonRepoManagerConfig.ParentRepo,
diff --git a/autoroll/go/repo_manager/semver_gcs_repo_manager_test.go b/autoroll/go/repo_manager/semver_gcs_repo_manager_test.go
index 7eaeae0..695b838 100644
--- a/autoroll/go/repo_manager/semver_gcs_repo_manager_test.go
+++ b/autoroll/go/repo_manager/semver_gcs_repo_manager_test.go
@@ -45,31 +45,6 @@
AFDO_SHORT_REV_REGEX = "(\\d+)\\.(\\d+)\\.(\\d+)\\.0_rc-r(\\d+)-merged"
AFDO_VERSION_FILE_PATH = "chrome/android/profiles/newest.txt"
-
- TMPL_COMMIT_MSG_AFDO = `Roll AFDO from {{.RollingFrom.String}} to {{.RollingTo.String}}
-
-This CL may cause a small binary size increase, roughly proportional
-to how long it's been since our last AFDO profile roll. For larger
-increases (around or exceeding 100KB), please file a bug against
-gbiv@chromium.org. Additional context: https://crbug.com/805539
-
-Please note that, despite rolling to chrome/android, this profile is
-used for both Linux and Android.
-
-If this roll has caused a breakage, revert this CL and stop the roller
-using the controls here:
-{{.ServerURL}}
-Please CC {{stringsJoin .Reviewers ","}} on the revert to ensure that a human
-is aware of the problem.
-
-To report a problem with the AutoRoller itself, please file a bug:
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
-
-Documentation for the AutoRoller is here:
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
-
-Tbr: {{stringsJoin .Reviewers ","}}
-`
)
func afdoCfg(t *testing.T) *SemVerGCSRepoManagerConfig {
@@ -80,11 +55,10 @@
return &SemVerGCSRepoManagerConfig{
NoCheckoutRepoManagerConfig: NoCheckoutRepoManagerConfig{
CommonRepoManagerConfig: CommonRepoManagerConfig{
- ChildBranch: masterBranchTmpl(t),
- ChildPath: "unused/by/afdo/repomanager",
- CommitMsgTmpl: TMPL_COMMIT_MSG_AFDO,
- ParentBranch: masterBranchTmpl(t),
- ParentRepo: "", // Filled in after GitInit().
+ ChildBranch: masterBranchTmpl(t),
+ ChildPath: "unused/by/afdo/repomanager",
+ ParentBranch: masterBranchTmpl(t),
+ ParentRepo: "", // Filled in after GitInit().
},
},
Gerrit: &codereview.GerritConfig{
@@ -304,31 +278,7 @@
mockParent.MockReadFile(ctx, AFDO_VERSION_FILE_PATH, parentMaster)
// Mock the initial change creation.
- commitMsg := `Roll AFDO from 66.0.3336.0_rc-r1-merged to 66.0.3337.0_rc-r1-merged
-
-This CL may cause a small binary size increase, roughly proportional
-to how long it's been since our last AFDO profile roll. For larger
-increases (around or exceeding 100KB), please file a bug against
-gbiv@chromium.org. Additional context: https://crbug.com/805539
-
-Please note that, despite rolling to chrome/android, this profile is
-used for both Linux and Android.
-
-If this roll has caused a breakage, revert this CL and stop the roller
-using the controls here:
-fake.server.com
-Please CC reviewer@chromium.org on the revert to ensure that a human
-is aware of the problem.
-
-To report a problem with the AutoRoller itself, please file a bug:
-https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
-
-Documentation for the AutoRoller is here:
-https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md
-
-Tbr: reviewer@chromium.org
-`
- subject := strings.Split(commitMsg, "\n")[0]
+ subject := strings.Split(fakeCommitMsg, "\n")[0]
reqBody := []byte(fmt.Sprintf(`{"project":"%s","subject":"%s","branch":"%s","topic":"","status":"NEW","base_commit":"%s"}`, "fake-gerrit-project", subject, "master", parentMaster))
ci := gerrit.ChangeInfo{
ChangeId: "123",
@@ -347,7 +297,7 @@
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/", mockhttpclient.MockPostDialogueWithResponseCode("application/json", reqBody, respBody, 201))
// Mock the edit of the change to update the commit message.
- reqBody = []byte(fmt.Sprintf(`{"message":"%s"}`, strings.Replace(commitMsg, "\n", "\\n", -1)))
+ reqBody = []byte(fmt.Sprintf(`{"message":"%s"}`, strings.Replace(fakeCommitMsg, "\n", "\\n", -1)))
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/123/edit:message", mockhttpclient.MockPutDialogue("application/json", reqBody, []byte("")))
// Mock the request to modify the version file.
@@ -369,7 +319,7 @@
reqBody = []byte(`{"labels":{"Code-Review":1,"Commit-Queue":2},"message":"","reviewers":[{"reviewer":"reviewer@chromium.org"}]}`)
urlmock.MockOnce("https://fake-skia-review.googlesource.com/a/changes/123/revisions/ps1/review", mockhttpclient.MockPostDialogue("application/json", reqBody, []byte("")))
- issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, cqExtraTrybots, false)
+ issue, err := rm.CreateNewRoll(ctx, lastRollRev, tipRev, notRolledRevs, emails, false, fakeCommitMsg)
require.NoError(t, err)
require.Equal(t, ci.Issue, issue)
}
@@ -380,7 +330,6 @@
cfg := afdoCfg(t)
// Fill in some fields which are not supplied above.
cfg.ParentRepo = "dummy"
- cfg.CommitMsgTmpl = TMPL_COMMIT_MSG_AFDO
cfg.GCSBucket = AFDO_GS_BUCKET
cfg.GCSPath = AFDO_GS_PATH
cfg.VersionFile = AFDO_VERSION_FILE_PATH
diff --git a/autoroll/go/roller/autoroller.go b/autoroll/go/roller/autoroller.go
index 12dd4e0..19a0d98 100644
--- a/autoroll/go/roller/autoroller.go
+++ b/autoroll/go/roller/autoroller.go
@@ -11,6 +11,7 @@
"github.com/gorilla/mux"
"go.skia.org/infra/autoroll/go/codereview"
+ "go.skia.org/infra/autoroll/go/commit_msg"
"go.skia.org/infra/autoroll/go/config_vars"
"go.skia.org/infra/autoroll/go/manual"
"go.skia.org/infra/autoroll/go/modes"
@@ -54,41 +55,39 @@
// AutoRoller is a struct which automates the merging new revisions of one
// project into another.
type AutoRoller struct {
- cfg AutoRollerConfig
- childName string
- codereview codereview.CodeReview
- currentRoll codereview.RollImpl
- emails []string
- emailsMtx sync.RWMutex
- failureThrottle *state_machine.Throttler
- lastRollRev *revision.Revision
- liveness metrics2.Liveness
- manualRollDB manual.DB
- modeHistory *modes.ModeHistory
- nextRollRev *revision.Revision
- notifier *arb_notifier.AutoRollNotifier
- notifierConfigs []*notifier.Config
- notRolledRevs []*revision.Revision
- parentName string
- recent *recent_rolls.RecentRolls
- reg *config_vars.Registry
- rm repo_manager.RepoManager
- rollIntoAndroid bool
- roller string
- runningMtx sync.Mutex
- safetyThrottle *state_machine.Throttler
- serverURL string
- sheriff []string
- sheriffBackup []string
- sm *state_machine.AutoRollStateMachine
- status *status.AutoRollStatusCache
- statusMtx sync.RWMutex
- strategy strategy.NextRollStrategy
- strategyHistory *strategy.StrategyHistory
- strategyMtx sync.RWMutex // Protects strategy
- successThrottle *state_machine.Throttler
- timeWindow *time_window.TimeWindow
- tipRev *revision.Revision
+ cfg AutoRollerConfig
+ codereview codereview.CodeReview
+ commitMsgBuilder *commit_msg.Builder
+ currentRoll codereview.RollImpl
+ emails []string
+ emailsMtx sync.RWMutex
+ failureThrottle *state_machine.Throttler
+ lastRollRev *revision.Revision
+ liveness metrics2.Liveness
+ manualRollDB manual.DB
+ modeHistory *modes.ModeHistory
+ nextRollRev *revision.Revision
+ notifier *arb_notifier.AutoRollNotifier
+ notifierConfigs []*notifier.Config
+ notRolledRevs []*revision.Revision
+ recent *recent_rolls.RecentRolls
+ reg *config_vars.Registry
+ rm repo_manager.RepoManager
+ roller string
+ runningMtx sync.Mutex
+ safetyThrottle *state_machine.Throttler
+ serverURL string
+ sheriff []string
+ sheriffBackup []string
+ sm *state_machine.AutoRollStateMachine
+ status *status.AutoRollStatusCache
+ statusMtx sync.RWMutex
+ strategy strategy.NextRollStrategy
+ strategyHistory *strategy.StrategyHistory
+ strategyMtx sync.RWMutex // Protects strategy
+ successThrottle *state_machine.Throttler
+ timeWindow *time_window.TimeWindow
+ tipRev *revision.Revision
}
// NewAutoRoller returns an AutoRoller instance.
@@ -107,36 +106,9 @@
}
// Create the RepoManager.
- var rm repo_manager.RepoManager
- if c.AndroidRepoManager != nil {
- rm, err = repo_manager.NewAndroidRepoManager(ctx, c.AndroidRepoManager, reg, workdir, g, serverURL, c.ServiceAccount, client, cr, local)
- } else if c.CopyRepoManager != nil {
- rm, err = repo_manager.NewCopyRepoManager(ctx, c.CopyRepoManager, reg, workdir, g, serverURL, client, cr, local)
- } else if c.DEPSRepoManager != nil {
- rm, err = repo_manager.NewDEPSRepoManager(ctx, c.DEPSRepoManager, reg, workdir, g, recipesCfgFile, serverURL, client, cr, local)
- } else if c.FuchsiaSDKAndroidRepoManager != nil {
- rm, err = repo_manager.NewFuchsiaSDKAndroidRepoManager(ctx, c.FuchsiaSDKAndroidRepoManager, reg, workdir, g, serverURL, client, cr, local)
- } else if c.FreeTypeRepoManager != nil {
- rm, err = repo_manager.NewFreeTypeRepoManager(ctx, c.FreeTypeRepoManager, reg, workdir, g, recipesCfgFile, serverURL, client, cr, local)
- } else if c.FuchsiaSDKRepoManager != nil {
- rm, err = repo_manager.NewFuchsiaSDKRepoManager(ctx, c.FuchsiaSDKRepoManager, reg, workdir, g, serverURL, client, cr, local)
- } else if c.GithubRepoManager != nil {
- rm, err = repo_manager.NewGithubRepoManager(ctx, c.GithubRepoManager, reg, workdir, rollerName, githubClient, recipesCfgFile, serverURL, client, cr, local)
- } else if c.GithubCipdDEPSRepoManager != nil {
- rm, err = repo_manager.NewGithubCipdDEPSRepoManager(ctx, c.GithubCipdDEPSRepoManager, reg, workdir, rollerName, githubClient, recipesCfgFile, serverURL, client, cr, local)
- } else if c.GithubDEPSRepoManager != nil {
- rm, err = repo_manager.NewGithubDEPSRepoManager(ctx, c.GithubDEPSRepoManager, reg, workdir, rollerName, githubClient, recipesCfgFile, serverURL, client, cr, local)
- } else if c.GitilesCIPDDEPSRepoManager != nil {
- rm, err = repo_manager.NewGitilesCIPDDEPSRepoManager(ctx, c.GitilesCIPDDEPSRepoManager, reg, workdir, g, recipesCfgFile, serverURL, client, cr, local)
- } else if c.NoCheckoutDEPSRepoManager != nil {
- rm, err = repo_manager.NewNoCheckoutDEPSRepoManager(ctx, c.NoCheckoutDEPSRepoManager, reg, workdir, g, recipesCfgFile, serverURL, client, cr, local)
- } else if c.SemVerGCSRepoManager != nil {
- rm, err = repo_manager.NewSemVerGCSRepoManager(ctx, c.SemVerGCSRepoManager, reg, workdir, g, serverURL, client, cr, local)
- } else {
- return nil, skerr.Fmt("Invalid roller config; no repo manager defined!")
- }
+ rm, err := c.CreateRepoManager(ctx, cr, reg, g, githubClient, workdir, recipesCfgFile, serverURL, rollerName, gcsClient, client, local)
if err != nil {
- return nil, skerr.Wrapf(err, "Failed to initialize repo manager")
+ return nil, skerr.Wrap(err)
}
sklog.Info("Creating strategy history.")
@@ -213,13 +185,13 @@
return nil, skerr.Wrapf(err, "Failed to create success throttler")
}
sklog.Info("Getting sheriff")
- emails, err := getSheriff(c.ParentName, c.ChildName, c.RollerName, c.Sheriff, c.SheriffBackup)
+ emails, err := GetSheriff(c.RollerName, c.Sheriff, c.SheriffBackup)
if err != nil {
return nil, skerr.Wrapf(err, "Failed to get sheriff")
}
sklog.Info("Creating notifier")
configCopies := replaceSheriffPlaceholder(c.Notifiers, emails)
- n, err := arb_notifier.New(ctx, c.ChildName, c.ParentName, serverURL, client, emailer, chatBotConfigReader, configCopies)
+ n, err := arb_notifier.New(ctx, c.ChildDisplayName, c.ParentDisplayName, serverURL, client, emailer, chatBotConfigReader, configCopies)
if err != nil {
return nil, skerr.Wrapf(err, "Failed to create notifier")
}
@@ -236,33 +208,38 @@
return nil, skerr.Wrapf(err, "Failed to create TimeWindow")
}
}
+ commitMsgBuilder, err := commit_msg.NewBuilder(c.CommitMsgConfig, c.ChildDisplayName, serverURL, c.TransitiveDeps)
+ if err != nil {
+ return nil, skerr.Wrap(err)
+ }
arb := &AutoRoller{
- cfg: c,
- codereview: cr,
- emails: emails,
- failureThrottle: failureThrottle,
- lastRollRev: lastRollRev,
- liveness: metrics2.NewLiveness("last_autoroll_landed", map[string]string{"roller": c.RollerName}),
- manualRollDB: manualRollDB,
- modeHistory: mh,
- nextRollRev: nextRollRev,
- notifier: n,
- notifierConfigs: c.Notifiers,
- notRolledRevs: notRolledRevs,
- recent: recent,
- reg: reg,
- rm: rm,
- roller: rollerName,
- safetyThrottle: safetyThrottle,
- serverURL: serverURL,
- sheriff: c.Sheriff,
- sheriffBackup: c.SheriffBackup,
- status: statusCache,
- strategy: strat,
- strategyHistory: sh,
- successThrottle: successThrottle,
- timeWindow: tw,
- tipRev: tipRev,
+ cfg: c,
+ codereview: cr,
+ commitMsgBuilder: commitMsgBuilder,
+ emails: emails,
+ failureThrottle: failureThrottle,
+ lastRollRev: lastRollRev,
+ liveness: metrics2.NewLiveness("last_autoroll_landed", map[string]string{"roller": c.RollerName}),
+ manualRollDB: manualRollDB,
+ modeHistory: mh,
+ nextRollRev: nextRollRev,
+ notifier: n,
+ notifierConfigs: c.Notifiers,
+ notRolledRevs: notRolledRevs,
+ recent: recent,
+ reg: reg,
+ rm: rm,
+ roller: rollerName,
+ safetyThrottle: safetyThrottle,
+ serverURL: serverURL,
+ sheriff: c.Sheriff,
+ sheriffBackup: c.SheriffBackup,
+ status: statusCache,
+ strategy: strat,
+ strategyHistory: sh,
+ successThrottle: successThrottle,
+ timeWindow: tw,
+ tipRev: tipRev,
}
sklog.Info("Creating state machine")
sm, err := state_machine.New(ctx, arb, n, gcsClient, rollerName)
@@ -351,7 +328,7 @@
// Update the current sheriff in a loop.
cleanup.Repeat(30*time.Minute, func(ctx context.Context) {
- emails, err := getSheriff(r.cfg.ParentName, r.cfg.ChildName, r.cfg.RollerName, r.cfg.Sheriff, r.cfg.SheriffBackup)
+ emails, err := GetSheriff(r.cfg.RollerName, r.cfg.Sheriff, r.cfg.SheriffBackup)
if err != nil {
sklog.Errorf("Failed to retrieve current sheriff: %s", err)
} else {
@@ -471,7 +448,11 @@
}
}
r.statusMtx.RUnlock()
- issueNum, err := r.rm.CreateNewRoll(ctx, from, to, revs, emails, strings.Join(r.cfg.CqExtraTrybots, ";"), dryRun)
+ commitMsg, err := r.commitMsgBuilder.Build(from, to, revs, emails)
+ if err != nil {
+ return nil, skerr.Wrap(err)
+ }
+ issueNum, err := r.rm.CreateNewRoll(ctx, from, to, revs, emails, dryRun, commitMsg)
if err != nil {
return nil, err
}
@@ -683,7 +664,7 @@
NumFailedRolls: numFailures,
NumNotRolledCommits: numNotRolled,
},
- ChildName: r.childName,
+ ChildName: r.cfg.ChildDisplayName,
CurrentRoll: r.recent.CurrentRoll(),
Error: lastError,
FullHistoryUrl: r.codereview.GetFullHistoryUrl(),
diff --git a/autoroll/go/roller/config.go b/autoroll/go/roller/config.go
index aeef996..ccce7c1 100644
--- a/autoroll/go/roller/config.go
+++ b/autoroll/go/roller/config.go
@@ -5,16 +5,23 @@
"encoding/json"
"errors"
"fmt"
+ "net/http"
"regexp"
"strings"
"time"
"github.com/flynn/json5"
"go.skia.org/infra/autoroll/go/codereview"
+ "go.skia.org/infra/autoroll/go/commit_msg"
+ "go.skia.org/infra/autoroll/go/config_vars"
arb_notifier "go.skia.org/infra/autoroll/go/notifier"
"go.skia.org/infra/autoroll/go/repo_manager"
+ "go.skia.org/infra/autoroll/go/repo_manager/common/version_file_common"
"go.skia.org/infra/autoroll/go/strategy"
"go.skia.org/infra/autoroll/go/time_window"
+ "go.skia.org/infra/go/gcs"
+ "go.skia.org/infra/go/gerrit"
+ "go.skia.org/infra/go/github"
"go.skia.org/infra/go/human"
"go.skia.org/infra/go/notifier"
"go.skia.org/infra/go/skerr"
@@ -143,8 +150,8 @@
type AutoRollerConfig struct {
// Required Fields.
- // User friendly name of the child repo.
- ChildName string `json:"childName"`
+ // Display name of the child.
+ ChildDisplayName string `json:"childDisplayName"`
// List of email addresses of contacts for this roller, used for sending
// PSAs, asking questions, etc.
Contacts []string `json:"contacts"`
@@ -154,9 +161,9 @@
OwnerPrimary string `json:"ownerPrimary"`
// Secondary owner of this roller.
OwnerSecondary string `json:"ownerSecondary"`
- // User friendly name of the parent repo.
- ParentName string `json:"parentName"`
- // URL of the waterfall/status display for the parent repo.
+ // Display name of the parent.
+ ParentDisplayName string `json:"parentDisplayName"`
+ // URL of the waterfall/status display for the parent.
ParentWaterfall string `json:"parentWaterfall"`
// Name of the roller, used for database keys.
RollerName string `json:"rollerName"`
@@ -170,6 +177,9 @@
// for Sheriff.
SheriffBackup []string `json:"sheriffBackup,omitempty"`
+ // Commit message configuration.
+ CommitMsgConfig *commit_msg.CommitMsgConfig `json:"commitMsg"`
+
// Code review settings.
Gerrit *codereview.GerritConfig `json:"gerrit,omitempty"`
Github *codereview.GithubConfig `json:"github,omitempty"`
@@ -195,33 +205,34 @@
// Optional Fields.
- // Comma-separated list of trybots to add to roll CLs, in addition to
- // the default set of commit queue trybots.
- CqExtraTrybots []string `json:"cqExtraTrybots,omitempty"`
// Limit to one successful roll within this time period.
MaxRollFrequency string `json:"maxRollFrequency,omitempty"`
// Any extra notification systems to be used for this roller.
Notifiers []*notifier.Config `json:"notifiers,omitempty"`
- // Time window in which the roller is allowed to upload roll CLs. See
- // the go/time_window package for supported format.
- TimeWindow string `json:"timeWindow,omitempty"`
// Throttling configuration to prevent uploading too many CLs within
// too short a time period.
SafetyThrottle *ThrottleConfig `json:"safetyThrottle,omitempty"`
// If true, this roller supports one-click "manual" rolls.
SupportsManualRolls bool `json:"supportsManualRolls,omitempty"`
+ // Time window in which the roller is allowed to upload roll CLs. See
+ // the go/time_window package for supported format.
+ TimeWindow string `json:"timeWindow,omitempty"`
+ // TransitiveDeps is an optional mapping of dependency ID (eg. repo URL)
+ // to the paths within the parent and child repo, respectively, where
+ // those dependencies are versioned, eg. "DEPS".
+ TransitiveDeps []*version_file_common.TransitiveDepConfig `json:"transitiveDeps"`
}
// Validate the config.
func (c *AutoRollerConfig) Validate() error {
- if c.ChildName == "" {
- return errors.New("ChildName is required.")
+ if c.ChildDisplayName == "" {
+ return errors.New("ChildDisplayName is required.")
}
if len(c.Contacts) < 1 {
return errors.New("At least one contact is required.")
}
- if c.ParentName == "" {
- return errors.New("ParentName is required.")
+ if c.ParentDisplayName == "" {
+ return errors.New("ParentDisplayName is required.")
}
if c.ParentWaterfall == "" {
return errors.New("ParentWaterfall is required.")
@@ -245,6 +256,13 @@
return errors.New("Sheriff is required.")
}
+ if c.CommitMsgConfig == nil {
+ return skerr.Fmt("CommitMsgConfig is required")
+ }
+ if err := c.CommitMsgConfig.Validate(); err != nil {
+ return skerr.Wrap(err)
+ }
+
cr := []util.Validator{}
if c.Gerrit != nil {
cr = append(cr, c.Gerrit)
@@ -323,6 +341,7 @@
if c.FreeTypeRepoManager != nil {
// TODO(borenet): De-duplicate the Gerrit config.
c.FreeTypeRepoManager.Gerrit = c.Gerrit
+ c.FreeTypeRepoManager.TransitiveDeps = c.TransitiveDeps
rm = append(rm, c.FreeTypeRepoManager)
}
if c.FuchsiaSDKAndroidRepoManager != nil {
@@ -336,12 +355,14 @@
rm = append(rm, c.FuchsiaSDKRepoManager)
}
if c.GithubRepoManager != nil {
+ c.GithubRepoManager.TransitiveDeps = c.TransitiveDeps
rm = append(rm, c.GithubRepoManager)
}
if c.GithubCipdDEPSRepoManager != nil {
rm = append(rm, c.GithubCipdDEPSRepoManager)
}
if c.GithubDEPSRepoManager != nil {
+ c.GithubDEPSRepoManager.TransitiveDeps = c.TransitiveDeps
rm = append(rm, c.GithubDEPSRepoManager)
}
if c.GitilesCIPDDEPSRepoManager != nil {
@@ -355,6 +376,7 @@
if c.NoCheckoutDEPSRepoManager != nil {
// TODO(borenet): De-duplicate the Gerrit config.
c.NoCheckoutDEPSRepoManager.Gerrit = c.Gerrit
+ c.NoCheckoutDEPSRepoManager.TransitiveDeps = c.TransitiveDeps
rm = append(rm, c.NoCheckoutDEPSRepoManager)
}
if c.SemVerGCSRepoManager != nil {
@@ -399,3 +421,45 @@
// Return the list of valid NextRollStrategy names for this RepoManager.
ValidStrategies() []string
}
+
+// CreateRepoManager creates a RepoManager instance from the config.
+// TODO(borenet): If we can't remove this after refactoring RepoManager configs,
+// this should probably move into the repo_manager package.
+func (c *AutoRollerConfig) CreateRepoManager(ctx context.Context, cr codereview.CodeReview, reg *config_vars.Registry, g *gerrit.Gerrit, githubClient *github.GitHub, workdir, recipesCfgFile, serverURL, rollerName string, gcsClient gcs.GCSClient, client *http.Client, local bool) (repo_manager.RepoManager, error) {
+ if err := c.Validate(); err != nil {
+ return nil, skerr.Wrap(err)
+ }
+ var rm repo_manager.RepoManager
+ var err error
+ if c.AndroidRepoManager != nil {
+ rm, err = repo_manager.NewAndroidRepoManager(ctx, c.AndroidRepoManager, reg, workdir, g, serverURL, c.ServiceAccount, client, cr, local)
+ } else if c.CopyRepoManager != nil {
+ rm, err = repo_manager.NewCopyRepoManager(ctx, c.CopyRepoManager, reg, workdir, g, serverURL, client, cr, local)
+ } else if c.DEPSRepoManager != nil {
+ rm, err = repo_manager.NewDEPSRepoManager(ctx, c.DEPSRepoManager, reg, workdir, g, recipesCfgFile, serverURL, client, cr, local)
+ } else if c.FuchsiaSDKAndroidRepoManager != nil {
+ rm, err = repo_manager.NewFuchsiaSDKAndroidRepoManager(ctx, c.FuchsiaSDKAndroidRepoManager, reg, workdir, g, serverURL, client, cr, local)
+ } else if c.FreeTypeRepoManager != nil {
+ rm, err = repo_manager.NewFreeTypeRepoManager(ctx, c.FreeTypeRepoManager, reg, workdir, g, recipesCfgFile, serverURL, client, cr, local)
+ } else if c.FuchsiaSDKRepoManager != nil {
+ rm, err = repo_manager.NewFuchsiaSDKRepoManager(ctx, c.FuchsiaSDKRepoManager, reg, workdir, g, serverURL, client, cr, local)
+ } else if c.GithubRepoManager != nil {
+ rm, err = repo_manager.NewGithubRepoManager(ctx, c.GithubRepoManager, reg, workdir, rollerName, githubClient, recipesCfgFile, serverURL, client, cr, local)
+ } else if c.GithubCipdDEPSRepoManager != nil {
+ rm, err = repo_manager.NewGithubCipdDEPSRepoManager(ctx, c.GithubCipdDEPSRepoManager, reg, workdir, rollerName, githubClient, recipesCfgFile, serverURL, client, cr, local)
+ } else if c.GithubDEPSRepoManager != nil {
+ rm, err = repo_manager.NewGithubDEPSRepoManager(ctx, c.GithubDEPSRepoManager, reg, workdir, rollerName, githubClient, recipesCfgFile, serverURL, client, cr, local)
+ } else if c.GitilesCIPDDEPSRepoManager != nil {
+ rm, err = repo_manager.NewGitilesCIPDDEPSRepoManager(ctx, c.GitilesCIPDDEPSRepoManager, reg, workdir, g, recipesCfgFile, serverURL, client, cr, local)
+ } else if c.NoCheckoutDEPSRepoManager != nil {
+ rm, err = repo_manager.NewNoCheckoutDEPSRepoManager(ctx, c.NoCheckoutDEPSRepoManager, reg, workdir, g, recipesCfgFile, serverURL, client, cr, local)
+ } else if c.SemVerGCSRepoManager != nil {
+ rm, err = repo_manager.NewSemVerGCSRepoManager(ctx, c.SemVerGCSRepoManager, reg, workdir, g, serverURL, client, cr, local)
+ } else {
+ return nil, skerr.Fmt("Invalid roller config; no repo manager defined!")
+ }
+ if err != nil {
+ return nil, skerr.Wrapf(err, "Failed to create RepoManager")
+ }
+ return rm, nil
+}
diff --git a/autoroll/go/roller/config_test.go b/autoroll/go/roller/config_test.go
index dfb7217..d5e7dcf 100644
--- a/autoroll/go/roller/config_test.go
+++ b/autoroll/go/roller/config_test.go
@@ -9,6 +9,7 @@
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"go.skia.org/infra/autoroll/go/codereview"
+ "go.skia.org/infra/autoroll/go/commit_msg"
"go.skia.org/infra/autoroll/go/config_vars"
"go.skia.org/infra/autoroll/go/repo_manager"
"go.skia.org/infra/go/deepequal/assertdeep"
@@ -19,15 +20,18 @@
// validBaseConfig returns a minimal valid AutoRollerConfig.
func validBaseConfig() *AutoRollerConfig {
return &AutoRollerConfig{
- ChildName: "childName",
- Contacts: []string{"me@gmail.com"},
- OwnerPrimary: "me",
- OwnerSecondary: "you",
- ParentName: "parentName",
- ParentWaterfall: "parentWaterfall",
- RollerName: "test-roller",
- ServiceAccount: "test-account@google.com",
- Sheriff: []string{"sheriff@gmail.com"},
+ ChildDisplayName: "childDisplayName",
+ CommitMsgConfig: &commit_msg.CommitMsgConfig{
+ Template: commit_msg.TmplNameDefault,
+ },
+ Contacts: []string{"me@gmail.com"},
+ OwnerPrimary: "me",
+ OwnerSecondary: "you",
+ ParentDisplayName: "parentName",
+ ParentWaterfall: "parentWaterfall",
+ RollerName: "test-roller",
+ ServiceAccount: "test-account@google.com",
+ Sheriff: []string{"sheriff@gmail.com"},
Gerrit: &codereview.GerritConfig{
URL: "https://gerrit",
Project: "my/project",
@@ -67,8 +71,8 @@
// Test cases.
testErr(func(c *AutoRollerConfig) {
- c.ChildName = ""
- }, "ChildName is required.")
+ c.ChildDisplayName = ""
+ }, "ChildDisplayName is required.")
testErr(func(c *AutoRollerConfig) {
c.Contacts = []string{}
@@ -79,8 +83,8 @@
}, "Exactly one of Gerrit, Github, or Google3Review is required.")
testErr(func(c *AutoRollerConfig) {
- c.ParentName = ""
- }, "ParentName is required.")
+ c.ParentDisplayName = ""
+ }, "ParentDisplayName is required.")
testErr(func(c *AutoRollerConfig) {
c.ParentWaterfall = ""
@@ -150,10 +154,6 @@
// Test cases.
testNoErr(func(c *AutoRollerConfig) {
- c.CqExtraTrybots = []string{"extra-bot"}
- })
-
- testNoErr(func(c *AutoRollerConfig) {
c.MaxRollFrequency = "1h"
})
@@ -207,7 +207,6 @@
test()
- a.CqExtraTrybots = []string{"extra-bot"}
a.MaxRollFrequency = "1h"
a.Notifiers = []*notifier.Config{
{
diff --git a/autoroll/go/roller/sheriff.go b/autoroll/go/roller/sheriff.go
index 1a9e86e..21becb7 100644
--- a/autoroll/go/roller/sheriff.go
+++ b/autoroll/go/roller/sheriff.go
@@ -11,8 +11,8 @@
"go.skia.org/infra/go/sklog"
)
-// Update the current sheriff list.
-func getSheriff(parentName, childName, metricsName string, sheriffSources, backupSheriffs []string) ([]string, error) {
+// GetSheriff retrieves the current sheriff list.
+func GetSheriff(metricsName string, sheriffSources, backupSheriffs []string) ([]string, error) {
tags := map[string]string{
"roller": metricsName,
}
diff --git a/go/gerrit/gerrit.go b/go/gerrit/gerrit.go
index 0cef2d1..ebd190d 100644
--- a/go/gerrit/gerrit.go
+++ b/go/gerrit/gerrit.go
@@ -109,28 +109,32 @@
// ChangeInfo contains information about a Gerrit issue.
type ChangeInfo struct {
- Id string `json:"id"`
- Insertions int `json:"insertions"`
- Deletions int `json:"deletions"`
- Created time.Time `json:"-"`
- CreatedString string `json:"created"`
- Updated time.Time `json:"-"`
- UpdatedString string `json:"updated"`
- Submitted time.Time `json:"-"`
- SubmittedString string `json:"submitted"`
- Project string `json:"project"`
- ChangeId string `json:"change_id"`
- Subject string `json:"subject"`
- Branch string `json:"branch"`
- Committed bool `json:"committed"`
- Revisions map[string]*Revision `json:"revisions"`
- Patchsets []*Revision `json:"-"`
- MoreChanges bool `json:"_more_changes"`
- Issue int64 `json:"_number"`
- Labels map[string]*LabelEntry `json:"labels"`
- Owner *Owner `json:"owner"`
- Status string `json:"status"`
- WorkInProgress bool `json:"work_in_progress"`
+ Id string `json:"id"`
+ Insertions int `json:"insertions"`
+ Deletions int `json:"deletions"`
+ Created time.Time `json:"-"`
+ CreatedString string `json:"created"`
+ Updated time.Time `json:"-"`
+ UpdatedString string `json:"updated"`
+ Submitted time.Time `json:"-"`
+ SubmittedString string `json:"submitted"`
+ Project string `json:"project"`
+ ChangeId string `json:"change_id"`
+ Subject string `json:"subject"`
+ Branch string `json:"branch"`
+ Committed bool `json:"committed"`
+ Reviewers struct {
+ CC []*Person `json:"CC"`
+ Reviewer []*Person `json:"REVIEWER"`
+ } `json:"reviewers"`
+ Revisions map[string]*Revision `json:"revisions"`
+ Patchsets []*Revision `json:"-"`
+ MoreChanges bool `json:"_more_changes"`
+ Issue int64 `json:"_number"`
+ Labels map[string]*LabelEntry `json:"labels"`
+ Owner *Person `json:"owner"`
+ Status string `json:"status"`
+ WorkInProgress bool `json:"work_in_progress"`
}
// Find the set of non-trivial patchsets. Returns the Revisions in order of
@@ -185,9 +189,11 @@
return ci.Status == CHANGE_STATUS_MERGED
}
-// Owner gathers the owner information of a ChangeInfo instance. Some fields omitted.
-type Owner struct {
- Email string `json:"email"`
+// Person describes a person in Gerrit.
+type Person struct {
+ AccountID int `json:"_account_id"`
+ Email string `json:"email"`
+ Name string `json:"name"`
}
type LabelEntry struct {
@@ -489,6 +495,8 @@
type CommitInfo struct {
Commit string `json:"commit"`
Parents []*CommitInfo `json:"parents"`
+ Subject string `json:"subject"`
+ Message string `json:"message"`
}
// GetCommit retrieves the commit that corresponds to the patch identified by issue and revision.
diff --git a/golden/go/code_review/gerrit_crs/gerrit_crs_test.go b/golden/go/code_review/gerrit_crs/gerrit_crs_test.go
index 2de8dab..1712d4e 100644
--- a/golden/go/code_review/gerrit_crs/gerrit_crs_test.go
+++ b/golden/go/code_review/gerrit_crs/gerrit_crs_test.go
@@ -308,7 +308,7 @@
MoreChanges: false,
Issue: 235460,
// Labels omitted because it's complex and not needed
- Owner: &gerrit.Owner{
+ Owner: &gerrit.Person{
Email: "test@example.com",
},
Status: "NEW",
diff --git a/sk8s/go/bot_config/swarming/swarming.go b/sk8s/go/bot_config/swarming/swarming.go
index 212041a..0682a25 100644
--- a/sk8s/go/bot_config/swarming/swarming.go
+++ b/sk8s/go/bot_config/swarming/swarming.go
@@ -49,7 +49,7 @@
// KubernetesImageEnvVar is the environment variable that contains the
// daemonset image name.
//
- // See https://skia.googlesource.com/k8s-config/+/refs/heads/master/skolo-rack4/rpi-swarming-daemonset.yaml
+ // See https://skia.googlesource.com/k8s-config/+show/refs/heads/master/skolo-rack4/rpi-swarming-daemonset.yaml
// where IMAGE_NAME is set.
KubernetesImageEnvVar = "IMAGE_NAME"
)