~redriver/cloud-init:fix-ifdown-for-frbsd-on-Azure

Last commit made on 2017-06-15
Get this branch:
git clone -b fix-ifdown-for-frbsd-on-Azure https://git.launchpad.net/~redriver/cloud-init
Only Hongjiang Zhang can upload to this branch. If you are Hongjiang Zhang please log in for upload directions.

Branch merges

Branch information

Name:
fix-ifdown-for-frbsd-on-Azure
Repository:
lp:~redriver/cloud-init

Recent commits

4558e3d... by Hongjiang Zhang

make the string less in one line

945ef84... by Hongjiang Zhang

replace 'ifdown'/'ifup' with 'ifconfig down'/'ifconfig up' respectively

95fd5a2... by Ryan Harper

selinux: Allow restorecon to be non-fatal.

On some systems with python-libselinux a bug[1] related to recursive
restorecon fails but the distro release does not yet include
an update. This change will accept the error and log a warning.

1. https://bugzilla.redhat.com/show_bug.cgi?id=1406520

LP: #1686751

a01ffd6... by Ryan Harper

net: Allow netinfo subprocesses to return 0 or 1.

On systems with selinux enabled, some of the networking commands executed
successfully do not return 0. Allow these commands to return 1 since the
output is valid.

Ultimately we need to get this information in some way so that we can
display it correctly. For now, work around the stack trace when selinux
does not allow us to collect it.

LP: #1686751

67bab5b... by Ryan McCabe

net: Allow for NetworkManager configuration

In cases where the config json specifies nameserver entries,
if there are interfaces configured to use dhcp, NetworkManager,
if enabled, will clobber the /etc/resolv.conf that cloud-init
has produced, which can break dns. If there are no interfaces
configured to use dhcp, NetworkManager could clobber
/etc/resolv.conf with an empty file.

This patch adds a mechanism for dropping additional configuration
into /etc/NetworkManager/conf.d/ and disables management of
/etc/resolv.conf by NetworkManager when nameserver information is
provided in the config.

LP: #1693251

Signed-off-by: Ryan McCabe <email address hidden>

b9cd8a8... by Ryan Harper

Use distro release version to determine if we use systemd in redhat spec

The typical rpm build process will examine the spec file to determine
which packages should be installed in the boot root. This requires
the specfile to declare that it needs system. Provide this information
by checking which version in which the rpm is being built and exporting
requirements for systemd.

d00da2d... by Scott Moser

net: normalize data in network_state object

The network_state object's network and route keys would have different
information depending upon how the network_state object was populated.

This change cleans that up. Now:
  * address will always contain an IP address.
  * prefix will always include an integer value that is the
    network_prefix for the address.
  * netmask will be present only if the address is ipv4, and its
    value will always correlate to the 'prefix'.

76d5826... by Wesley Wiedenmeier

Integration Testing: tox env, pyxld 2.2.3, and revamp framework

Massive update to clean up and greatly enhance the integration testing
framework developed by Wesley Wiedenmeier.

 - Updated tox environment to run integration test 'citest' to utilize
   pylxd 2.2.3
 - Add support for distro feature flags
   - add framework for feature flags to release config with feature groups
     and overrides allowed in any release conf override level
   - add support for feature flags in platform and config handling
   - during collect, skip testcases that require features not supported by
     the image with a warning message
 - Enable additional distros (i.e. centos, debian)
 - Add 'bddeb' command to build a deb from the current working tree
   cleanly in a container, so deps do not have to be installed on host
 - Adds a command line option '--preserve-data' that ensures that
   collected data will be left after tests run. This also allows the
   directory to store collected data in during the run command to be
   specified using '--data-dir'.
 - Updated Read the Docs testing page and doc strings for pep 257
   compliance

ad2680a... by JJ Asghar

Chef: Update omnibus url to chef.io, minor doc changes.

- Updated to standard chef.io url
- Removed the port 4000, due to that has been deprecated
- Added Note about the run_list not being required

Signed-off-by: JJ Asghar <email address hidden>

ee32439... by Joshua Powers

tools: add centos scripts to build and test

The added 'run-centos' does:
 - Creates centos 6 or 7 lxd container
   * Sets http_proxy variable for yum if set locally
   * Creates centos user
 - Push local tree
   * Tar's up working directory
   * Pushes to container and untars
 - Installs pip and yum dependencies
 - As user centos it can then based on flags:
    * runs unittests
    * run ./packages/brpm
    * run ./packages/brpm --srpm
    * artifact the built *.rpm