New Question

Revision history [back]

click to hide/show revision 1
initial version

user_data in MultipartMime is base64 encoded

Hi,

Using HEAT Templating. I am trying to make use of OS::Heat::MultipartMime to send a Powershell script and PEM certificate as user_data.

My initial yaml file can be found here: https://pastebin.com/29tqUnPR

My script is based on these examples:

  • https://github.com/openstack/heat-templates/tree/master/hot/Windows/IIS_Drupal
  • https://github.com/openstack/heat-templates/tree/master/hot/software-config/example-templates

The problem I am having is that no matter what I subtype I set for the Powershell script, it is always base64 encoded and it is not executed by Cloudbase-Init. Please see the debug log for more info --> https://pastebin.com/cSFTP4ae

I have tried setting the subtype to both x-shellscript and x-cfninitdata. With x-shellscript defined clousbase-init attempts to execute the script but does not decode it before execution and the execution fails.

I can get the script working if I "inline" the data and do not use MultipartMime: https://pastebin.com/DZB1vy9F

My goal is to pass the certificate (to be used by the WinRM plugin) and a few shell scripts (to configure services and add this host to the domain) to the Windows Instance but I cannot find any examples of this.

Is this possible?