Blame cloudinit/config/cc_timezone.py

Packit Service a04d08
# Copyright (C) 2009-2010 Canonical Ltd.
Packit Service a04d08
# Copyright (C) 2012 Hewlett-Packard Development Company, L.P.
Packit Service a04d08
#
Packit Service a04d08
# Author: Scott Moser <scott.moser@canonical.com>
Packit Service a04d08
# Author: Juerg Haefliger <juerg.haefliger@hp.com>
Packit Service a04d08
#
Packit Service a04d08
# This file is part of cloud-init. See LICENSE file for license information.
Packit Service a04d08
Packit Service a04d08
"""
Packit Service a04d08
Timezone
Packit Service a04d08
--------
Packit Service a04d08
**Summary:** set system timezone
Packit Service a04d08
Packit Service a04d08
Set the system timezone. If any args are passed to the module then the first
Packit Service a04d08
will be used for the timezone. Otherwise, the module will attempt to retrieve
Packit Service a04d08
the timezone from cloud config.
Packit Service a04d08
Packit Service a04d08
**Internal name:** ``cc_timezone``
Packit Service a04d08
Packit Service a04d08
**Module frequency:** per instance
Packit Service a04d08
Packit Service a04d08
**Supported distros:** all
Packit Service a04d08
Packit Service a04d08
**Config keys**::
Packit Service a04d08
Packit Service a04d08
    timezone: <timezone>
Packit Service a04d08
"""
Packit Service a04d08
Packit Service a04d08
from cloudinit import util
Packit Service a04d08
Packit Service a04d08
from cloudinit.settings import PER_INSTANCE
Packit Service a04d08
Packit Service a04d08
frequency = PER_INSTANCE
Packit Service a04d08
Packit Service a04d08
Packit Service a04d08
def handle(name, cfg, cloud, log, args):
Packit Service a04d08
    if len(args) != 0:
Packit Service a04d08
        timezone = args[0]
Packit Service a04d08
    else:
Packit Service a04d08
        timezone = util.get_cfg_option_str(cfg, "timezone", False)
Packit Service a04d08
Packit Service a04d08
    if not timezone:
Packit Service a04d08
        log.debug("Skipping module named %s, no 'timezone' specified", name)
Packit Service a04d08
        return
Packit Service a04d08
Packit Service a04d08
    # Let the distro handle settings its timezone
Packit Service a04d08
    cloud.distro.set_timezone(timezone)
Packit Service a04d08
Packit Service a04d08
# vi: ts=4 expandtab