Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Added CI step for building with validation layers #42724

Merged
merged 2 commits into from
Jun 13, 2023

Conversation

gaaclarke
Copy link
Member

Let's try to make sure the validation layers don't break.

Pre-launch Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • I read the Tree Hygiene wiki page, which explains my responsibilities.
  • I read and followed the Flutter Style Guide and the C++, Objective-C, Java style guides.
  • I listed at least one issue that this PR fixes in the description above.
  • I added new tests to check the change I am making or feature I am adding, or Hixie said the PR is test-exempt. See testing the engine for instructions on writing and running engine tests.
  • I updated/added relevant documentation (doc comments with ///).
  • I signed the CLA.
  • All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@gaaclarke gaaclarke force-pushed the validation-layers-ci branch 2 times, most recently from f3fd928 to 8f9b6c2 Compare June 12, 2023 16:35
@gaaclarke gaaclarke marked this pull request as draft June 12, 2023 16:37
@gaaclarke gaaclarke force-pushed the validation-layers-ci branch from 8f9b6c2 to 9d6f43a Compare June 12, 2023 16:40
"--no-lto",
"--enable-vulkan-validation-layers"
],
"name": "android_debug_arm64",
Copy link
Member Author

Choose a reason for hiding this comment

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

I tried to give this a unique name but it didn't work since that name has to match the name of the generated directory by GN.

Copy link
Contributor

Choose a reason for hiding this comment

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

Have you tried keeping the name and the ninja config same when using the unique name?

Copy link
Member Author

Choose a reason for hiding this comment

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

yep, i don't know if there is an easy way to recall that failure though since I rebased.

Copy link
Contributor

Choose a reason for hiding this comment

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

Checked the history build of https://ci.chromium.org/p/flutter/builders/try/Linux%20linux_android_debug_engine?limit=50, are you referring to https://ci.chromium.org/ui/p/flutter/builders/try/Linux%20linux_android_debug_engine/11608/overview? The failed build run is: https://ci.chromium.org/ui/p/flutter/builders/try/Linux%20Engine%20Drone/972265/overview

But the input properties shows "config": "android_debug_arm64":

"build": {
    "archives": [],
    "drone_dimensions": [
      "device_type=none",
      "os=Linux"
    ],
    "gn": [
      "--android",
      "--android-cpu=arm64",
      "--no-lto",
      "--enable-vulkan-validation-layers"
    ],
    "name": "android_debug_arm64_validation_layers",
    "ninja": {
      "config": "android_debug_arm64",
      "targets": [
        "flutter",
        "flutter/shell/platform/android:abi_jars"
      ]
    },
    "recipe": "engine_v2/builder"
  },

Copy link
Member Author

Choose a reason for hiding this comment

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

I'm pretty sure I tried it. I just pushed that change to be sure.

Copy link
Contributor

@keyonghan keyonghan Jun 13, 2023

Choose a reason for hiding this comment

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

Nit: use a different name, say your earlier change android_debug_arm64_validation_layers, to distinguish the builds. Now it shows two same builds (https://ci.chromium.org/ui/p/flutter/builders/try/Linux%20linux_android_debug_engine/11686/overview):
Screenshot 2023-06-13 at 2 58 44 PM

Copy link
Member Author

Choose a reason for hiding this comment

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

@keyonghan I can't use a different name, right? We tried that above.

Copy link
Contributor

Choose a reason for hiding this comment

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

with cas_archive = false is safe to use a different name.

Copy link
Contributor

Choose a reason for hiding this comment

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

With "cas_archive": false,, I would expect the build to pass.

Copy link
Member Author

Choose a reason for hiding this comment

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

yep, worked with that field: #42826

@gaaclarke gaaclarke force-pushed the validation-layers-ci branch from 9d6f43a to 4d7a27a Compare June 12, 2023 21:06
],
"name": "android_debug_arm64_validation_layers",
"ninja": {
"config": "android_debug_arm64_validation_layers",
Copy link
Contributor

Choose a reason for hiding this comment

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

replace config here with android_debug_arm64, https://github.com/flutter/engine/tree/main/ci/builders#ninja.

"--no-lto",
"--enable-vulkan-validation-layers"
],
"name": "android_debug_arm64_validation_layers",
Copy link
Contributor

@godofredoc godofredoc Jun 12, 2023

Choose a reason for hiding this comment

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

You'll also need a "cas_archive": false here. https://github.com/flutter/engine/tree/main/ci/builders#archives

Copy link
Member Author

Choose a reason for hiding this comment

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

This appears to be what I was missing. I was thinking having an empty archive field would be the same thing as this.

@gaaclarke gaaclarke marked this pull request as ready for review June 13, 2023 19:38
@gaaclarke gaaclarke merged commit 4c2bae7 into flutter:main Jun 13, 2023
@gaaclarke gaaclarke mentioned this pull request Jun 13, 2023
8 tasks
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 14, 2023
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Jun 14, 2023
…128841)

flutter/engine@66a5761...727b441

2023-06-13 [email protected] Reland "[ios_platform_view] only recycle maskView when the view is applying mutators #42115" (flutter/engine#42823)
2023-06-13 [email protected] Roll Dart SDK from 41234fa4b22d to 2465228c0c21 (1 revision) (flutter/engine#42822)
2023-06-13 [email protected] [Impeller] Added cache for command buffers in vulkan (flutter/engine#42793)
2023-06-13 [email protected] setupDefultFontManager correctly clear out cache (flutter/engine#42178)
2023-06-13 [email protected] [Impeller] Reland attempt Vulkan setup and fallback to GLES. (flutter/engine#42820)
2023-06-13 [email protected] Added CI step for building with validation layers (flutter/engine#42724)
2023-06-13 [email protected] [Impeller] Null check for the device holder in the Vulkan context destructor (flutter/engine#42821)
2023-06-13 [email protected] Add missing includes (flutter/engine#42812)
2023-06-13 [email protected] Roll Dart SDK from 4dce1093ad94 to 41234fa4b22d (1 revision) (flutter/engine#42810)
2023-06-13 [email protected] [iOS][Keyboard] Wait vsync on UI thread and update viewport inset to avoid jitter. (flutter/engine#42312)

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 [email protected],[email protected],[email protected] 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://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
gaaclarke added a commit that referenced this pull request Jun 14, 2023
followup to #42724

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide] and the [C++,
Objective-C, Java style guides].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] I added new tests to check the change I am making or feature I am
adding, or Hixie said the PR is test-exempt. See [testing the engine]
for instructions on writing and running engine tests.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I signed the [CLA].
- [x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[C++, Objective-C, Java style guides]:
https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
[testing the engine]:
https://github.com/flutter/flutter/wiki/Testing-the-engine
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants