Commit Graph

49 Commits

Author SHA1 Message Date
Jonathan Rosser 8a32fc65d9 Allow LXC container auto mounts to be customised
The list of auto mounts is currently hardcoded so there is
no opportunity to adjust the mounts or change the permissions
if necessary.

This patch converts the mounts to a list which can be overridden
as required via host or group vars.

The auto mount configuration is assumed to only be present once
in the LXC config file and any existing statements are replaced.
Change-Id: I62deed28287dae8b289bf882ca0b1a24b207c92d
2024-01-15 15:04:47 +00:00
Dmitriy Rabotyagov 3cdcb1115f Fix linters issue and metadata
With update of ansible-lint to version >=6.0.0 a lot of new
linters were added, that enabled by default. In order to comply
with linter rules we're applying changes to the role.

With that we also update metdata to reflect current state.

Change-Id: I6a9986cd948dbeaf2847ea4dd04deed974f80d20
2023-07-11 21:43:23 +02:00
Dmitriy Rabotyagov bef1567a45 Add bridge_type to lxc_container_networks
In order to generate proper config for containers, we should respect
bridge type and bridge name that are defined in lxc_hosts role.

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible-lxc_hosts/+/868603
Change-Id: Ifcc2f38459877b9760697efac5c23b2ff9adf53b
2022-12-26 16:40:38 +01:00
Jonathan Rosser 5d22a389c2 Use ansible_facts[] instead of fact variables
See https://github.com/ansible/ansible/issues/73654

Change-Id: If6b30e40bf71f60ee72fdc1459ce5e5a9f4f7d93
2021-02-24 14:18:48 +00:00
Jonathan Rosser 29ee8f0e14 Remove support for LXC2 configuration keys
The removal of support for Centos-7 means that it is no longer necessary
to maintain compatibility with LXC2 configuration keys. This patch removes
the code which substitutes LXC3 keys for LXC2 keys.

Depends-On: https://review.opendev.org/742166
Depends-On: https://review.opendev.org/742103
Change-Id: I2911a20a3391e880df80f41eed5c9a8d5e36c2f4
2020-10-05 18:09:10 +01:00
Jonathan Rosser 990fcc9721 Add lxc config key mapping for version 4.x
This is required to support ubuntu focal, but can be simplified when
this code does not need to maintain compatibility with lxc 2.x

Change-Id: I699ca3b6fbd35982c4fe384fbbdecf60e92e8d91
2020-05-27 13:01:47 +01:00
Jonathan Rosser 6b33973241 Do not use 'null' when trying to locate vars files
This generates warnings in the ansible log

Change-Id: I317d6db32783ef5d63ac6a2554dcb983871a96a5
2019-05-12 18:25:25 +00:00
Dmitriy Rabotjagov 39b986844f Drop Suse 42.3 support
Drop checks for suse 42.3 since it's support was dropped since stein.

Change-Id: Ifdeff3307a268cf97d4762809afa26589123391e
2019-05-12 13:30:19 +03:00
Jesse Pretorius a14dcc8489 Resolve btrfs backing store variable inconsistency
In Ica79472568799098ebf83c6cefc585f117975f37 some incorrect
variable names were used. This patch changes the variable
names to suit their purpose and ensures that they are used
consistently throughout the role.

Change-Id: If9e912641b5b6cb7791221b40dd4d56e215c2b98
2019-01-07 17:17:26 +00:00
Jonathan Rosser 9cc46c8cfa Add ansible architecture mapping for arm64
Change-Id: I90f7b19d745018c7d83a56954ed67fa09de0e491
2018-11-16 13:27:46 +00:00
Kevin Carter abb1b6901f Add utsname to the hash of keys needing to be updated
The utsname can be set within the container, if it is set and lxc is
upgraded the container will fail to start after the upgrade. This change
corrects that issue.

Change-Id: I56473666c9517747fb2444d8ce1dcb16f69c9d4d
Signed-off-by: Kevin Carter <kevin@cloudnull.com>
2018-10-09 13:28:49 -05:00
Jonathan Rosser 959a56eb6b Convert lxc2 to lxc3 config keys dynamically
This change allows the role to accept either lxc2 or lxc3 config
keys, plus a list of key substitutions to make when writing the
lxc config file.

