Role lxc_container_create for OpenStack-Ansible
Go to file
Paul Belanger cd76bb4cd2 Switch to testenv:functional
This brings our tox.ini files inline with other OpenStack projects.

Change-Id: If59a2f58a2cf3f4dade666518fff0ac5830860c9
Depends-On: I376e51824c46f9b5eb4a4cff01aaa176632087dd
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2015-12-18 15:42:44 -05:00
defaults Ability to define the mtu globally (for all the container networks) 2015-12-02 17:22:17 +01:00
doc Updates for typos 2015-12-08 16:50:45 -06:00
handlers IRR for lxc_container_create 2015-11-03 08:00:45 -06:00
meta IRR for lxc_container_create 2015-11-03 08:00:45 -06:00
tasks IRR for lxc_container_create 2015-11-03 08:00:45 -06:00
templates Ability to define the mtu globally (for all the container networks) 2015-12-02 17:22:17 +01:00
tests Updates for typos 2015-12-08 16:50:45 -06:00
.gitignore New git dotfiles for independant repository 2015-11-26 00:43:02 +00:00
.gitreview New git dotfiles for independant repository 2015-11-26 00:43:02 +00:00
CONTRIBUTING.rst IRR for lxc_container_create 2015-11-03 08:00:45 -06:00
LICENSE IRR for lxc_container_create 2015-11-03 08:00:45 -06:00
README.rst IRR for lxc_container_create 2015-11-03 08:00:45 -06:00
run_tests.sh Update run_tests to be more complete 2015-12-09 13:41:26 +00:00
setup.cfg Updates for typos 2015-12-08 16:50:45 -06:00
setup.py IRR for lxc_container_create 2015-11-03 08:00:45 -06:00
test-requirements.txt Merge bashate/pep8 lint jobs in common job 2015-12-15 09:34:25 +00:00
tox.ini Switch to testenv:functional 2015-12-18 15:42:44 -05:00

OpenStack LXC container create

tags

openstack, lxc, container, cloud, ansible

category

*nix

Role for creating LXC containers. This role has been setup for use in OpenStack. This role will create several directories on the LXC host for use in bind mounted storage within the container.

Example Play:
- name: Create container(s)
  hosts: all_containers
  gather_facts: false
  user: root
  roles:
    - { role: "lxc_container_create", tags: [ "lxc-container-create" ] }
Example Inventory:
{
    "all_containers": {
        "children": [
            "group_of_containers"
        ],
        "hosts": []
    },
    "lxc_hosts": {
        "children": [],
        "hosts": [
            "infra1"
        ]
    },
    "group_of_containers": {
        "children": [],
        "hosts": [
            "container1"
        ]
    },
    "_meta": {
        "hostvars": {
            "infra1": {
                "ansible_ssh_host": "192.168.0.1",
                "container_address": "192.168.0.1",
                "container_name": "infra1",
                "container_networks": {
                    "management_address": {
                        "bridge": "br-mgmt",
                        "interface": "eth1",
                        "netmask": "255.255.252.0",
                        "type": "veth"
                    }
                },
                "properties": {
                    "container_release": "trusty",
                    "is_metal": true
                }
            },
            "container1": {
                "ansible_ssh_host": "10.0.0.1",
                "container_address": "10.0.0.1",
                "container_name": "container1",
                "container_networks": {
                    "management_address": {
                        "address": "10.0.0.1",
                        "bridge": "br-mgmt",
                        "interface": "eth1",
                        "netmask": "255.255.252.0",
                        "type": "veth"
                    }
                },
                "physical_host": "infra1",
                "physical_host_group": "lxc_hosts",
                "properties": {
                    "container_release": "trusty",
                }
            }
        }
    }
}