Description
What I expected to happen:
An instance built with latest changes to the core-kit can be connected to.
What actually happened:
The instance never reaches multi-user.target:
Starting Generate network configuration...
[ 6.103667] netdog[961]: Failed to write network interface configuration: Error serializing config for 'eth0' to XML: Unsupported operation: character `$` is not allowed at the start of an XML name `$unflatten=mode`
Starting Disable kexec load syscalls...
Starting Bottlerocket data store migrator...
[ 6.299955] migrator[965]: 19:08:16 [INFO] Requested version 1.21.0 matches version of given datastore at '/var/lib/bottlerocket/datastore/v1.21.0_n6rIjKZJacoTzZab'; nothing to do
[ OK ] Started ACPI event daemon.
[FAILED] Failed to start Generate network configuration.
See 'systemctl status generate-network-config.service' for details.
This appears to be due to Rust dependency updates in #34 , specifically to netdog
's dependency quick-xml
from 0.26.0
to 0.36.0
. From the release notes for quick-xml 0.27.0
, under Misc Changes:
#490: Removed $unflatten= special prefix for fields for serde (de)serializer, > because:
it is useless for deserializer
serializer was rewritten and does not require it anymore
This prefix allowed you to serialize struct field as an XML element and now
replaced by a more thoughtful system explicitly indicating that a field should
be serialized as an attribute by prepending @ character to its name
https://github.com/tafia/quick-xml/releases/tag/v0.27.0
How to reproduce the problem:
Build the core-kit and build an aws-k8s
variant with the core-kit. Launch an instance with that variant, observe above logs in EC2 serial console