#!/usr/bin/env python3
# This file is part of cloud-init. See LICENSE file for license information.
"""cloudconfig-schema
Validate existing files against cloud-config schema or provide supported schema
documentation.
"""
import os
import sys
def call_entry_point(name):
(istr, dot, ent) = name.rpartition('.')
try:
__import__(istr)
except ImportError:
# if that import failed, check dirname(__file__/..)
# to support ./bin/program with modules in .
_tdir = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
sys.path.insert(0, _tdir)
try:
__import__(istr)
except ImportError as e:
sys.stderr.write("Unable to find %s: %s\n" % (name, e))
sys.exit(2)
sys.exit(getattr(sys.modules[istr], ent)())
if __name__ == '__main__':
call_entry_point("cloudinit.config.schema.main")
# vi: ts=4 expandtab syntax=python