We should always run CI from the target context. For this repo, it
doesn't really matter because only committers have PR access. As a
reference for best practice, we should encourage the more secure event.
cranky: review-master-changes -- fix 2nd order derivatives
In some cases such as respins, it was possible to not be able to find a
starting point for calculating a changelist. This was addressed in
29ed91b7 ("cranky: review-master-changes: Fix the case when the base in the changelog is not in the tree")
This approach was found to not work with derivates of derivaties. Let's
use the original method and then attempt the more expanded method as a
fallback.
Maintain exit-on-error behavior with the option to override using
--rollback. The call to update-dependent does not exit immediately since
we _may_ need to rollback. All other non-zero return codes will abort as
expected. Stop processing packages once the first error is encountered
in order to be consistent with the other cranky commands.
Without --rollback, the user may end up in an inconsistent state where
one package succeeds while one or more remain unchanged.
cranky: update-dependents -- update-dependent on all packages
Introduce a new subcommand that updates all dependent packages for a
tree set. This command can be run from any package and the operation is
done as a transaction. Either all packages get updated or the changes
are completely reverted.
The SC1091 warning should also be ignored since shellcheck cannot
resolve the dynamic debian.env file. Add an explanatory comment for
justify this disable.