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

Step 6: Add clang cl pipeline for Windows #14668

Merged
merged 20 commits into from
Jan 29, 2021

Conversation

wrowe
Copy link
Contributor

@wrowe wrowe commented Jan 12, 2021

Commit Message: Step 6: Add clang cl pipeline for Windows
Additional Description:

Now that we have regenerated envoy build tools to update bazel and llvm, and picked up the llvm 11 tooling for windows on envoyproxy/master, finally introduce a clang-cl pipeline based on clang-cl

Co-authored-by: Sunjay Bhatia sunjayb@vmware.com

Risk Level: low (new facility)
Testing: local
Docs Changes: TBD
Release Notes: TBD
Platform Specific Features: Windows clang-cl compilation
Replaces #14135
Fixes #11974

Copy link
Member

@sunjayBhatia sunjayBhatia left a comment

Choose a reason for hiding this comment

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

Could you add the repository cache task that was recently merged to the clang-cl pipeline: https://github.com/envoyproxy/envoy/pull/14678/files#diff-8ca122481a2ae193003b523bf5b7a9cfa0e914be502d483b6adc1d06668c724a

This should help with download flakiness on Windows

.azure-pipelines/pipelines.yml Outdated Show resolved Hide resolved
sunjayBhatia and others added 12 commits January 14, 2021 14:11
Signed-off-by: Sunjay Bhatia <sunjayb@vmware.com>
Co-authored-by: William A Rowe Jr <wrowe@vmware.com>

Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
- Drop the distinction between flaky_ and fails_, now that flakes have
  been addressed, and very few true problems remain.

Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
- This may require new logic in bazel itself for msvc version detection

Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
Author: Sunjay Bhatia <sunjayb@vmware.com>
Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
- retest sni_dynamic_forward_proxy for error output

Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
.azure-pipelines/pipelines.yml Outdated Show resolved Hide resolved
- msvc-cl 'release' and 'clang-cl' jobs in parallel
- share repository cache since they share identical dependencies

Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
@wrowe wrowe marked this pull request as ready for review January 15, 2021 01:55
@wrowe
Copy link
Contributor Author

wrowe commented Jan 15, 2021

@lizan , @sunjayBhatia this looks ready for final review.

Copy link
Member

@sunjayBhatia sunjayBhatia left a comment

Choose a reason for hiding this comment

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

Just a couple questions, otherwise LGTM

.azure-pipelines/pipelines.yml Show resolved Hide resolved
ci/windows_ci_steps.sh Outdated Show resolved Hide resolved
Base automatically changed from master to main January 15, 2021 23:02
@repokitteh-read-only
Copy link

🙀 Error while processing event:

evaluation error
error: context deadline exceeded
🐱

Caused by: #14668 was edited by mattklein123.

see: more, trace.

Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
- suggested by sunjayBhatia as Windows docker images are rather large and
  can take significant time to compose.

Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
- This was put place with a gross of test failures, we are down
  to a handful of test failures and a dozen and a half deliberately
  skipped tests on the windows architecture
- Leave an example of how to list all tests with a given tag

Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
Signed-off-by: William A Rowe Jr <wrowe@vmware.com>
@wrowe
Copy link
Contributor Author

wrowe commented Jan 26, 2021

Once again, @sunjayBhatia and @lizan, I think all the concerns have been asked and answered, but let me know if I can add any more polish to this submission before it's merged. We will be iterating over .pdb output (just as on msvc-cl) and the build output (right now, a 33% larger binary than the equivalent MS tooling, speed delta TBD.)

@wrowe
Copy link
Contributor Author

wrowe commented Jan 28, 2021

@htuch as this is your ask, and it's been reviewed and lizan's comments addressed, if you would like to move ahead please go ahead and merge this.

@htuch
Copy link
Member

htuch commented Jan 29, 2021

Amazing, thank you!

@htuch htuch merged commit bad818c into envoyproxy:main Jan 29, 2021
@wrowe wrowe deleted the add-clang-cl-pipeline branch February 11, 2021 19:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Windows builds with clang-cl.exe
4 participants