diff options
Diffstat (limited to 'deployment/tox.ini')
-rw-r--r-- | deployment/tox.ini | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/deployment/tox.ini b/deployment/tox.ini new file mode 100644 index 00000000..ea990c8f --- /dev/null +++ b/deployment/tox.ini @@ -0,0 +1,121 @@ +# If "pip" is not installed, install it running following command: +# $ yum install python-pip +# +# If "tox" is not installed, install it running following command: +# $ pip install -e git://github.com/tox-dev/tox.git@2.9.1#egg=tox +# +# After it you can use "tox" command. For example: +# $ tox -e ocp3.7 -- python ocp-on-vmware.py --create_inventory + +[tox] +# With version 1.6.0 'skipsdist' config option was added. It allows to skip +# installation of current project to 'sdist' (no req to define setup.py file). +minversion = 1.6.0 +skipsdist = True +sitepackages = False +envlist = readme + +[testenv] +basepython = python2.7 +envdir = {toxworkdir}/{envname} +passenv = OPENSHIFT_ANSIBLE_GIT_TAG +setenv = + OADIR={envdir}/usr/share/ansible/openshift-ansible + ANSIBLE_ROLES_PATH={env:OADIR}/roles:{toxinidir}/playbooks/roles + ANSIBLE_CALLBACK_PLUGINS={env:OADIR}/callback_plugins + ANSIBLE_FILTER_PLUGINS={env:OADIR}/filter_plugins + ANSIBLE_LOOKUP_PLUGINS={env:OADIR}/lookup_plugins + ANSIBLE_LIBRARY={env:OADIR}/roles/etcd_common/library:{env:OADIR}/roles/lib_openshift/library:{env:OADIR}/roles/lib_utils/library:{env:OADIR}/roles/openshift_certificate_expiry/library:{env:OADIR}/roles/openshift_cli/library:{env:OADIR}/roles/openshift_facts/library:{env:OADIR}/roles/openshift_health_checker/library:{env:OADIR}/roles/openshift_logging/library:{env:OADIR}/roles/os_firewall/library:{env:OADIR}/library:{env:OADIR}/roles/etcd/library:{env:OADIR}/roles/lib_os_firewall/library:{env:OADIR}/roles/openshift_sanitize_inventory/library:{envdir}/src/yedit/roles/lib_yaml_editor/library + ANSIBLE_INVENTORY={toxinidir}/inventory/vsphere/vms/vmware_inventory.py + ANSIBLE_SSH_ARGS="-C -o ControlMaster=auto -o ControlPersist=60s -F {homedir}/.ssh/config" +whitelist_externals = * +commands = + python -m pip install --upgrade pip>=9.0.0 setuptools wheel + pip install \ + cryptography \ + pyyaml \ + dnspython \ + ipaddress \ + ipaddr \ + iptools \ + netaddr \ + pyvmomi \ + click \ + pyOpenSSL \ + passlib \ + Jinja2>=2.8 + bash -ec "yum -y install git libselinux-python || echo 'WARNING! Failed to run yum command. Make sure you have enough rights. Continuing assuming that yum packages are installed.'" + mkdir -p {envdir}/lib/python2.7/site-packages + bash -ec "if [ ! -e {envdir}/lib/python2.7/site-packages/selinux ]; then \ + ln -s /usr/lib64/python2.7/site-packages/selinux \ + {envdir}/lib/python2.7/site-packages/selinux ; \ + fi" + find . -type f -name "*.py[c|o]" -delete + {toxinidir}/scripts/install_openshift_ansible.sh \ + {envdir} {env:OPENSHIFT_ANSIBLE_GIT_TAG} + {toxinidir}/scripts/install_yedit_for_ansible.sh {envdir} master + +[testenv:readme] +commands = + echo -e 'To create environment for installation of '\ + 'OpenShift (OCP) 3.11 run following command:\n\n'\ + ' $ tox -e ocp3.11\n\n'\ + 'or for version 3.10 run following command:\n\n'\ + ' $ tox -e ocp3.10\n\n'\ + 'or for version 3.9 run following command:\n\n'\ + ' $ tox -e ocp3.9\n\n'\ + 'or for version 3.7 run following command:\n\n'\ + ' $ tox -e ocp3.7\n\n'\ + 'or for version 3.6 run following:\n\n'\ + ' $ tox -e ocp3.6\n' + +[testenv:ocp3.6] +commands = + {[testenv]commands} + {envdir}/bin/pip install \ + -v -e "git://github.com/ansible/ansible.git@v2.4.3.0-1#egg=ansible" + bash -c "export ANSIBLE_LOG_PATH={toxinidir}/ansible_{envname}_`date +%Y_%m_%d__%H_%M_%S`.log ; {posargs:echo 'No commands have been specified. Exiting.'}" +setenv = + {[testenv]setenv} + OPENSHIFT_ANSIBLE_GIT_TAG={env:OPENSHIFT_ANSIBLE_GIT_TAG:''} + +[testenv:ocp3.7] +commands = + {[testenv]commands} + {envdir}/bin/pip install \ + -v -e "git://github.com/ansible/ansible.git@v2.4.3.0-1#egg=ansible" + bash -c "export ANSIBLE_LOG_PATH={toxinidir}/ansible_{envname}_`date +%Y_%m_%d__%H_%M_%S`.log ; {posargs:echo 'No commands have been specified. Exiting.'}" +setenv = + {[testenv]setenv} + OPENSHIFT_ANSIBLE_GIT_TAG={env:OPENSHIFT_ANSIBLE_GIT_TAG:''} + +[testenv:ocp3.9] +commands = + {[testenv]commands} + {envdir}/bin/pip install \ + -v -e "git://github.com/ansible/ansible.git@v2.4.3.0-1#egg=ansible" + bash -c "export ANSIBLE_LOG_PATH={toxinidir}/ansible_{envname}_`date +%Y_%m_%d__%H_%M_%S`.log ; {posargs:echo 'No commands have been specified. Exiting.'}" +setenv = + {[testenv]setenv} + OPENSHIFT_ANSIBLE_GIT_TAG={env:OPENSHIFT_ANSIBLE_GIT_TAG:''} + +[testenv:ocp3.10] +commands = + {[testenv]commands} + {envdir}/bin/pip install \ + -v -e "git://github.com/ansible/ansible.git@v2.4.6.0-1#egg=ansible" + bash -c "export ANSIBLE_LOG_PATH={toxinidir}/ansible_{envname}_`date +%Y_%m_%d__%H_%M_%S`.log ; {posargs:echo 'No commands have been specified. Exiting.'}" +setenv = + {[testenv]setenv} + OPENSHIFT_ANSIBLE_GIT_TAG={env:OPENSHIFT_ANSIBLE_GIT_TAG:''} + +[testenv:ocp3.11] +commands = + {[testenv]commands} + {envdir}/bin/pip install \ + -v -e "git://github.com/ansible/ansible.git@v2.6.2#egg=ansible" + bash -c "export ANSIBLE_LOG_PATH={toxinidir}/ansible_{envname}_`date +%Y_%m_%d__%H_%M_%S`.log ; {posargs:echo 'No commands have been specified. Exiting.'}" + +setenv = + {[testenv]setenv} + OPENSHIFT_ANSIBLE_GIT_TAG={env:OPENSHIFT_ANSIBLE_GIT_TAG:''} |