~smoser/cloud-init:feature/json-socket-server

Last commit made on 2017-11-03
Get this branch:
git clone -b feature/json-socket-server https://git.launchpad.net/~smoser/cloud-init
Only Scott Moser can upload to this branch. If you are Scott Moser please log in for upload directions.

Branch merges

Branch information

Name:
feature/json-socket-server
Repository:
lp:~smoser/cloud-init

Recent commits

ce69c59... by Scott Moser on 2017-11-03

somewhat functional.

server run with:
 python3 -m tests.cloud_tests.jsoncket --port 9799

Then run a client like:
 python -m tests.cloud_tests.jsoncket.client localhost 9799 ls

d373e5f... by Scott Moser on 2017-11-03

flake8 and python2 fixes (python2 'exec' is a keyword')

159e393... by Scott Moser on 2017-08-30

add initial jsonket.

44529c1... by Scott Moser on 2017-08-22

GCE: Add a main to the GCE Datasource.

This just adds a main to the GCE datasource so that it is easily
callable: python3 -m cloudinit.sources.DataSourceGCE
It also adds a log of the time it took to crawl.

3c45330... by Chad Smith on 2017-08-29

ec2: Add IPv6 dhcp support to Ec2DataSource.

DataSourceEc2 now parses the metadata for each nic to determine if
configured for ipv6 and/or ipv4 addresses. In AWS for metadata version
2016-09-02, nics configured for ipv4 or ipv6 addresses will have non-zero
values stored in metadata at network/interfaces/macs/<MAC>/public-ipv4 or
ipv6s respectively. Those metadata files are only non-zero when an ipv4 or
ipv6 ip is associated to the specific nic. A new
DataSourceEc2.network_config property is added which parses the metadata
and renders a network version 1 dictionary representing both dhcp4 and
dhcp6 configuration for associated nics.

The network configuration returned from the datasource will also 'pin' the
nic name to the name presented on the instance for each nic.

LP: #1639030

af4630c... by Lars Kellogg-Stedman on 2017-08-29

url_helper: fail gracefully if oauthlib is not available

We are unable to ship python-oauthlib in RHEL. This commit allows
imports of url_helper to succeed even when oauthlib is unavailable
and OauthUrlHelper.oauth_headers to raise a NotImplementedException
when called.

LP: #1713760

0ab9859... by Andrew Jorgensen on 2017-08-25

cloud-init analyze: fix issues running under python 2.

Some Python 3 exception names crept into the cloud-init analyze code. This
patches those back out at a cost of catching less specific parents of the
desired exceptions.

556a022... by Ryan Harper on 2017-08-07

Configure logging module to always use UTC time.

Currently the python logging module will default to a local time which may
contain an TZ offset in the values it produces, but the logged time format
does not contain the offset. Switching to UTC time for logging produces
consistent values in the cloud-init.log file and avoids issues when the
timezone is changed during boot.

LP: #1713158

20ca23c... by Andrew Jorgensen on 2017-08-14

Log a helpful message if a user script does not include shebang.

A patch to allow scripts missing a #! to run by using shell=True was
proposed but rejected. Instead we emit a log message to help the user
understand what went wrong.

89579a6... by Chad Smith on 2017-08-24

cli: Fix command line parsing of coniditionally loaded subcommands.

In an effort to save file load cost during system boot, certain
subcommands, analyze and devel, do not get loaded unless the subcommand is
specified on the commandline. Because setup.py entrypoint for cloud-init
script doesn't specify sysv_args parameter when calling the CLI's main()
we need main to read sys.argv into sysv_args so our subparser loading
continues to work.

LP: #1712676