aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/testing/developer/devguide/ansible.rst (renamed from docs/testing/user/userguide/ansible.rst)62
-rw-r--r--docs/testing/developer/devguide/index.rst1
-rw-r--r--docs/testing/user/userguide/index.rst1
-rw-r--r--resources/ansible_roles/qtip-workspace/ansible.cfg2
-rw-r--r--resources/ansible_roles/qtip-workspace/defaults/main.yml3
5 files changed, 37 insertions, 32 deletions
diff --git a/docs/testing/user/userguide/ansible.rst b/docs/testing/developer/devguide/ansible.rst
index ff2cb0a3..ab2cb55c 100644
--- a/docs/testing/user/userguide/ansible.rst
+++ b/docs/testing/developer/devguide/ansible.rst
@@ -7,42 +7,23 @@ Run with Ansible
****************
QTIP benchmarking tasks are built upon `Ansible`_ playbooks and roles. If you are familiar with Ansible, it is possible
-to run it with ``ansible-playbook`` command.
+to run it with ``ansible-playbook`` command. And it is useful during development of ansible modules or testing roles.
.. _Ansible: https://www.ansible.com/
Create workspace
================
-There is a playbook in ``tests/integration`` used for creating a new workspace for QTIP benchmarking::
+There is a playbook in ``resources/ansible_roles/qtip-workspace`` used for creating a new workspace::
- cd qtip/tests/integration
- ansible-playbook workspace-create.yml
-
-You will be prompted for required information for the Pod under test::
-
- (qtip) ➜ integration git:(master) ✗ ansible-playbook workspace-create.yml
- name of the pod under test (used in reporting) [qtip-pod]:
- scenario deployed in the pod: [default]:
- installer type of the pod (apex|fuel|other) [fuel]:
- master host/vm of the installer (accessible by `ssh <hostname>`): f5
- workspace name (new directory will be created) [workspace]:
-
- PLAY [localhost] ***************************************************************
-
- TASK [qtip-workspace : generating workspace] ***********************************
-
- PLAY RECAP *********************************************************************
- localhost : ok=0 changed=0 unreachable=0 failed=0
-
-
-You may hit ``Enter`` to accept default value
+ cd resources/ansible_roles/qtip-workspace
+ ansible-playbook create.yml
NOTE: if this playbook is moved to other directory, configuration in ``ansible.cfg`` needs to be updated accordingly.
The ansible roles from QTIP, i.e. ``<path_of_qtip>/resources/ansible_roles`` must be added to ``roles_path`` in
`Ansible configuration file`_. For example::
- roles_path = ../../resources/ansible_roles
+ roles_path = ~/qtip/resources/ansible_roles
.. _Ansible configuration file:
@@ -89,22 +70,45 @@ If several jumps are required to reach the master node, we may chain the jump ho
NOTE: ``ProxyJump`` is equivalent to the long ``ProxyCommand`` option, but it is only available since OpenSSH 7.3
-Setup testing environment
--------------------------
+Automatic setup
+---------------
-Run the setup playbook to generate ansible inventory of system under test by querying the slave nodes from the installer
+#. Modify ``<workspace>/group_vars/all.yml`` to set installer information correctly
+#. Modify ``<workspace>/hosts`` file to set installer master host correctly
+#. Run the setup playbook to generate ansible inventory of system under test by querying the slave nodes from the installer
master::
cd workspace
ansible-playbook setup.yml
-Currently, QTIP supports automatic discovery from `apex`_ and `fuel`_
-
.. _apex: https://wiki.opnfv.org/display/apex
.. _fuel: https://wiki.opnfv.org/display/fuel
It will update the ``hosts`` and ``ssh.cfg``
+Currently, QTIP supports automatic discovery from `apex`_ and `fuel`_.
+
+Manual setup
+------------
+
+If your installer is not supported or you are
+testing hosts not managed by installer, you may add them manually in ``[compute]`` group in ``<workspace>/hosts``::
+
+ [compute:vars]
+ ansible_ssh_common_args=-F ./ssh.cfg
+
+ [compute]
+ node-2
+ node-4
+ node-6
+ node-7
+
+And ``ssh.cfg`` for ssh connection configuration::
+
+ Host node-5
+ HostName 10.20.5.12
+ User root
+
Run the tests
-------------
diff --git a/docs/testing/developer/devguide/index.rst b/docs/testing/developer/devguide/index.rst
index bd25a5b7..40baca9c 100644
--- a/docs/testing/developer/devguide/index.rst
+++ b/docs/testing/developer/devguide/index.rst
@@ -11,6 +11,7 @@ QTIP Developer Guide
:maxdepth: 2
overview.rst
+ ansible.rst
arch.rst
framework.rst
cli.rst
diff --git a/docs/testing/user/userguide/index.rst b/docs/testing/user/userguide/index.rst
index dd54e576..d0d555f8 100644
--- a/docs/testing/user/userguide/index.rst
+++ b/docs/testing/user/userguide/index.rst
@@ -12,7 +12,6 @@ QTIP User Guide
:maxdepth: 2
overview.rst
- ansible.rst
cli.rst
api.rst
compute.rst
diff --git a/resources/ansible_roles/qtip-workspace/ansible.cfg b/resources/ansible_roles/qtip-workspace/ansible.cfg
index 74075909..872941bd 100644
--- a/resources/ansible_roles/qtip-workspace/ansible.cfg
+++ b/resources/ansible_roles/qtip-workspace/ansible.cfg
@@ -12,4 +12,4 @@
# some basic default values...
inventory = hosts
-roles_path = ../../resources/ansible_roles
+roles_path = ../../ansible_roles
diff --git a/resources/ansible_roles/qtip-workspace/defaults/main.yml b/resources/ansible_roles/qtip-workspace/defaults/main.yml
index 102a706e..68dafbc2 100644
--- a/resources/ansible_roles/qtip-workspace/defaults/main.yml
+++ b/resources/ansible_roles/qtip-workspace/defaults/main.yml
@@ -17,4 +17,5 @@ installer_master_group:
workspace: "workspace"
qtip_package: ../../..
-qtip_cache: .qtip-cache \ No newline at end of file
+qtip_cache: .qtip-cache
+cwd: .