summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2023-07-08 13:28:01 +0300
committerLars Wirzenius <liw@liw.fi>2023-07-08 16:44:16 +0300
commitac1672eb83d36d57615b70fda3e907638018f013 (patch)
tree2d3d2ae104f360598566858bb346d11dcd83a82d
parent526c03cfa7db98de8c8921780a0f05bbad4e5a2f (diff)
downloadv-i-ac1672eb83d36d57615b70fda3e907638018f013.tar.gz
feat: log spec file in a pretty way
Sponsored-by: author
-rwxr-xr-xv-i15
1 files changed, 10 insertions, 5 deletions
diff --git a/v-i b/v-i
index c4772fc..4a922be 100755
--- a/v-i
+++ b/v-i
@@ -2,6 +2,7 @@
import argparse
import glob
+import json
import logging
import os
import shutil
@@ -455,14 +456,17 @@ class SystemSpec:
for key in self._obj:
setattr(self, key, self._obj[key])
- del self._obj
self._check()
def __repr__(self):
- return repr(
- {key: getattr(self, key) for key in dir(self) if not key.startswith("_")}
- )
+ return repr(self.as_dict())
+
+ def as_dict(self):
+ return {key: self._obj[key] for key in self._obj}
+
+ def as_json(self):
+ return json.dumps(self.as_dict(), indent=4)
def _check(self):
try:
@@ -514,7 +518,8 @@ def main():
log("v-i starts")
system = SystemSpec(args.spec)
- log(f"spec: {system!r}")
+ spec_json = system.as_json()
+ log(f"formatted spec:\n{spec_json}")
cache = args.cache or cache_name(system)
log(f"cache: {cache}")