-
Notifications
You must be signed in to change notification settings - Fork 12k
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
build: use bazel for snapshot builds #22543
Conversation
@@ -8,7 +8,7 @@ load("//:constants.bzl", "SNAPSHOT_REPOS") | |||
def _generate_snapshot_repo_filter(): | |||
filter = "" | |||
for (i, pkg_name) in enumerate(SNAPSHOT_REPOS.keys()): | |||
filter += "{sep}(..|objects|select(has(\"{pkg_name}\")))[\"{pkg_name}\"] |= \"github:{snapshot_repo}:BUILD_SCM_HASH-PLACEHOLDER\"\n".format( | |||
filter += "{sep}(..|objects|select(has(\"{pkg_name}\")))[\"{pkg_name}\"] |= \"github:{snapshot_repo}#BUILD_SCM_HASH-PLACEHOLDER\"\n".format( |
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.
Bug in the github dependency format.
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
I'd like to run a few more tests before we mark this as ready to merge. |
I ran into an issue trying to manually install the snapshots. The bazel build stamps snapshot versions of dependencies like:
It's using the stamp variable However, legacy build stamps using an abbreviated version of the SHA1, and the snapshot script tags the commit in the build repo using the abbreviated version, so running an npm install of the snapshots fails. I tried changing the snapshot script to tag using the longer hash, however git complains that the name is too long. Something I could do is to change the |
I think that's just because
Unfortunately I don't think we can with For reference here's the CI: https://app.circleci.com/pipelines/github/angular/angular-cli?branch=snapshot-test&filter=all |
This is not a big of deal, although sourcemaps are a bit redundant here and kinda of extra mbs over the wire and disk in this case. Unlike for angular/angular were they are useful for app developers. But yeah, I don't think there is a away to disable sourcemaps in |
I'm now able to install the snapshot build locally. I'm getting a failure on the e2e windows tests, which I've seen in other ci runs so it appears unrelated to my changes. Is that test suite known to be flaky? https://app.circleci.com/pipelines/github/angular/angular-cli/20377/workflows/dc026fcf-1783-4d3d-9ac9-9ec9854c1eb3/jobs/286136 |
@kormide, looks like our Node.Js v12 CI is red. Will investigate tomorrow, however it’s nothing related to this change. |
In that case, I think this is ready to go, unless you can think of anything else I should test first. |
Do you want to wait for @gregmagolan’s review? |
Your and @josephperrott's review is sufficient. @gregmagolan reviewed previously and is in the loop, but hes out today. |
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
There was a trivial conflict with |
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
@gregmagolan @josephperrott
Here are the snapshot repo diffs caused by flipping to the bazel build.
Note that some changes in these diffs may be caused by new things pushed to
master
of the "build" repos.CI runs for the
snapshot-test
branch set up to test the ci. The build artifacts are published to the build repos under the samesnapshot-test
branch name.