Compute CIPD platform manually
This is a workaround for crbug.com/855703.
Change-Id: Iac37023d9a6e9580e0c79611c346bb6399bab1df
Reviewed-on: https://gn-review.googlesource.com/1800
Reviewed-by: Vadim Shtayura <vadimsh@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
diff --git a/infra/README.recipes.md b/infra/README.recipes.md
index afa61e5..55c0ca4 100644
--- a/infra/README.recipes.md
+++ b/infra/README.recipes.md
@@ -39,7 +39,7 @@
Recipe for building GN.
-— **def [RunSteps](/infra/recipes/gn.py#29)(api, repository):**
+— **def [RunSteps](/infra/recipes/gn.py#28)(api, repository):**
### *recipes* / [windows\_sdk:examples/full](/infra/recipe_modules/windows_sdk/examples/full.py)
[DEPS](/infra/recipe_modules/windows_sdk/examples/full.py#5): [windows\_sdk](#recipe_modules-windows_sdk), [recipe\_engine/platform][recipe_engine/recipe_modules/platform], [recipe\_engine/properties][recipe_engine/recipe_modules/properties], [recipe\_engine/step][recipe_engine/recipe_modules/step]
diff --git a/infra/recipes/gn.expected/ci.json b/infra/recipes/gn.expected/ci.json
index d6ce20e..8556002 100644
--- a/infra/recipes/gn.expected/ci.json
+++ b/infra/recipes/gn.expected/ci.json
@@ -349,18 +349,18 @@
"cipd.bat",
"pkg-build",
"-pkg-def",
- "{\"data\": [{\"file\": \"gn.exe\"}, {\"version_file\": \".versions/gn.exe.cipd_version\"}], \"install_mode\": \"copy\", \"package\": \"gn/gn/${platform}\", \"root\": \"[START_DIR]\\\\gn\\\\out\"}",
+ "{\"data\": [{\"file\": \"gn.exe\"}, {\"version_file\": \".versions/gn.exe.cipd_version\"}], \"install_mode\": \"copy\", \"package\": \"gn/gn/windows-amd64\", \"root\": \"[START_DIR]\\\\gn\\\\out\"}",
"-out",
"[CLEANUP]\\gn.cipd",
"-json-output",
"/path/to/tmp/json"
],
- "name": "build gn/gn/${platform}",
+ "name": "build gn/gn/windows-amd64",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"result\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"40-chars-fake-of-the-package-instance_id\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"package\": \"gn/gn/${platform}\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"package\": \"gn/gn/windows-amd64\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@"
diff --git a/infra/recipes/gn.expected/cipd_exists.json b/infra/recipes/gn.expected/cipd_exists.json
index c63252d..3882778 100644
--- a/infra/recipes/gn.expected/cipd_exists.json
+++ b/infra/recipes/gn.expected/cipd_exists.json
@@ -191,18 +191,18 @@
"cipd",
"pkg-build",
"-pkg-def",
- "{\"data\": [{\"file\": \"gn\"}, {\"version_file\": \".versions/gn.cipd_version\"}], \"install_mode\": \"copy\", \"package\": \"gn/gn/${platform}\", \"root\": \"[START_DIR]/gn/out\"}",
+ "{\"data\": [{\"file\": \"gn\"}, {\"version_file\": \".versions/gn.cipd_version\"}], \"install_mode\": \"copy\", \"package\": \"gn/gn/linux-amd64\", \"root\": \"[START_DIR]/gn/out\"}",
"-out",
"[CLEANUP]/gn.cipd",
"-json-output",
"/path/to/tmp/json"
],
- "name": "build gn/gn/${platform}",
+ "name": "build gn/gn/linux-amd64",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"result\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"40-chars-fake-of-the-package-instance_id\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"package\": \"gn/gn/${platform}\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"package\": \"gn/gn/linux-amd64\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@"
@@ -222,19 +222,19 @@
"cmd": [
"cipd",
"search",
- "gn/gn/${platform}",
+ "gn/gn/linux-amd64",
"-tag",
"git_revision:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"-json-output",
"/path/to/tmp/json"
],
- "name": "cipd search gn/gn/${platform} git_revision:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "name": "cipd search gn/gn/linux-amd64 git_revision:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"result\": [@@@",
"@@@STEP_LOG_LINE@json.output@ {@@@",
"@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"resolved-instance_id-of-git_revision:aaa\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"package\": \"gn/gn/${platform}\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"package\": \"gn/gn/linux-amd64\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@ ]@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
diff --git a/infra/recipes/gn.expected/cipd_register.json b/infra/recipes/gn.expected/cipd_register.json
index dd37807..381a9fc 100644
--- a/infra/recipes/gn.expected/cipd_register.json
+++ b/infra/recipes/gn.expected/cipd_register.json
@@ -191,18 +191,18 @@
"cipd",
"pkg-build",
"-pkg-def",
- "{\"data\": [{\"file\": \"gn\"}, {\"version_file\": \".versions/gn.cipd_version\"}], \"install_mode\": \"copy\", \"package\": \"gn/gn/${platform}\", \"root\": \"[START_DIR]/gn/out\"}",
+ "{\"data\": [{\"file\": \"gn\"}, {\"version_file\": \".versions/gn.cipd_version\"}], \"install_mode\": \"copy\", \"package\": \"gn/gn/linux-amd64\", \"root\": \"[START_DIR]/gn/out\"}",
"-out",
"[CLEANUP]/gn.cipd",
"-json-output",
"/path/to/tmp/json"
],
- "name": "build gn/gn/${platform}",
+ "name": "build gn/gn/linux-amd64",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"result\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"40-chars-fake-of-the-package-instance_id\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"package\": \"gn/gn/${platform}\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"package\": \"gn/gn/linux-amd64\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@"
@@ -222,13 +222,13 @@
"cmd": [
"cipd",
"search",
- "gn/gn/${platform}",
+ "gn/gn/linux-amd64",
"-tag",
"git_revision:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"-json-output",
"/path/to/tmp/json"
],
- "name": "cipd search gn/gn/${platform} git_revision:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+ "name": "cipd search gn/gn/linux-amd64 git_revision:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"result\": []@@@",
@@ -250,12 +250,12 @@
"-json-output",
"/path/to/tmp/json"
],
- "name": "register gn/gn/${platform}",
+ "name": "register gn/gn/linux-amd64",
"~followup_annotations": [
"@@@STEP_LOG_LINE@json.output@{@@@",
"@@@STEP_LOG_LINE@json.output@ \"result\": {@@@",
"@@@STEP_LOG_LINE@json.output@ \"instance_id\": \"40-chars-fake-of-the-package-instance_id\", @@@",
- "@@@STEP_LOG_LINE@json.output@ \"package\": \"gn/gn/${platform}\"@@@",
+ "@@@STEP_LOG_LINE@json.output@ \"package\": \"gn/gn/linux-amd64\"@@@",
"@@@STEP_LOG_LINE@json.output@ }@@@",
"@@@STEP_LOG_LINE@json.output@}@@@",
"@@@STEP_LOG_END@json.output@@@"
diff --git a/infra/recipes/gn.py b/infra/recipes/gn.py
index 2048936..2492dbd 100644
--- a/infra/recipes/gn.py
+++ b/infra/recipes/gn.py
@@ -100,7 +100,19 @@
if build_input.gerrit_changes:
return
- cipd_pkg_name = 'gn/gn/${platform}'
+ # TODO: Use ${platform} after crbug.com/855703 is fixed and deployed.
+ platform = '%s-%s' % (api.platform.name.replace('win', 'windows'), {
+ 'intel': {
+ 32: '386',
+ 64: 'amd64',
+ },
+ 'arm': {
+ 32: 'armv6',
+ 64: 'arm64',
+ },
+ }[api.platform.arch][api.platform.bits])
+
+ cipd_pkg_name = 'gn/gn/' + platform
gn = 'gn' + ('.exe' if api.platform.is_win else '')
pkg_def = api.cipd.PackageDefinition(
@@ -158,8 +170,8 @@
git_repo='gn.googlesource.com/gn',
revision=REVISION,
) + api.step_data('rev-parse', api.raw_io.stream_output(REVISION)) +
- api.step_data('cipd search gn/gn/${platform} git_revision:' + REVISION,
- api.cipd.example_search('gn/gn/${platform}',
+ api.step_data('cipd search gn/gn/linux-amd64 git_revision:' + REVISION,
+ api.cipd.example_search('gn/gn/linux-amd64',
['git_revision:' + REVISION])))
yield (api.test('cipd_register') + api.buildbucket.ci_build(
@@ -167,5 +179,5 @@
git_repo='gn.googlesource.com/gn',
revision=REVISION,
) + api.step_data('rev-parse', api.raw_io.stream_output(REVISION)) +
- api.step_data('cipd search gn/gn/${platform} git_revision:' + REVISION,
- api.cipd.example_search('gn/gn/${platform}', [])))
+ api.step_data('cipd search gn/gn/linux-amd64 git_revision:' + REVISION,
+ api.cipd.example_search('gn/gn/linux-amd64', [])))