-
Notifications
You must be signed in to change notification settings - Fork 29.7k
feat: Tag Fuchsia artifacts by content hash #172132
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
fuchsia artifacts handled very differently in the recipies (calls a script in engine/src!).
|
It looks like this pull request may not have tests. Please make sure to add tests or get an explicit test exemption before merging. If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix? Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.If you believe this PR qualifies for a test exemption, contact "@test-exemption-reviewer" in the #hackers channel in Discord (don't just cc them here, they won't see it!). The test exemption team is a small volunteer group, so all reviewers should feel empowered to ask for tests, without delegating that responsibility entirely to the test exemption group. |
matanlurey
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lgtm but you might want Zach or Jason to take a second look
I've asked Zach. fyi @chingjun I need to update the build_fuchsia_artifacts.py to NOT fail when the content_hash is the same. This state is different from other builders that are just not built. |
zanderso
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm w/ nits
Done. |
|
autosubmit label was removed for flutter/flutter/172132, because - The status or check suite Linux mac_android_aot_engine has failed. Please fix the issues identified (or deflake) before re-applying this label. |
flutter/flutter@a930ec1...cc3110c 2025-07-15 [email protected] feat: Tag Fuchsia artifacts by content hash (flutter/flutter#172132) 2025-07-15 [email protected] Marks Linux_android_emu native_assets_android to be unflaky (flutter/flutter#171145) 2025-07-15 [email protected] [ Tool ] Fix `flutter upgrade` stating that an upgrade is available on `main` when up to date (flutter/flutter#172141) 2025-07-15 [email protected] Reland "Add feature flags to the framework" (flutter/flutter#171545) 2025-07-14 [email protected] chore: unskip tests cases (flutter/flutter#172031) 2025-07-14 [email protected] Route transition duration (flutter/flutter#171109) 2025-07-14 [email protected] [Impeller] libImpeller: Correctly release mappings created using the C++ API wrapper. (flutter/flutter#172136) 2025-07-14 [email protected] Roll Skia from 5f7adef2ac25 to 2f4ad5d83704 (3 revisions) (flutter/flutter#172134) 2025-07-14 [email protected] Migrate to arm based firebase test devices for api 26 and 27 (flutter/flutter#172128) 2025-07-14 [email protected] [web] Cleanup unnecessary dart defines and renderer in web tests (flutter/flutter#172130) 2025-07-14 [email protected] Use granular skparagraph targets (flutter/flutter#161676) 2025-07-14 [email protected] [ Widget Preview ] Initial work to support reacting to IDE events (flutter/flutter#172040) 2025-07-14 [email protected] Roll Skia from e95c92d867b5 to 5f7adef2ac25 (8 revisions) (flutter/flutter#172123) 2025-07-14 [email protected] [skia] Set GN flags explicitly for fuchsia build (flutter/flutter#172104) 2025-07-14 [email protected] fix: documentation around led launch broken (flutter/flutter#171983) 2025-07-14 [email protected] [ Tool ] Downgrade and pin DDS to 5.0.3 (flutter/flutter#172120) 2025-07-14 [email protected] Apply superellipse clipping to iOS platform views using an approximated round rect (flutter/flutter#172033) 2025-07-14 [email protected] [Impeller] Fix broken image links in documentation. (flutter/flutter#171465) 2025-07-14 [email protected] remove `x86` in CI builder linux_android_emulator (flutter/flutter#170964) 2025-07-14 [email protected] remove `x86` in flutter_gdb (flutter/flutter#170966) 2025-07-14 [email protected] fix android studio lint about lambda function (flutter/flutter#172063) 2025-07-14 [email protected] Roll Fuchsia Linux SDK from qw0YTtPhosk3-rr4h... to tQAtsLtpc0oBIqRwC... (flutter/flutter#172116) 2025-07-14 [email protected] Roll Skia from 92354f64e37f to e95c92d867b5 (1 revision) (flutter/flutter#172111) 2025-07-14 [email protected] [web] Delete unused files in the engine (flutter/flutter#172035) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
After the fuchsia build process, be sure to tag uploaded artifacts with `content_aware_hash:` if configured. fixes flutter#171985 This was a bit of a rabbit hole, with some "magic parameters" that control uploading / tagging. I'm not sure cipd supports two tags with the say keys; but I wouldn't want the content hash having the key "git_revision". Pre-submits: Not affected since --engine-version is always '' which is read as "do not upload" Post-submits: Reads the `linux_fuchsia.json` builder to look for flags. > Note: This needs to land before the tool can be updated to download the content_aware_hash tag. Tested: locally, on linux, after building all the x64 targets. With and without engine-version, with and without linux_fuchsia.json flags. ```shell $ src/flutter/tools/fuchsia/merge_and_upload_debug_symbols.py --target-arch x64 --engine 'abcd' --upload --out-dir tmp --symbol-dirs out/ci/fuchsia_debug_x64/.build-id out/ci/fuchsia_release_x64/.build-id out/ci/fuchsia_profile_x64/.build-id Using content hash 2201006225127f112f6576fcf73dd00671b2012e for engine version ['cipd', 'create', '-pkg-def', '/usr/local/google/home/codefu/src/flutter/engine/tmp/debug_symbols.cipd.yaml', '-ref', 'latest', '-tag', 'git_revision:abcd', '-verification-timeout', '10m0s', '-tag', 'content_aware_hash:2201006225127f112f6576fcf73dd00671b2012e'] ``` ``` $ python3 src/flutter/tools/fuchsia/build_fuchsia_artifacts.py --archs x64 --engine 'abc' --cipd-dry-run --upload Using content hash 2201006225127f112f6576fcf73dd00671b2012e for engine version codefu: ['cipd', 'create', '-pkg-def', 'fuchsia.cipd.yaml', '-ref', 'latest', '-tag', 'git_revision:abc', '-tag', 'content_aware_hash:2201006225127f112f6576fcf73dd00671b2012e'] ```
…r#9631) flutter/flutter@a930ec1...cc3110c 2025-07-15 [email protected] feat: Tag Fuchsia artifacts by content hash (flutter/flutter#172132) 2025-07-15 [email protected] Marks Linux_android_emu native_assets_android to be unflaky (flutter/flutter#171145) 2025-07-15 [email protected] [ Tool ] Fix `flutter upgrade` stating that an upgrade is available on `main` when up to date (flutter/flutter#172141) 2025-07-15 [email protected] Reland "Add feature flags to the framework" (flutter/flutter#171545) 2025-07-14 [email protected] chore: unskip tests cases (flutter/flutter#172031) 2025-07-14 [email protected] Route transition duration (flutter/flutter#171109) 2025-07-14 [email protected] [Impeller] libImpeller: Correctly release mappings created using the C++ API wrapper. (flutter/flutter#172136) 2025-07-14 [email protected] Roll Skia from 5f7adef2ac25 to 2f4ad5d83704 (3 revisions) (flutter/flutter#172134) 2025-07-14 [email protected] Migrate to arm based firebase test devices for api 26 and 27 (flutter/flutter#172128) 2025-07-14 [email protected] [web] Cleanup unnecessary dart defines and renderer in web tests (flutter/flutter#172130) 2025-07-14 [email protected] Use granular skparagraph targets (flutter/flutter#161676) 2025-07-14 [email protected] [ Widget Preview ] Initial work to support reacting to IDE events (flutter/flutter#172040) 2025-07-14 [email protected] Roll Skia from e95c92d867b5 to 5f7adef2ac25 (8 revisions) (flutter/flutter#172123) 2025-07-14 [email protected] [skia] Set GN flags explicitly for fuchsia build (flutter/flutter#172104) 2025-07-14 [email protected] fix: documentation around led launch broken (flutter/flutter#171983) 2025-07-14 [email protected] [ Tool ] Downgrade and pin DDS to 5.0.3 (flutter/flutter#172120) 2025-07-14 [email protected] Apply superellipse clipping to iOS platform views using an approximated round rect (flutter/flutter#172033) 2025-07-14 [email protected] [Impeller] Fix broken image links in documentation. (flutter/flutter#171465) 2025-07-14 [email protected] remove `x86` in CI builder linux_android_emulator (flutter/flutter#170964) 2025-07-14 [email protected] remove `x86` in flutter_gdb (flutter/flutter#170966) 2025-07-14 [email protected] fix android studio lint about lambda function (flutter/flutter#172063) 2025-07-14 [email protected] Roll Fuchsia Linux SDK from qw0YTtPhosk3-rr4h... to tQAtsLtpc0oBIqRwC... (flutter/flutter#172116) 2025-07-14 [email protected] Roll Skia from 92354f64e37f to e95c92d867b5 (1 revision) (flutter/flutter#172111) 2025-07-14 [email protected] [web] Delete unused files in the engine (flutter/flutter#172035) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
After the fuchsia build process, be sure to tag uploaded artifacts with `content_aware_hash:` if configured. fixes flutter#171985 This was a bit of a rabbit hole, with some "magic parameters" that control uploading / tagging. I'm not sure cipd supports two tags with the say keys; but I wouldn't want the content hash having the key "git_revision". Pre-submits: Not affected since --engine-version is always '' which is read as "do not upload" Post-submits: Reads the `linux_fuchsia.json` builder to look for flags. > Note: This needs to land before the tool can be updated to download the content_aware_hash tag. Tested: locally, on linux, after building all the x64 targets. With and without engine-version, with and without linux_fuchsia.json flags. ```shell $ src/flutter/tools/fuchsia/merge_and_upload_debug_symbols.py --target-arch x64 --engine 'abcd' --upload --out-dir tmp --symbol-dirs out/ci/fuchsia_debug_x64/.build-id out/ci/fuchsia_release_x64/.build-id out/ci/fuchsia_profile_x64/.build-id Using content hash 2201006225127f112f6576fcf73dd00671b2012e for engine version ['cipd', 'create', '-pkg-def', '/usr/local/google/home/codefu/src/flutter/engine/tmp/debug_symbols.cipd.yaml', '-ref', 'latest', '-tag', 'git_revision:abcd', '-verification-timeout', '10m0s', '-tag', 'content_aware_hash:2201006225127f112f6576fcf73dd00671b2012e'] ``` ``` $ python3 src/flutter/tools/fuchsia/build_fuchsia_artifacts.py --archs x64 --engine 'abc' --cipd-dry-run --upload Using content hash 2201006225127f112f6576fcf73dd00671b2012e for engine version codefu: ['cipd', 'create', '-pkg-def', 'fuchsia.cipd.yaml', '-ref', 'latest', '-tag', 'git_revision:abc', '-tag', 'content_aware_hash:2201006225127f112f6576fcf73dd00671b2012e'] ```
After the fuchsia build process, be sure to tag uploaded artifacts with `content_aware_hash:` if configured. fixes flutter#171985 This was a bit of a rabbit hole, with some "magic parameters" that control uploading / tagging. I'm not sure cipd supports two tags with the say keys; but I wouldn't want the content hash having the key "git_revision". Pre-submits: Not affected since --engine-version is always '' which is read as "do not upload" Post-submits: Reads the `linux_fuchsia.json` builder to look for flags. > Note: This needs to land before the tool can be updated to download the content_aware_hash tag. Tested: locally, on linux, after building all the x64 targets. With and without engine-version, with and without linux_fuchsia.json flags. ```shell $ src/flutter/tools/fuchsia/merge_and_upload_debug_symbols.py --target-arch x64 --engine 'abcd' --upload --out-dir tmp --symbol-dirs out/ci/fuchsia_debug_x64/.build-id out/ci/fuchsia_release_x64/.build-id out/ci/fuchsia_profile_x64/.build-id Using content hash 2201006225127f112f6576fcf73dd00671b2012e for engine version ['cipd', 'create', '-pkg-def', '/usr/local/google/home/codefu/src/flutter/engine/tmp/debug_symbols.cipd.yaml', '-ref', 'latest', '-tag', 'git_revision:abcd', '-verification-timeout', '10m0s', '-tag', 'content_aware_hash:2201006225127f112f6576fcf73dd00671b2012e'] ``` ``` $ python3 src/flutter/tools/fuchsia/build_fuchsia_artifacts.py --archs x64 --engine 'abc' --cipd-dry-run --upload Using content hash 2201006225127f112f6576fcf73dd00671b2012e for engine version codefu: ['cipd', 'create', '-pkg-def', 'fuchsia.cipd.yaml', '-ref', 'latest', '-tag', 'git_revision:abc', '-tag', 'content_aware_hash:2201006225127f112f6576fcf73dd00671b2012e'] ```
After the fuchsia build process, be sure to tag uploaded artifacts with `content_aware_hash:` if configured. fixes flutter#171985 This was a bit of a rabbit hole, with some "magic parameters" that control uploading / tagging. I'm not sure cipd supports two tags with the say keys; but I wouldn't want the content hash having the key "git_revision". Pre-submits: Not affected since --engine-version is always '' which is read as "do not upload" Post-submits: Reads the `linux_fuchsia.json` builder to look for flags. > Note: This needs to land before the tool can be updated to download the content_aware_hash tag. Tested: locally, on linux, after building all the x64 targets. With and without engine-version, with and without linux_fuchsia.json flags. ```shell $ src/flutter/tools/fuchsia/merge_and_upload_debug_symbols.py --target-arch x64 --engine 'abcd' --upload --out-dir tmp --symbol-dirs out/ci/fuchsia_debug_x64/.build-id out/ci/fuchsia_release_x64/.build-id out/ci/fuchsia_profile_x64/.build-id Using content hash 2201006225127f112f6576fcf73dd00671b2012e for engine version ['cipd', 'create', '-pkg-def', '/usr/local/google/home/codefu/src/flutter/engine/tmp/debug_symbols.cipd.yaml', '-ref', 'latest', '-tag', 'git_revision:abcd', '-verification-timeout', '10m0s', '-tag', 'content_aware_hash:2201006225127f112f6576fcf73dd00671b2012e'] ``` ``` $ python3 src/flutter/tools/fuchsia/build_fuchsia_artifacts.py --archs x64 --engine 'abc' --cipd-dry-run --upload Using content hash 2201006225127f112f6576fcf73dd00671b2012e for engine version codefu: ['cipd', 'create', '-pkg-def', 'fuchsia.cipd.yaml', '-ref', 'latest', '-tag', 'git_revision:abc', '-tag', 'content_aware_hash:2201006225127f112f6576fcf73dd00671b2012e'] ```
After the fuchsia build process, be sure to tag uploaded artifacts with
content_aware_hash:if configured.fixes #171985
This was a bit of a rabbit hole, with some "magic parameters" that control uploading / tagging. I'm not sure cipd supports two tags with the say keys; but I wouldn't want the content hash having the key "git_revision".
Pre-submits: Not affected since --engine-version is always '' which is read as "do not upload"
Post-submits: Reads the
linux_fuchsia.jsonbuilder to look for flags.Tested: locally, on linux, after building all the x64 targets. With and without engine-version, with and without linux_fuchsia.json flags.