sysupdate: Ignore resources that are not pending
`updatectl enable --now` systematically fails because the update phase find resources that are not pending. So instead we should ignore them. Fixes #41254
This commit is contained in:
committed by
Daan De Meyer
parent
53b44ddfa7
commit
bd2c3d35ce
@@ -1609,8 +1609,10 @@ int transfer_process_partial_and_pending_instance(Transfer *t, Instance *i) {
|
||||
|
||||
/* Does this instance already exist in the target but isn’t pending? */
|
||||
existing = resource_find_instance(&t->target, i->metadata.version);
|
||||
if (existing && !existing->is_pending)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "Failed to acquire '%s', instance is already in the target but is not pending.", i->path);
|
||||
if (existing && !existing->is_pending) {
|
||||
log_info("Resource '%s' instance is already in the target but is not pending.", i->path);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* All we need to do is compute the temporary paths. We don’t need to do any of the other work in
|
||||
* transfer_acquire_instance(). */
|
||||
|
||||
@@ -352,7 +352,7 @@ EOF
|
||||
mkdir "$CONFIGDIR/optional.feature.d"
|
||||
echo -e "[Feature]\nEnabled=true" > "$CONFIGDIR/optional.feature.d/enable.conf"
|
||||
"$SYSUPDATE" --offline list v5 | grep "incomplete" >/dev/null
|
||||
update_now "monolithic"
|
||||
update_now "$update_type"
|
||||
"$SYSUPDATE" --offline list v5 | grep -v "incomplete" >/dev/null
|
||||
verify_version "$blockdev" "$sector_size" v3 1
|
||||
verify_version_current "$blockdev" "$sector_size" v5 2
|
||||
|
||||
Reference in New Issue
Block a user