Support vendoring individual files from an upstream repository
Categories
(Developer Infrastructure :: Mach Vendor & Updatebot, enhancement)
Tracking
(firefox108 fixed)
Tracking | Status | |
---|---|---|
firefox108 | --- | fixed |
People
(Reporter: tjr, Assigned: tjr)
References
Details
Attachments
(8 files)
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
Details | Review |
Sometimes we don't want to clone an entire upstream repo just to get 5 files from it.
This is a leaky abstraction. We already have include and exclude that would allow us to accomplish this. It's just that cloning llvm or netbsd just to get 5 files is inefficient. Related, we have this kind of complicated code that's designed to detect spurious updates - which is when we update from upstream but nothing changes, because the upstream changes were e.g. in files we excluded.
We could get rid of the spurious update code if we expressed everything in terms of 'individual-files' - that is, only the files in tree get checked for updates, and if there is none then there is no update. But if we have a hundred files in-tree that isn't efficient either.
Ultimately, it seems like this is probably the best trade-off...
Assignee | ||
Comment 1•3 years ago
|
||
Depends on D157952
Assignee | ||
Comment 2•3 years ago
|
||
Depends on D158044
Assignee | ||
Comment 3•3 years ago
|
||
If there is a vendoring section missing in the moz.yaml,
we will error out. Detect this right away and give a better error.
Perform some cleanup since we know we have a vendoring section.
Depends on D158045
Assignee | ||
Comment 4•3 years ago
|
||
I noticed that 'branch' is only used in Updatebot in the
Commit Alert task (we made it for Angle.) It doesn't do
anything anywhere else. So assert this in the validation checks
Depends on D158046
Assignee | ||
Comment 5•3 years ago
|
||
Depends on D158047
Assignee | ||
Comment 6•3 years ago
|
||
Depends on D158048
Assignee | ||
Comment 7•3 years ago
|
||
Depends on D158049
Assignee | ||
Comment 8•3 years ago
|
||
Depends on D158050
Updated•3 years ago
|
Updated•3 years ago
|
Comment 10•3 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/b9b8631a5eaf
https://hg.mozilla.org/mozilla-central/rev/87392c6e2c7b
https://hg.mozilla.org/mozilla-central/rev/36b217d098a4
https://hg.mozilla.org/mozilla-central/rev/2bcdcab75a23
https://hg.mozilla.org/mozilla-central/rev/e1a8a5c347f8
https://hg.mozilla.org/mozilla-central/rev/14af6d382874
https://hg.mozilla.org/mozilla-central/rev/d7884101b2c9
https://hg.mozilla.org/mozilla-central/rev/c3943b948dc9
Description
•