This allows a set of config keys to remain defined as variables
outside this role and generate a valid config on both lxc2 and lxc3
based hosts.

Change-Id: Ifc871a9fcaf77ff36cfcc1c87b1f406862d46d22
2018-09-11 15:44:41 +00:00
Jean-Philippe Evrard 62eff6ca2a Add Bionic testing
Now that bionic testing is added into the tests repos, we can
start testing it in the repo.

Since bionic uses lxc >= 3, we need to make some adjustments to the role
to allow the role to work with both lxc > 3 and lxc < 3, there were
several config options changes which will impact on upgradeability.

LXC >= 3 requires networks to have an index, we can achieve this by
taking the network dict and converting it to a list, and using those to
generate the id "with_indexed_items".

Depends-On: https://review.openstack.org/#/c/566959/
Depends-On: https://review.openstack.org/#/c/567038/
Change-Id: Ib80c2ed2a01a4a6a8c48aed9bdf9a50e45ea9564
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-05-24 00:02:19 +00:00
Kevin Carter 25478e9b4e
Enable quota system and set qgroups
This change implements the machinectl quota system and qgroups when
they're enabled and available. This change is being implemented to
resolve an issue where machinectl based containers using a loopback file
system spam DMESG with the following:

* BTRFS error (device loop0): could not find root $INT

While various upstream sources say this error is benign[0], it raises
an inconsistency flag within the host system and is speculatively the
cause of our inconsistent read-only/Full-FS issues we've seen in the
integrated gate. Once the qgroups are properly setup the system will
remove the inconsistency flag and the message spam will stop.

* BTRFS info (device loop0): qgroup scan completed (inconsistency flag cleared)

To resolve this issue the quota system is being enabled by default
within the "lxc_host" role. This change essentially acknowledges
the built-in quota system and when enabled provides for the ability
to set / define specific quota (qgroup) options as necessary. While
many deployers may never use these options or this tooling, the role
will now properly set everything up should it ever be needed.

[0] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1651435
Closes-Bug: #1753790
Depends-On: I34a41ac8a9fe4419254284c83f4600efee274c04
Change-Id: Ica79472568799098ebf83c6cefc585f117975f37
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-05-14 22:33:44 -05:00
Zuul 61fcf1af80 Merge "Add container journal linking" 2018-03-24 14:58:59 +00:00
Kevin Carter 72a16fd9e5 Add container journal linking
The container and host can link journals giving operators the ability to
log stream and check on the health of a system without needing to login
(attach) to the container. This change implements journal linking for
LXC containers following the reference systemd specification.

Reference implementation:
https://www.freedesktop.org/software/systemd/man/systemd-nspawn.html#--link-journal=

Change-Id: Id68cf39a77b5dd9c13c010829b47cd7a414378bc
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-03-24 01:45:25 +00:00
Kevin Carter 846b4f9ed2 Allow deployers to define the container type
The variable `lxc_user_defined_container` has been added which allows a
deployer to define the container variable file in use for a given
container type.

Depends-On: https://review.openstack.org/554383
Change-Id: Ia1373bfa916b4add49a8444d2e4553f898650328
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-03-24 01:18:07 +00:00
Paul Belanger f2b3780c8d
Fix 'properties' is undefined errors
When following the example playbook for the role, it is possible for
properties undefined to be raise. Because default() filters don't work
with undefined dictionary keys, ensure a default dictionary for
properties exists.

Change-Id: Iee2e992efe8ee801506e5de622bd90ac3915a33c
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2018-03-16 22:00:36 -04:00
Markos Chandras 49309c4a92 Always create containers with fixed MAC addresses
Patch I0d83fd4895d4c5beaf5a84a239c1a1ed71521dee dropped the ARP=yes
option for networkd because it's not supported by old systemd releases.
This however brings back a problem where the default one sysctl
arp_notify option in the kernel may not correctly set for our use case.
Containers are created with random MAC addresses so we need to ensure
that ARP entries are populated correctly when a container is restarted.
Instead of having to implement some sort of a new workaround on the host,
it's probably better to create all containers with fixed MAC addresses from
now on.

