Skip to content
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

[et] Prepare local_engine.json for CI, teach et to understand local build names #51803

Merged
merged 1 commit into from
Apr 3, 2024

Conversation

zanderso
Copy link
Member

@zanderso zanderso commented Mar 31, 2024

This is steps (2) and (3) of flutter/flutter#145263.

The next steps after this are to:

  1. Fix any issues that come up when running local_engine.json in CI.
  2. Step (4) of Prepare et for local RBE workflows flutter#145263
  3. Fill in some missing builds in local_engine.json.

/// If a name starts with '$OS/', it is a local development build, and the
/// mangled name has the '$OS/' part stripped off.
///
/// If the name does not start with '$OS/', then it starts with 'ci/' and is
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want to throw if it doesn't?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

/// Transform the name of a build into the name presented and accepted by the
/// CLI
///
/// If a name starts with '$OS/', it is a local development build, and the
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we expand this with 1 more sentence of examples of $OS (maybe mention it's [Platorm.operatingSystem]).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

/// name from `environment`.
String demangleConfigName(Environment environment, String name) {
const String cif = 'ci/';
const String cib = r'ci\';
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this for Windows or something else, I don't understand this one :P

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I would rename cif and cib to something that indicates Win/Unix path endings.

Also you could factor these constants out and use them above on line 82.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If so I think we could use package:path/path.dart#fragment (or just rely on the methods in path that implicitly use the right fragment).

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cleaned this up using these suggestions. Thanks!

@zanderso zanderso force-pushed the run-local-engine-configs branch from 715e89b to 6f66f45 Compare April 1, 2024 17:10
/// `platform.operatingSystem` in the passed-in `environment`.
///
/// If the name does not start with '$OS/', then it must start with 'ci/' or
/// 'ci\' in which case the name is returned unchanged.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some example inputs/outputs would help this comment

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

/// name from `environment`.
String demangleConfigName(Environment environment, String name) {
const String cif = 'ci/';
const String cib = r'ci\';
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I would rename cif and cib to something that indicates Win/Unix path endings.

Also you could factor these constants out and use them above on line 82.

@zanderso zanderso force-pushed the run-local-engine-configs branch 2 times, most recently from 979dabf to e96f5e4 Compare April 2, 2024 16:59
@flutter-dashboard
Copy link

Golden file changes have been found for this pull request. Click here to view and triage (e.g. because this is an intentional change).

If you are still iterating on this change and are not ready to resolve the images on the Flutter Gold dashboard, consider marking this PR as a draft pull request above. You will still be able to view image results on the dashboard, commenting will be silenced, and the check will not try to resolve itself until marked ready for review.

Changes reported for pull request #51803 at sha e96f5e4

@flutter-dashboard
Copy link

Golden file changes are available for triage from new commit, Click here to view.

Changes reported for pull request #51803 at sha 1b3cd84

@zanderso zanderso force-pushed the run-local-engine-configs branch from 1b3cd84 to 0559567 Compare April 2, 2024 23:22
@zanderso zanderso merged commit 2f763b7 into flutter:main Apr 3, 2024
29 checks passed
@zanderso zanderso deleted the run-local-engine-configs branch April 3, 2024 02:21
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Apr 3, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Apr 3, 2024
…146177)

flutter/engine@ef60a95...e603f89

2024-04-03 goderbauer@google.com Remove outdated `deprecated_member_use` ignores (flutter/engine#51836)
2024-04-03 matanlurey@users.noreply.github.com Use internal retries for SurfaceTexture and Impeller tests too. (flutter/engine#51856)
2024-04-03 zanderso@users.noreply.github.com [et] Prepare local_engine.json for CI, teach et to understand local build names (flutter/engine#51803)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC matanl@google.com,rmistry@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: 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
johnmccutchan added a commit to johnmccutchan/engine that referenced this pull request May 1, 2024
et run was broken in flutter#51803

this PR adds the missing calls to mangledConfigName before invoking flutter run
@johnmccutchan johnmccutchan mentioned this pull request May 1, 2024
auto-submit bot pushed a commit that referenced this pull request May 1, 2024
et run was broken in #51803

this PR adds the missing calls to mangledConfigName before invoking flutter run
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants