| Message ID | 20260522075925.2381158-3-jamin_lin@aspeedtech.com |
|---|---|
| State | New |
| Headers | show |
| Series | devtool: fix standalone clone conversion for nested git repos | expand |
On Fri, 2026-05-22 at 07:59 +0000, Jamin Lin wrote: > Add a test recipe with six git SRC_URI entries using nested destsuffix > values. This recipe is used by the devtool selftest > to verify that devtool modify correctly converts all nested git repos to > standalone clones. > > Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com> > --- > .../devtool-test-multi-destsuffix_git.bb | 29 +++++++++++++++++++ > 1 file changed, 29 insertions(+) > create mode 100644 meta-selftest/recipes-test/devtool/devtool-test-multi-destsuffix_git.bb > > diff --git a/meta-selftest/recipes-test/devtool/devtool-test-multi-destsuffix_git.bb b/meta-selftest/recipes-test/devtool/devtool-test-multi-destsuffix_git.bb > new file mode 100644 > index 0000000000..0702b13f3a > --- /dev/null > +++ b/meta-selftest/recipes-test/devtool/devtool-test-multi-destsuffix_git.bb > @@ -0,0 +1,29 @@ > +SUMMARY = "Test recipe for multiple git SRC_URI entries with nested destsuffix values" > +LICENSE = "CLOSED" > + > +# Six git entries all nested inside S (${UNPACKDIR}). This exercises the > +# devtool code path that must convert every nested git repo to a standalone > +# clone: the initial fetch uses a shared clone whose alternates point into > +# downloads/git2/; git repack copies those objects locally so the workspace > +# survives 'bitbake -c cleanall'. > +SRC_URI = "git://git.yoctoproject.org/dbus-wait;nobranch=1;protocol=https;name=level1_a;destsuffix=level1_a \ > + git://git.yoctoproject.org/dbus-wait;nobranch=1;protocol=https;name=level1_b;destsuffix=level1_b \ > + git://git.yoctoproject.org/dbus-wait;nobranch=1;protocol=https;name=level2_a;destsuffix=level1/level2_a \ > + git://git.yoctoproject.org/dbus-wait;nobranch=1;protocol=https;name=level2_b;destsuffix=level1/level2_b \ > + git://git.yoctoproject.org/dbus-wait;nobranch=1;protocol=https;name=level3_a;destsuffix=level1/level2/level3_a \ > + git://git.yoctoproject.org/dbus-wait;nobranch=1;protocol=https;name=level3_b;destsuffix=level1/level2/level3_b \ > +" Thanks for including a test case and recipe! These do not appear to be "nested" git repositories though, as none is contained within another. We also don't need all 6 of them. Perhaps just three is enough, nested like this: - destsuffix=level1 - destsuffix=level1/level2 - destsuffix=level1/level2/level3 Best regards,
diff --git a/meta-selftest/recipes-test/devtool/devtool-test-multi-destsuffix_git.bb b/meta-selftest/recipes-test/devtool/devtool-test-multi-destsuffix_git.bb new file mode 100644 index 0000000000..0702b13f3a --- /dev/null +++ b/meta-selftest/recipes-test/devtool/devtool-test-multi-destsuffix_git.bb @@ -0,0 +1,29 @@ +SUMMARY = "Test recipe for multiple git SRC_URI entries with nested destsuffix values" +LICENSE = "CLOSED" + +# Six git entries all nested inside S (${UNPACKDIR}). This exercises the +# devtool code path that must convert every nested git repo to a standalone +# clone: the initial fetch uses a shared clone whose alternates point into +# downloads/git2/; git repack copies those objects locally so the workspace +# survives 'bitbake -c cleanall'. +SRC_URI = "git://git.yoctoproject.org/dbus-wait;nobranch=1;protocol=https;name=level1_a;destsuffix=level1_a \ + git://git.yoctoproject.org/dbus-wait;nobranch=1;protocol=https;name=level1_b;destsuffix=level1_b \ + git://git.yoctoproject.org/dbus-wait;nobranch=1;protocol=https;name=level2_a;destsuffix=level1/level2_a \ + git://git.yoctoproject.org/dbus-wait;nobranch=1;protocol=https;name=level2_b;destsuffix=level1/level2_b \ + git://git.yoctoproject.org/dbus-wait;nobranch=1;protocol=https;name=level3_a;destsuffix=level1/level2/level3_a \ + git://git.yoctoproject.org/dbus-wait;nobranch=1;protocol=https;name=level3_b;destsuffix=level1/level2/level3_b \ +" + +SRCREV_level1_a = "64bc7c8fae61ded0c4e555aa775911f84c56e438" +SRCREV_level1_b = "64bc7c8fae61ded0c4e555aa775911f84c56e438" +SRCREV_level2_a = "64bc7c8fae61ded0c4e555aa775911f84c56e438" +SRCREV_level2_b = "64bc7c8fae61ded0c4e555aa775911f84c56e438" +SRCREV_level3_a = "64bc7c8fae61ded0c4e555aa775911f84c56e438" +SRCREV_level3_b = "64bc7c8fae61ded0c4e555aa775911f84c56e438" +SRCREV_FORMAT = "level1_a_level1_b_level2_a_level2_b_level3_a_level3_b" + +S = "${UNPACKDIR}" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" +do_install[noexec] = "1"
Add a test recipe with six git SRC_URI entries using nested destsuffix values. This recipe is used by the devtool selftest to verify that devtool modify correctly converts all nested git repos to standalone clones. Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com> --- .../devtool-test-multi-destsuffix_git.bb | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 meta-selftest/recipes-test/devtool/devtool-test-multi-destsuffix_git.bb