summaryrefslogtreecommitdiff
path: root/tools/render-cloudcfg
diff options
context:
space:
mode:
authorzdc <zdc@users.noreply.github.com>2022-04-07 20:24:57 +0300
committerGitHub <noreply@github.com>2022-04-07 20:24:57 +0300
commit45c1d42e15f4a5fe5e176e1516b2da9d21e7837a (patch)
tree0535c3cf76b60dbf585416b4490c5bd9c9c99359 /tools/render-cloudcfg
parent96226f37cdbdaef2fbc51de7b9ca75b61a16792b (diff)
parentaa60d48c2711cdcd9f88a4e5c77379adb0408231 (diff)
downloadvyos-cloud-init-45c1d42e15f4a5fe5e176e1516b2da9d21e7837a.tar.gz
vyos-cloud-init-45c1d42e15f4a5fe5e176e1516b2da9d21e7837a.zip
Merge pull request #52 from vyos/current
T2117: Backport Cloud-init 22.1 with our changes to VyOS 1.3
Diffstat (limited to 'tools/render-cloudcfg')
-rwxr-xr-xtools/render-cloudcfg78
1 files changed, 48 insertions, 30 deletions
diff --git a/tools/render-cloudcfg b/tools/render-cloudcfg
index ed454840..176df36b 100755
--- a/tools/render-cloudcfg
+++ b/tools/render-cloudcfg
@@ -1,47 +1,65 @@
#!/usr/bin/env python3
-import argparse
import os
import sys
+import argparse
-VARIANTS = ["alpine", "amazon", "arch", "centos", "debian", "fedora",
- "freebsd", "netbsd", "openbsd", "rhel", "suse", "ubuntu",
- "unknown"]
-
-
-if "avoid-pep8-E402-import-not-top-of-file":
+def main():
_tdir = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
sys.path.insert(0, _tdir)
- from cloudinit import templater
- from cloudinit import util
- from cloudinit.atomic_helper import write_file
-
+ from cloudinit import templater, util # pylint: disable=E0401
-def main():
+ VARIANTS = [
+ "almalinux",
+ "alpine",
+ "amazon",
+ "arch",
+ "centos",
+ "cloudlinux",
+ "debian",
+ "eurolinux",
+ "fedora",
+ "freebsd",
+ "gentoo",
+ "miraclelinux",
+ "netbsd",
+ "openbsd",
+ "openEuler",
+ "photon",
+ "rhel",
+ "suse",
+ "rocky",
+ "ubuntu",
+ "unknown",
+ "virtuozzo",
+ ]
parser = argparse.ArgumentParser()
platform = util.system_info()
parser.add_argument(
- "--variant", default=platform['variant'], action="store",
- help="define the variant.", choices=VARIANTS)
+ "--variant",
+ default=platform["variant"],
+ action="store",
+ help="define the variant.",
+ choices=VARIANTS,
+ )
parser.add_argument(
- "template", nargs="?", action="store",
- default='./config/cloud.cfg.tmpl',
- help="Path to the cloud.cfg template")
+ "template",
+ nargs="?",
+ action="store",
+ default="./config/cloud.cfg.tmpl",
+ help="Path to the cloud.cfg template",
+ )
parser.add_argument(
- "output", nargs="?", action="store", default="-",
- help="Output file. Use '-' to write to stdout")
+ "output",
+ nargs="?",
+ action="store",
+ default="-",
+ help="Output file. Use '-' to write to stdout",
+ )
- args = parser.parse_args()
+ args = parser.parse_args(sys.argv[1:])
+ templater.render_cloudcfg(args.variant, args.template, args.output)
- with open(args.template, 'r') as fh:
- contents = fh.read()
- tpl_params = {'variant': args.variant}
- contents = (templater.render_string(contents, tpl_params)).rstrip() + "\n"
- util.load_yaml(contents)
- if args.output == "-":
- sys.stdout.write(contents)
- else:
- write_file(args.output, contents, omode="w")
-if __name__ == '__main__':
+if __name__ == "__main__":
main()