fix: lp-2057748. The UI provides the keyring data file content as a base64 encoded string. On the backend we have to decode the string with base64 accordingly.
(cherry-picked from 046c7a74cc190bcf6713bb274ac152412978764d)
`/run` is usually a tmpfs mount, and it is not persistent across reboots, so
`/run/maas` should not be created using .dirs, .install or .postinst scripts.
MAAS has various services that store their directories and files under
`/run/maas`, but because some services are run as root (e.g. dhcp), this leads
to ownership issues when `mkdir -p` is used (e.g. DHCP will create
`/run/maas/dhcp`)
In order to solve ownership issue, this commit changes DHCP service directory
to `/run/maas-dhcp` while keeping `/run/maas` only for files related to MAAS
itself (not external 3rd party services)
Bug #2056740: Can't commission/deploy AMT machines
The maas-power script was passed "--boot-mode pxe" for AMT machines
and failed, since such a parameter wasn't defined.
All other power drivers, including the newer AMT one, sets PXE boot every
time the machine is powered on. I changed things, so that "boot-mode" is
no longer passed, and the older AMT driver also sets the machine to PXE
boot whenever it's turned on.
(cherry picked from commit 116ccedb102a78136d9e1d62d3144850e861947e)