...
/openstack
/version
User_data ==hardlink to <mountdir>/cloudstack/user_data/user_data.txt
vendor_data.json
meta_data.json
network_data.json
We make a hard link to the user_data file in the cloudstack directory (soft link does not work in iso).
...
The current config-drive PR needs to be changed. We plan to create an extra OpenStack directory beside the original proposed CloudStack directory. We also need to change the label of the disk from config to config-2. The way the iso image is created needs to be adapted to make it align with the way OpenStack creates the iso img (provide extra params https://github.com/openstack/nova/blob/master/nova/virt/configdrive.py). A side effect is that underscores will be written to the iso image as underscores and not replaced with dashes (current behaviour). Because of this, we have to update the coreOS PR and the CloudStack documentation.
The OpenStack file structure contains a version folder. This version is equal to the release date of a specific OpenStack version:
FOLSOM = 2012-08-10
GRIZZLY = 2013-04-04
HAVANA = 2013-10-07
LIBERTY = 2015-10-15
NEWTON_ONE = 2016-06-30
NEWTON-TWO = 2016-10-06
OCATA = 2017-02-22
So for example an OpenStack config-drive will have the following file structure:
/openstack
/2012-08-10
...
/2013-04-04
...
/2013-10-07
...
/2015-10-15
...
/2016-06-30
...
/2016-10-06
...
/2017-02-22
…
/latest (which is equal to 2017-02-22)
…
...
Our proposal is to only create the latest folder on the CloudStack config-drive. The reason behind this is that the software only reads the latest folder from the OpenStack config-drive. The drawback is that when OpenStack config drive breaks backward compatibility we will have to update our CloudStack implementation.
...
In order for Cloud init to work, OpenStack config-drive provider must be called before the CloudStack (metadata-service) provider.
...
CoreOS keeps the CloudStack Config-Drive implementation (Nuage PRs).
Reason: CoreOS uses the ec2 format for Config-drive in combination with OpenStack. We propose to support only the OpenStack (beside the CloudStack) format and not ec2.
...