-
Notifications
You must be signed in to change notification settings - Fork 60
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
[CI] Add a roll-to-Dart-SDK job #131
Comments
As an alternative we could try to match the tools on the GitHub CI and the Dart SDK. However, this seems to be non-trivial:
|
You could download the clang the SDK uses (but you'd have to bump it every now and then to match the SDK DEPS): The package is just a zip file with some metadata json in it, so it could easily be fetched. I'm assuming "on the bots" here refers to GitHub Actions. |
For repositories where we use Gerrit reviews, we have a copybara job that creates a Gerrit CL for each new GitHub PR. This would be a way to take GitHub PRs and run tryjobs for them. But I think the disadvantages may outweigh the benefits. These Gerrit CLs would have to be clearly marked as not replacing the GitHub PR, and not to be landed. The extra complexity of having these CLs around would be confusing to users. And I'm not sure this would help - the SDK DEPS would then need a CL with the ref of the Gerrit CL used for the native dependency, and gclient would need to check out that branch correctly. |
We would then somehow need to also put that clang on the path, or pass some environment variables that the Dart tests recognize to use this clang instead of the pre-installed one.
This is not what we want, we don't want Gerrit for this repo. We want to run a Dart SDK LUCI bot with the DEPS file in the SDK updated.
Yes exactly, so making a Gerrit for this repo doesn't help. We can make the SDK CL by modifying the DEPS file there (and making it point to the GitHub repo instead), no need for a Gerrit CL for this repo. |
Trying a |
Just use the download link, not the link I sent. I sent that link because it's more helpful if you want to upgrade the version later (you can just replace the git hash). |
|
I forgot to say what problem I was trying to solve: I'm not sure that changing the DEPS to point the third-party dependency native to a GitHub repository branch will work. Depot tools may refuse to check out the dependency from there, because the git host isn't in the allowed list of source repository hosts for the project to check out from. Or it might not download the PR ref, even if it could use the main branch. Have you tried running a try job with this DEPS change? That was my only concern, that these checkouts would not work. |
Yes, I've been doing this before when I was developing. It requires |
Note from chat:
|
You're right, also it's a signed URL so hardcoding it won't work. The CIPD client in depot_tools could possibly be used or we could just manually upload the ZIP file to a more easily accessible location for this. |
It would be nice if we can add a roll-to-Dart-SDK job that:
a. point the repository to GitHub instead of Dart mirror, and
b. sets the commit hash to the PRs commit hash.
I have no idea how hard or easy this would be. cc @athomas @whesse Do we have anything like this already? How hard would this be?
This would prevent us breaking rolls into the Dart SDK. And this might be useful for other DEPS as well that roll into the Dart SDK as an early warning sign. cc @devoncarew
The text was updated successfully, but these errors were encountered: