Server IP : 23.254.227.96 / Your IP : 216.73.216.46 Web Server : Apache/2.4.62 (Unix) OpenSSL/1.1.1k System : Linux hwsrv-1277026.hostwindsdns.com 4.18.0-477.13.1.el8_8.x86_64 #1 SMP Tue May 30 14:53:41 EDT 2023 x86_64 User : viralblo ( 1001) PHP Version : 8.1.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/lib/python3.6/site-packages/cloudinit/config/ |
Upload File : |
# Copyright (C) 2009-2011 Canonical Ltd. # Copyright (C) 2012 Hewlett-Packard Development Company, L.P. # # Author: Scott Moser <scott.moser@canonical.com> # Author: Juerg Haefliger <juerg.haefliger@hp.com> # # This file is part of cloud-init. See LICENSE file for license information. """ Emit Upstart ------------ **Summary:** emit upstart configuration Emit upstart configuration for cloud-init modules on upstart based systems. No user configuration should be required. **Internal name:** ``cc_emit_upstart`` **Module frequency:** always **Supported distros:** ubuntu, debian """ import os from cloudinit import log as logging from cloudinit import subp from cloudinit.settings import PER_ALWAYS frequency = PER_ALWAYS distros = ["ubuntu", "debian"] LOG = logging.getLogger(__name__) def is_upstart_system(): if not os.path.isfile("/sbin/initctl"): LOG.debug("no /sbin/initctl located") return False myenv = os.environ.copy() if "UPSTART_SESSION" in myenv: del myenv["UPSTART_SESSION"] check_cmd = ["initctl", "version"] try: (out, _err) = subp.subp(check_cmd, env=myenv) return "upstart" in out except subp.ProcessExecutionError as e: LOG.debug( "'%s' returned '%s', not using upstart", " ".join(check_cmd), e.exit_code, ) return False def handle(name, _cfg, cloud, log, args): event_names = args if not event_names: # Default to the 'cloud-config' # event for backwards compat. event_names = ["cloud-config"] if not is_upstart_system(): log.debug("not upstart system, '%s' disabled", name) return cfgpath = cloud.paths.get_ipath_cur("cloud_config") for n in event_names: cmd = ["initctl", "emit", str(n), "CLOUD_CFG=%s" % cfgpath] try: subp.subp(cmd) except Exception as e: # TODO(harlowja), use log exception from utils?? log.warning("Emission of upstart event %s failed due to: %s", n, e) # vi: ts=4 expandtab