summaryrefslogtreecommitdiffstats
path: root/playbooks/provisioning
diff options
context:
space:
mode:
authorTomas Sedovic <tomas@sedovic.cz>2017-09-19 17:35:45 +0200
committerGitHub <noreply@github.com>2017-09-19 17:35:45 +0200
commit957a3130d586f7da8cd2643dce3de059649bcdbf (patch)
tree79a7c19c2914e3b8bbb8348038fbeb28769f8671 /playbooks/provisioning
parent288fef2dd2d74baab729d7c8b628a32d337da9bc (diff)
downloadopenshift-957a3130d586f7da8cd2643dce3de059649bcdbf.tar.gz
openshift-957a3130d586f7da8cd2643dce3de059649bcdbf.tar.bz2
openshift-957a3130d586f7da8cd2643dce3de059649bcdbf.tar.xz
openshift-957a3130d586f7da8cd2643dce3de059649bcdbf.zip
Docker ansible host (#742)
* Document using a Docker image for Ansible host * Fix the markdown url syntax * Mention keystonerc as well
Diffstat (limited to 'playbooks/provisioning')
-rw-r--r--playbooks/provisioning/openstack/README.md32
1 files changed, 32 insertions, 0 deletions
diff --git a/playbooks/provisioning/openstack/README.md b/playbooks/provisioning/openstack/README.md
index ab1513a73..c6633df06 100644
--- a/playbooks/provisioning/openstack/README.md
+++ b/playbooks/provisioning/openstack/README.md
@@ -14,6 +14,9 @@ etc.). The result is an environment ready for openshift-ansible.
* python-dns / [dnspython](https://pypi.python.org/pypi/dnspython)
* Become (sudo) is not required.
+**NOTE**: You can use a Docker image with all dependencies set up.
+Find more in the [Deployment section](#deployment).
+
### Optional Dependencies for localhost
**Note**: When using rhel images, `rhel-7-server-openstack-10-rpms` repository is required in order to install these packages.
@@ -444,6 +447,35 @@ the dynamic inventory file in your ansible commands , like `-i openstack.py`.
## Deployment
+### Using Docker on the Ansible host
+
+If you don't want to worry about the dependencies, you can use the
+[OpenStack Control Host image][control-host-image].
+
+[control-host-image]: https://hub.docker.com/r/redhatcop/control-host-openstack/
+
+It has all the dependencies installed, but you'll need to map your
+code and credentials to it. Assuming your SSH keys live in `~/.ssh`
+and everything else is in your current directory (i.e. `ansible.cfg`,
+`keystonerc`, `inventory`, `openshift-ansible`,
+`openshift-ansible-contrib`), this is how you run the deployment:
+
+ sudo docker run -it -v ~/.ssh:/mnt/.ssh:Z \
+ -v $PWD:/root/openshift:Z \
+ -v $PWD/keystonerc:/root/.config/openstack/keystonerc.sh:Z \
+ redhatcop/control-host-openstack bash
+
+(feel free to replace `$PWD` with an actual path to your inventory and
+checkouts, but note that relative paths don't work)
+
+The first run may take a few minutes while the image is being
+downloaded. After that, you'll be inside the container and you can run
+the playbooks:
+
+ cd openshift
+ ansible-playbook openshift-ansible-contrib/playbooks/provisioning/openstack/provision.yaml
+
+
### Run the playbook
Assuming your OpenStack (Keystone) credentials are in the `keystonerc`