Skip to content

updating fails when sysext is enabled #1788

@till

Description

@till

Description

Tried to update a node from Flatcar 3510.2.2 to the latest stable and it failed. After some digging (thank you @t-lo, @jepio and @tormath1), it seems like enabling the python sysext (via enabled-sysext.conf) blocked the update process.

This is the journal when it failed:

Jun 26 17:26:08 node-001.node update_engine[883]: I0626 17:26:08.282311   883 subprocess.cc:43] Subprocess status: 1
Jun 26 17:26:08 node-001.node update_engine[883]: I0626 17:26:08.282341   883 subprocess.cc:46] Subprocess output:
Jun 26 17:26:08 node-001.node update_engine[883]: Args { output_dir: "/var/lib/update_engine/ue-rs/", target_filename: Some("oem-openstack.raw"), input_xml: Some("/var/lib/update_engine/prefs/full-response"), payload_url: None, pubkey_file: "/usr/share/update_engine/update-payload-key.pub.pem", image_match: ["*oem-openstack.gz"], take_first_match: true }
Jun 26 17:26:08 node-001.node update_engine[883]: writing to /var/lib/update_engine/ue-rs/.unverified/oem-openstack.gz
Jun 26 17:26:08 node-001.node update_engine[883]: Parsed and verified signature data from file "/var/lib/update_engine/ue-rs/.unverified/oem-openstack.gz"
Jun 26 17:26:08 node-001.node update_engine[883]: Trying to place /var/lib/update_engine/oem-openstack-4230.2.0.raw on OEM partition
Jun 26 17:26:08 node-001.node update_engine[883]: grep: /usr/share/flatcar/enabled-sysext.conf: No such file or directory
Jun 26 17:26:08 node-001.node update_engine[883]: Args { output_dir: "/var/lib/update_engine/ue-rs/", target_filename: Some("flatcar-python.raw"), input_xml: Some("/var/lib/update_engine/prefs/full-response"), payload_url: None, pubkey_file: "/usr/share/update_engine/update-payload-key.pub.pem", image_match: ["*flatcar-python.gz"], take_first_match: true }
Jun 26 17:26:08 node-001.node update_engine[883]: writing to /var/lib/update_engine/ue-rs/.unverified/flatcar-python.gz
Jun 26 17:26:08 node-001.node update_engine[883]: Parsed and verified signature data from file "/var/lib/update_engine/ue-rs/.unverified/flatcar-python.gz"
Jun 26 17:26:08 node-001.node update_engine[883]: mv: cannot move '/var/lib/update_engine/flatcar-python.raw' to '/etc/flatcar/sysext/flatcar-python-4230.2.0.raw': No such file or directory
Jun 26 17:26:08 node-001.node update_engine[883]: E0626 17:26:08.282346   883 postinstall_runner_action.cc:94] Postinst command failed with code: 1
Jun 26 17:26:08 node-001.node update_engine[883]: I0626 17:26:08.287457   883 action_processor.cc:68] ActionProcessor::ActionComplete: PostinstallRunnerAction action failed. Aborting processing.
Jun 26 17:26:08 node-001.node update_engine[883]: I0626 17:26:08.287475   883 action_processor.cc:73] ActionProcessor::ActionComplete: finished last action of type PostinstallRunnerAction
Jun 26 17:26:08 node-001.node update_engine[883]: I0626 17:26:08.287478   883 update_attempter.cc:302] Processing Done.
Jun 26 17:26:08 node-001.node update_engine[883]: E0626 17:26:08.287561   883 update_attempter.cc:615] Update failed.

Impact

The node is not updated.

Environment and steps to reproduce

  • install e.g. 3510.2.2 (openstack)
  • echo "python" > /etc/flatcar/enabled-sysext.conf
  • update_engine_client -update

Expected behavior

Node is updated.

Additional information

It would be really nice, if the log/output from update_engine_client or flatcar-update elevated these problems. One previous problem was that I had changed the name of the sysext to flatcar-python (per current docs), but that also blocked the update because it is indeed called python.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions