|
Server : Apache/2.4.41 (Ubuntu) System : Linux vmi1525618.contaboserver.net 5.4.0-105-generic #119-Ubuntu SMP Mon Mar 7 18:49:24 UTC 2022 x86_64 User : www-data ( 33) PHP Version : 8.2.12 Disable Function : NONE Directory : /proc/self/root/lib/ubuntu-advantage/ |
Upload File : |
import logging
import os
import sys
from systemd.daemon import notify # type: ignore
from uaclient.config import UAConfig
from uaclient.daemon import (
poll_for_pro_license,
retry_auto_attach,
setup_logging,
)
LOG = logging.getLogger("pro")
def main() -> int:
cfg = UAConfig(root_mode=True)
setup_logging(
logging.INFO, logging.DEBUG, log_file=cfg.daemon_log_file, logger=LOG
)
# The ua-daemon logger should log everything to its file
# Make sure the ua-daemon logger does not generate double logging
# by propagating to the root logger
LOG.propagate = False
# The root logger should only log errors to the daemon log file
setup_logging(
logging.CRITICAL,
logging.ERROR,
log_file=cfg.daemon_log_file,
logger=logging.getLogger(),
)
LOG.debug("daemon starting")
notify("READY=1")
if os.path.exists("/run/cloud-init/cloud-id-gce") and not os.path.exists(
retry_auto_attach.FLAG_FILE_PATH
):
LOG.info("mode: poll for pro license")
poll_for_pro_license.poll_for_pro_license(cfg)
# not using elif because `poll_for_pro_license` may create the flag file
if os.path.exists(retry_auto_attach.FLAG_FILE_PATH):
LOG.info("mode: retry auto attach")
retry_auto_attach.retry_auto_attach(cfg)
LOG.debug("daemon ending")
return 0
if __name__ == "__main__":
sys.exit(main())