Some branches fail to build an ISO because we merge their base branch too late
Our ISO build system errors out when building from a branch based on master:
> + apt-snapshots-serials prepare-build
> + apt-mirror debian
> Not building from a tag, but last version in changelog was released
> + DEBIAN_MIRROR=
> + apt-mirror debian-security
> Not building from a tag, but last version in changelog was released
> + DEBIAN_SECURITY_MIRROR=
> + apt-mirror torproject
> Not building from a tag, but last version in changelog was released
> + TORPROJECT_MIRROR=
> + [ -n ]
> + exit 1
I believe this is caused by auto/config
running apt-snapshots-serials prepare-build
before auto/build
had a chance to merge the base branch
(generally: stable
) into the topic branch that’s being built: a branch
based on master generally satisfies the “Not building from a tag, but
last version in changelog was released” error condition until their base
branch is merged into it.
The simplest, ad-hoc fix would probably be to move a chunk of code from
auto/config
to auto/build
. I’ll handle this.
But thinking about the root cause, a more fundamental issue becomes
obvious: merging the base branch happens too late, and by running a fair
amount of (build) code before we do that, we create a frankenstein ISO
whose build system partly comes from the current status of the topic
branch, and partly comes from the current status of it base branch. IMO
we should do the base branch merge first thing in the build process, in
a manner that’s isolated from other build steps, so that all build
code (including Rakefile
) except the tiny script that performs the
merge will be. anonym, bertagaz: if you agree we have a fundamental
problem here, please file a ticket about it.
Feature Branch: bugfix/14459-merge-base-branch-earlier
Related issues
- Related to #12557
- Related to #14857 (closed)
- Blocks #11355
- Blocks #13234 (closed)
- Blocks #12641 (closed)
Original created by @intrigeri on 14459 (Redmine)