Different Git state between isobuilders and isotesters
While reviewing tails!479 (merged) I noticed that this step failure always occurred:
Then the only hosts in APT sources are "cdn-fastly.deb.debian.org,umjqavufhoix3smyq6az2sx4istmuvsgmz4bq5u5x56rnayejoo6l2qd.onion,apow7mjfryruh65chtdydfmqfpj5btws7nbocgtaovhvezgccyjazpqd.onion" # features/step_definitions/apt.rb:9
Bad APT source 'deb tor+http://sdscoq7snqtznauu.onion/torproject.org/ buster main' (RuntimeError)
Let's analyze build job #11 that triggered test run #12, which showed the error exactly as above.
We recently adjusted the APT sources with tails!453 (merged), which was merged into testing
(i.e. the base branch) after tails!479 (merged) was branched off. So the above failure indicates that the image was built without merging its base branch (i.e. we keep the old APT source), and then we ran the test suite with the base branch merged (that expects the new APT source). I.e. the build and test jobs use different Git states, and breakage ensues. Ouch.
However, looking at the build job's console log we have:
10:05:54 + git reset --hard ebaab2ebcba808a01639c4bb53df9f732542f3c1
[...]
10:05:57 Merging base branch 'testing' (at commit 3b5e4d8f24ce43246726553b170858bf792cd210) ...
In the test job's console we have something equivalent:
10:57:23 + git reset --hard ebaab2ebcba808a01639c4bb53df9f732542f3c1
[...]
10:57:23 + git merge --no-edit 3b5e4d8f24ce43246726553b170858bf792cd210
So it sure looks like they are in the same Git state. What is going on here?
FWIW, I merged testing
into tails!479 (merged) to confirm that it fixes the problem (otherwise I'm completely lost here).