diff options
author | Sawyer Bergeron <sbergeron@iol.unh.edu> | 2021-12-04 14:24:07 -0500 |
---|---|---|
committer | Sawyer Bergeron <sbergeron@iol.unh.edu> | 2021-12-15 15:27:06 -0500 |
commit | 2a1c893e5e698f14a844751a2e522d094a0c88b5 (patch) | |
tree | 92fcc92e4543ea77d4b0b8fb21b4b4fdac1739e7 /src/api | |
parent | 3cc0c9dc3446d1ab5b6404c100ed65792a125d10 (diff) |
Fix CI file serialization to not break newlines, add to admin utils
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Change-Id: Ib7b223012687554a086f622e3edbe524b49dab6c
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Diffstat (limited to 'src/api')
-rw-r--r-- | src/api/views.py | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/api/views.py b/src/api/views.py index 3a82b96..1516374 100644 --- a/src/api/views.py +++ b/src/api/views.py @@ -295,7 +295,7 @@ def resource_ci_userdata(request, lab_name="", job_id="", resource_id="", file_i "datasource_list": ["None"], } - return HttpResponse(yaml.dump(cloud_dict), status=200) + return HttpResponse(yaml.dump(cloud_dict, width=float("inf")), status=200) @csrf_exempt @@ -310,9 +310,9 @@ def resource_ci_userdata_directory(request, lab_name="", job_id="", resource_id= files = resource.config.cloud_init_files files = [{"id": file.id, "priority": file.priority} for file in files.order_by("priority").all()] - d = { - 'merge_failures': [] - } + d = {} + + merge_failures = [] merger = Merger( [ @@ -335,9 +335,12 @@ def resource_ci_userdata_directory(request, lab_name="", job_id="", resource_id= print("Failed to merge file in, as it had invalid content:", f.id) print("File text was:") print(f.text) - d['merge_failures'].append({f.id: str(e)}) + merge_failures.append({f.id: str(e)}) + + if len(merge_failures) > 0: + d['merge_failures'] = merge_failures - file = CloudInitFile.create(text=yaml.dump(d), priority=0) + file = CloudInitFile.create(text=yaml.dump(d, width=float("inf")), priority=0) return HttpResponse(json.dumps([{"id": file.id, "priority": file.priority}]), status=200) |