Change-Id: I8ad390fc3ce27756f26c57c92aaa3adc8e506a17
2018-03-06 17:00:36 +00:00
Kevin Carter 815ece7454 Unify container network interfaces with networkd
Unify container network interfaces using Systemd Networkd for ubuntu,
centos, and openSUSE. This change allows the role to use a single way to
configure container networks.

Care has been taken to ensure we're able to cleanly upgrade to the new
capabilities within existing environments without breaking any feature
compatibility or causing any container restarts.

It's also worth noting that all of the pre/post networking up/down
script options have been converted to systemd "oneshot" services. This
retains the ability to run adhoc scripts post network availability
while also opening up this capability, which used to be ubuntu only,
to all of our supported operating systems.

> Our usage of `lxc-attach` was removed in favor of `nsenter` to fix a
  issue where multiple `lxc-attach` commands issued to a single physical
  host could result in a hang.

> Scripts that were being generated inline have been placed into
  template files. This solves a long standing memory consumption issue
  when creating lots of containers. The old shell tasks will now be 
  executed from a generated script. While this should also help with 
  debugging, the main driver is to ensure better system stability.

> A lot of cleanup has been done throughout the task files and
  templates. In the process of updating the role to use unified
  networking a lot of duplicate tasks, scripts, and processes have
  consolidated.

> Handlers have been added for network connection wait conditions and
  to various service restarts.

> The OSA plugins have been added to this role as a dependency. We
  rely on the connection plugins throughout the stack however we were
  doing a lot of workarounds to cater to the possibility of a deployer
  running this role without them. This change simply adds the plugins
  as a known dependency which allows for a more streamlined setup.

Change-Id: I5d3ddcfa11d575648a69a04f2fb30236c2c89da3
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2018-03-01 10:55:14 +00:00
Kevin Carter 270743d042
Add machinectl backend store options
This change modifies the lxc container create role to consume the
machinectl template when the `lxc_container_backing_store` is set to
"machinectl". This new container store type will allow us to better
manage containers and the images we use to run systems.

As mentioned in the release note within the lxc_hosts role, this change
has no upgrade impact as existing containers will continue to use the
storage they already have.

Change-Id: Id20b1b1eaeaad8ceb217ec82aac8053f9326094d
Depends-On: I70d53cabd0888954f31def924e9f4436398cdebf
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-10-05 13:23:31 -05:00
Kevin Carter 3c22200109 Update the LXC container create role
The LXC container create role has not been updated to use some of our
more well throughout patterns and layouts. This change updates the role
so that its following our normal role conventions and simplifying task
execution.

New tags have been added to follow the basic tag pattern found in all
other roles. The two tags now supported are lxc-config, and lxc-create.

The creation backends have been seperated out into dynamically included
files. This will reduce our "skips" which will improve execution time
and assist developers in understanding what is happening when a
container is created. Stubbs for BTRFS and ZFS container types have been
added so future work can continue on those two store options without
impacting our normal workflow.

All task files have been updated to use the "lxc_" prefix which follows
the pattern found in everyone of our roles.

Change-Id: I0982a42321cf88f66442b5f766729f17c68e8e4a
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2017-10-05 09:51:20 +00:00
Jean-Philippe Evrard c2244e88fb Add ARM node support
ARM nodes will need an updated lxc_architecture_mapping.

Change-Id: I1026450df76ae98ecfd35ad6bcfd15db05ca6c6e
Partial-Bug: #1703612
2017-08-22 17:49:37 +00:00
Jesse Pretorius e88e41c4af Remove newline from lxc_cache_download_template_options
When the template options are applied, a newline is added
to the end of lxc_cache_download_template_options before
the application of the keyserver option, causing this:

"... --variant default \n --keyserver ..."

While this works, it could cause unexpected behaviour
(perhaps not applying the keyserver option) and it is
therefore better to be rid of the newline.

Change-Id: I8099d6b0502c281572f9e45573a4d6bbb8c90c44
2017-08-11 14:17:36 +01:00
Nolan Brubaker c744a4bfaf Add option to recreate containers
The `lxc_container_recreate` variable will allow for recreating already
deployed containers using either a playbook or a command line argument.

This option is most useful during an upgrade, where the containers are
thrown away and completely rebuilt from scratch.

