Re: Upstream branch naming changes breaking source mirrors


Richard Purdie
 

On Tue, 2020-07-07 at 08:58 -0500, Joshua Watt wrote:

On 7/7/20 6:42 AM, Richard Purdie wrote:
A number of upstream git repos we build from are transitioning
"master"
branches to "main" branches. They're doing this and removing the
old
name.

The scale of the problem this causes us is only just becoming
apparent.
iso-codes did this, I tested a patch to update master-next.
Everything
was fine until I did this as DL_DIR has "master" in it.

After I tested the change in master-next, the new main branch was
added
to DL_DIR and the old master branch was removed. This broke master
which now no longer had the correct source in the mirror or from
upstream. It will have also broken dunfell and perhaps a number of
other releases. Those do have sources from the release period we
could
use but they're not configured to fall back to them at present
(they
probably should be?).
I'm a little confused; is the old SHA1 not an ancestor of the new
branch head? I would have expected the required SHA1 to be in DL_DIR
just the same as if the master branch head had moved?
The fetcher is strict about which branch the SHA1 is on. There were
good reasons we started enforcing that, I have to admit I don't
remember the reasons offhand. Its that which is tripping things up
though.

Is this caused because the SRC_URI specifies a branch and the fetched
only downloads that specific branch from upstream? If a branch is
specified, should that be encoded in the DL archive somehow?
We only have one archive per repository, not per branch.

Cheers,

Richard

Join {openembedded-architecture@lists.openembedded.org to automatically receive all group messages.