Push cloud config content for generated files into userdata_raw 41/72941/1
authorSawyer Bergeron <sbergeron@iol.unh.edu>
Tue, 28 Sep 2021 23:11:49 +0000 (19:11 -0400)
committerSawyer Bergeron <sbergeron@iol.unh.edu>
Tue, 28 Sep 2021 23:11:49 +0000 (19:11 -0400)
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Change-Id: Ieb8bd9b8b172b6bf11062f67f41fc78154cc7c89

src/resource_inventory/models.py

index 1505f02..941c38f 100644 (file)
@@ -18,6 +18,7 @@ import json
 import yaml
 
 import re
+import uuid
 from collections import Counter
 
 from account.models import Lab
@@ -171,7 +172,19 @@ class CloudInitFile(models.Model):
         prepended_text = "#cloud-config\n"
         prepended_text = prepended_text + yaml.dump(CloudInitFile.merge_strategy()) + "\n"
         print("in cloudinitfile create")
-        return CloudInitFile.objects.create(priority=priority, text=(prepended_text + text))
+        text = prepended_text + text
+        cloud_dict = {
+                "datasource": {
+                    "None": {
+                        "metadata": {
+                            "instance-id": str(uuid.uuid4())
+                        },
+                        "userdata_raw": text,
+                    },
+                },
+                "datasource_list": ["None"],
+            }
+        return CloudInitFile.objects.create(priority=priority, text=json.dumps(cloud_dict))
 
 class ResourceTemplate(models.Model):
     """