Change-Id: I3ba35daf49111a3fdfb2e30cffddd9af23aafb28
2017-06-29 14:40:56 +00:00
Markus Zoeller 3e3d5cd07b Add s390x as supported architecture
The s390x architecture (aka IBM z Systems) supports OpenStack since
the Kilo release. This change adds the necessary tweaks to let
openstack-ansible do its work on that platform.

Change-Id: Ifa788182142b9fb4613007c087dae78eec52c5d9
Co-Authored-By: Chris Beukers <chris.beukers@icu-it.nl>
2017-06-26 15:04:12 +02:00
Logan V 4f4fca7507 Use wait_for_connection instead of wait_for to check container
After configuring networking in the container, we used a task to wait
for SSH to respond on the container, using the Ansible wait_for module
trying to connect to port 22.

When managing containers in Ansible using other connection plugins that
use LXC commands on the physical host to execute modules, there may not
be an SSH daemon running within the container. In these situations we
can accomplish the same check without SSH by using the wait_for_connection
module (new in ansible 2.3) to verify that Ansible has a working execution
path into the container, but not necessarily via SSH.

Change-Id: I81beda2590b5f5505b7de9ae94cef06bcbdf2f93
2017-04-27 09:57:27 -05:00
Logan V 789aaa4e73 Consistent configuration of veth_pair prefix
The veth_pair name was partially configurable, however eth0's
veth pair naming scheme was hard coded.

This change accomplishes:
- veth pair prefix templating is now consistent across all interfaces
  generated by the role.
- no change is made to the default configuration of veth pair naming,
  it only allows more reusability of the role by allowing the veth
  pair naming to be configured by the role's consumers.
- eth0 veth pair naming scheme can be configured just as other
  interfaces could be before.

Change-Id: I47004126cab85043f623aee8262151d3b53238e9
2017-04-23 20:48:25 -05:00
Logan V eeabfbc042 Enhance configurability of LXC net interfaces
Add the ability to append pre-up, post-up, pre-down, and post-down script
entries to the container_networks dict that are dropped along with the OSA
default configurations when templating the container's interface config files.

The keys preup, postup, predown, and postdown will be appended to the OSA
lxc_container_default_{pre,post}{up/down} lists when dropping the interface
config.

Change-Id: Idf15ec17bac03b55638fb8d862e5445093677f23
2017-03-22 11:48:04 -05:00
Jesse Pretorius d9ec5de2d1 Allow container creation based on variant property
Currently the variant used for container creation is a
universal override. This patch allows the use of an
inventory property to set the variant, allowing per
container overrides of the variant.

Also, a new variable is created which allows any
arbitrary additional options to be given to the creation
process, allowing other lxc-create options to be passed
in.

Change-Id: Id391c3ba245c53e1d82d7eb57187cbf1a952d6cf
2017-02-27 11:49:12 +00:00
Jesse Pretorius e0ea41b4f8 Add ability to set a container base name prefix
In order to facilitate role-based base containers when
copy-on-write containers are created, a prefix can now
be used to differentiate the base containers.

Change-Id: If8094d5bc6a52524128bcaddff2aaf20acf39833
2016-11-14 13:15:39 +00:00
Kevin Carter f924bfb418 Add an option to generate fixed MAC addresses
This change resolves a long standing issue where a container's mac
address regenerates when it was restarted. In most cases when a
container is restarted and it's mac address is rotated and nothing bad
happens; mac learning will resolve itself given enough time in just
about all situations. However services like neutron-agents are long
lived and are highly sensitive to network changes. These types of
services expect consistent hardware addressing and when mac
addresses rotate may become confused.

To limit the possibility of prolonged downtime caused by mac address
rotation on network sensitive containers an option has been created to
allow a container to have a fixed mac address. If this option is enabled
the container will generate fixed addresses for all networks assosiated
with the specific container. The option is `lxc_container_fixed_mac` and
it has a default value of "false".

Change-Id: Ie1a8dc172c45fc2b4cfa724a2bafa67cb481ba73
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-10-15 05:30:47 +00:00
Kevin Carter a717c8bba2
Ensure veths are only 15 characters long
A veth pair on a linux system can only have 15 characters in
its name. This PR ensures that the built veth pair is templated
and string spliced such that it can ONLY be a maximum of 15
characters long.

