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', [])))