anaconda is unable to decode config drive from base64
| Affects | Status | Importance | Assigned to | Milestone | |
|---|---|---|---|---|---|
| Ironic |
In Progress
|
Medium
|
Maryna Savchenko | ||
Bug Description
During the anaconda deployment, Ironic encodes the config drive to base 64 and writes the encoded string to the kickstart file. When the node boots and Anaconda starts the server installation, it can not decode it.
The reason is how Python's base 64 encoding works. Its format is b'encodedstring'.
Having 'b' at the beginning makes it impossible for Anaconda to decode it at a later stage.
To reproduce you need to have data on the metadata service:
* deploy node using Anaconda:
- set the driver
- create image
- create a kickstart file with {{ ks_options.
* Open the console and check anaconda logs in /var/anaconda during the installation
| Changed in ironic: | |
| status: | New → In Progress |
| Changed in ironic: | |
| importance: | Undecided → Medium |
| assignee: | nobody → Maryna Savchenko (msavchen) |
| tags: | added: bug |
| tags: | added: triaged |
| tags: | added: anaconda |

Any updates on this bug? We're affected by this bug as well (in Caracal). I see a triaged tag exists. Is there a fix/patch somewhere? I'd imagine this should be a simple fix. If one removes the 'b' the base64 decode completes successfully.