Change-Id: Ibe78679b9364b41cb68ec42599a906b3f1552e41
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-09-12 12:48:13 -05:00
Jesse Pretorius 2967bf4e60 Allow lxc_container_base_name to be set by the deployer
This patch ensures that the deployer is able to override the base
container name used when implementing copy-on-write based containers.

This patch ensures that the var name and default value matches that
set in https://review.openstack.org/358340

Change-Id: I672a77248061c00233fb306a25adbfe9add2c05d
2016-08-23 10:42:12 +00:00
Jesse Pretorius ec1a9c7ce4 Ensure that the default bind mounts are complete
This patch implements the use of the facility introduced in
https://review.openstack.org/348242 to ensure that the default
bind mounts are properly set up.

Change-Id: I76af6ea46cd96e4c1e50d7f49711c73267b723fc
2016-08-04 14:46:40 +01:00
Jesse Pretorius 019f156ab3 Implement configurable start delay for containers
With the move of the container creation process from each service
playbook into the lxc-container-create playbook/role, it would be
appropriate to ensure that the delay implemented in the service
plays is implemented in the role.

This patch does so.

Change-Id: I473bcccde315ef66f45e912ad33ed665bed3b07c
2016-07-29 19:22:23 +01:00
Jesse Pretorius f26d4075e8 Allow container bind mounts to be set in group/host vars
To reduce the number of times a container is restarted during the
build process, this patch implements the facility to consume
LXC bind mounts items from the inventory.

This allows bind mounts to be set in group_vars and therefore have
them applied on container creation instead of later when the service
install playbook runs.

Previously the container_commands option was used, but the bind
mounts are a special case which are better served with its own
set of tasks to ensure that everything needed is in place on the
host and in the container.

Needed-By: Ie2a0528fbd56c8360dd679f55fb2047e0a061c31
Change-Id: I72cdc607d7b4364d78c840bf688e43e013f40709
2016-07-28 14:03:03 +01:00
Jesse Pretorius dc03ef6acf Allow extra LXC command options via group/host vars
To reduce the number of times a container is restarted during the
build process, this patch implements the facility to consume
LXC container_command items from the inventory.

This allows any arbitrary command, such as the creation of a bind
mount directory, to be set in group_vars and therefore have it
applied on container creation instead of later when the service
install playbook runs.

Change-Id: I2aa015a136d6efca501797430d82f1461c303edf
2016-07-26 11:30:26 +01:00
Kevin Carter f7fb95fbe1 Allow a deployer to disable container restarts
This changes allows a deployer to disable a container restart
by setting the option ``lxc_container_allow_restarts`` to ``false``.

Forward port based on:
 - https://review.openstack.org/344834
 - https://review.openstack.org/346064

Change-Id: I2c681d7e0681f8586286dc9f371d7b5e231bda68
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-07-26 01:17:55 +01:00
Jenkins e2be10bc9f Merge "Allow extra LXC config options via group/host vars" 2016-07-19 16:11:28 +00:00
Jesse Pretorius 8e15365757 Allow extra LXC config options via group/host vars
To reduce the number of times a container is restarted during the
build process, this patch implements the facility to consume
LXC container_config items from the inventory.

This allows the 'lxc.aa_profile' option, for example, to be set
in group_vars and therefore have it applied on container creation
instead of later when the service install playbook runs.

Change-Id: I4c95a231af3306c5010b168e7cc181deecf1a58d
2016-07-19 14:49:31 +00:00
Jesse Pretorius f036c25411 Add option for debug logging for containers
This adds a patch to allow debug logging to be enabled when
creating containers.

This is useful for troubleshooting why containers fail to
build/start.

Change-Id: I3b4a0be8cff6b5c3397fdfe2a087522e3ee5f32b
2016-07-19 02:33:18 +01:00
Jesse Pretorius 68e382ba2c Implement overlayfs-backed containers
Since overlayfs is now part of the mainstream kernel, it makes sense
to take advantage of it to speed up the container creation process.

This patch implements the ability to set 'overlayfs' as the backing
store for containers. This is an optional feature which must
explicitly be set by the deployer.

As this only works with Ansible > 2.0 a pre-requisite check has been
implemented to protect against its use with prior versions. The
inventory and key prep playbook have been adjusted to work with
Ansible versions <2 and >2.

