On Thu, Jun 09, 2022 at 11:07:57AM +0100, Daniel P. Berrangé wrote:
On Thu, Jun 09, 2022 at 06:01:34AM -0400, Andrea Bolognani wrote:
> On Wed, Jun 08, 2022 at 08:03:07AM +0200, Erik Skultety wrote:
> > FWIW we could alternatively update the submodules manually, but we'd have
list
> > them explicitly, IOW:
> > $ git clone qemu ...
> > $ cd qemu.git
> > $ scripts/git-submodule.sh ui/keycodemapdb dtc slirp
>
> We could avoid hardcoding the names of the submodules by using
> something along the lines of
>
> $ ./scripts/git-submodule.sh update $(git submodule | awk '{print
> $2}' | grep -Ev '^(meson|roms/.*|tests/.*)$')
>
> A bit of a mouthful, but should be solid enough.
>
> > $ mkdir build && cd build
> > $ ../configure ... --with-git-submodules=ignore
>
> Using
>
> --with-git-submodules=validate
>
> would work too, since we'd have updated the submodules beforehand.
'validate' will still cause QEMU to run git commands to check
the submodule state, so I presume it'll still hit the problem
of ownership.
Yes, only the 'ignore' option value is viable here.
> I think I would prefer this approach to changing the git
> configuration for the root user.
I was going to say the opposite. Updating the root user git config
is harmless since our integration suite is intended to always run
inside a single use throwaway VM. IOW, we already assume the VM is
compromised at the end of every test cycle.
Yes, thanks for bringing it up, ^this is the main reason why I didn't propose
the submodule approach in the first place.
Erik