The logging for the veth cleanup has been removed as overlayfs
containers do not have access to the /dev/log device. This causes
the container setup to be incomplete.

Depends-On: I20123b83af10c0890f4d5945b9fb230acd664213
Change-Id: If5b11ef6d94fe863a75efd174957ad43b9d2e030
2016-07-17 16:13:59 +00:00
adreznec 41800e3eae Add Ubuntu ppc64le support
This commit adds support for container creation on Ubuntu ppc64le.
It maps the ansible architecture to the correct lxc architecture
and sets the container arch accordingly.

Change-Id: I1f142686d7190e5bfe7147366d406381b5011725
2016-06-29 22:58:51 -05:00
Jesse Pretorius 46de08da3b Make the LXC container create use the host resolver config
The current container creation process overrides the DNS resolution
configuration instead of consuming the configuration implemented
in the container cache preparation.

With the implementation of change I66b448dee361e231d172eb278b290ec4dccfdf97
The container cache makes use of the host resolver configuration.

This patch ensures that the container create process falls into line
with that instead of overriding the cache configuration.

Change-Id: I0f12a50471e670a03e17bfaa2c150a8da3f63af4
2016-06-07 13:29:45 +01:00
Jimmy McCrory ccddfc7731 Fix container hostname for RFC 1034/1035
In lxc-container create this update will ensure we're using good
hostnames. This is required in some logging cases as well as SSL.
This will also allow a deployer to customize the domain name based on
their needs.

A new variable has been created called ``lxc_container_domain`` with a
default value of "openstack.local". This change has no upgrade impact as
any changes that need to happen within an existing environment will be
automatically taken care of without impacting the functionality of an
existing deployment.

This is largely based on Ib31a48dd480ecb376a6a8c5b35b09dfa5d2e58f6, with
the intent being to move the tasks from a playbook in the integrated
repo to the lxc_container_create role, and with the addition of limiting
127.0.0.1 to localhost within /etc/hosts.

Change-Id: I9e72699354a467478742281cab74690e66b6a652
Co-Authored-By: Kevin Carter <kevin.carter@rackspace.com>
2016-05-06 19:40:59 -07:00
Kevin Carter 0c16334a2c
updated for lxc-container-create for multi-distro support
This change updates the lxc-container-create role to build lxc containers
using the download template. The build supports ubuntu 14.04/16.04 and
RedHat/CentOS 7 using the multi-distro framework.

This change is incorporating updates built into the lxc_hosts role. Once
merged this should unblock all work geared toward multi-distro support and
testing. The testing structure has been updated to match what is being done
in other roles.

A new file was created "manual-tests.rc" which assists in manual testing
by exporting the needed environment variables to run the role tests without
requiring everything to run through tox which has undesirable side-effects
when running tests that span multiple roles.

Change-Id: Iee304dd026e0865e0444259d2132122233d90f5f
Depends-On: Ie13be2322d28178760481c59805101d6aeef4f36
Co-Authored-By: Jesse Pretorius <jesse.pretorius@rackspace.co.uk>
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-05-03 15:15:34 -05:00
Jean-Philippe Evrard 6e94a195ec Ability to define the mtu globally (for all the container networks)
Currently, deployers can override MTUs on a per-network basis,
but may be looking for a way to define the mtu globally.

This implements a variable named ``lxc_container_default_mtu``
that currently defaults to 1500 (standard value). If this variable
is set, it will globally override the mtu, while still keeping the
per-network override.

Change-Id: Ia7e4f9e929f513ddc09e6de9467ec6ff765e2e6f
Closes-Bug: #1518311
2015-12-02 17:22:17 +01:00
Kevin Carter 8f8cf55edd
IRR for lxc_container_create
The change moves the role out from the main repo lxc_container_create
repository and into its own standalone repository.

Items within this change:
  * The role has been updated to ensure it runs standalone.
  * Tests added to the role within tox.
  * Functional tests added to the role that can either be run
    via the run_tests.sh script or using tox.
  * dev requirements have been updated for testing usecases.
  * Docs added to both the README.rst file as well as the docs
    folder.

Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2015-11-03 08:00:45 -06:00