diff options
author | John O Loughlin <john.oloughlin@intel.com> | 2018-02-16 15:29:58 +0000 |
---|---|---|
committer | Emma Foley <emma.l.foley@intel.com> | 2018-06-26 14:40:13 +0000 |
commit | 035df34e6486ed249fa5f0b9085b8fe8c11fe184 (patch) | |
tree | 0f9343bfc26bbf62443aa6e713d525203e515f9a /ansible/roles/install_dependencies_jumphost | |
parent | e88d6092ac3dab2b657247c7f27a2b34d90978dc (diff) |
Migrate install.sh script to ansible
Ansible scripts to install yardstick.
These scripts will take a few options:
INSTALLATION_MODE : Container or Baremetal
YARDSTICK_DIR: Location of Yardstick directory
VIRTUAL_ENVIRONMENT: Should a virtual environment be used
NSB_DIR: Location of NSB directory
JIRA: YARDSTICK-1126
Change-Id: I4a13e07e96650ffd971dfb18472f2563cfd51aa9
Signed-off-by: John O Loughlin <john.oloughlin@intel.com>
(cherry picked from commit 0b976dd02421a181674acc837127ac741ccfccea)
Diffstat (limited to 'ansible/roles/install_dependencies_jumphost')
4 files changed, 194 insertions, 0 deletions
diff --git a/ansible/roles/install_dependencies_jumphost/tasks/Debian.yml b/ansible/roles/install_dependencies_jumphost/tasks/Debian.yml new file mode 100755 index 000000000..9baf7e59e --- /dev/null +++ b/ansible/roles/install_dependencies_jumphost/tasks/Debian.yml @@ -0,0 +1,76 @@ +# Copyright (c) 2017 Intel Corporation. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +--- +- name: Update repositories + apt: + update_cache: yes + +- name: Install core packages + action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" + with_items: + - wget + - curl + - screen + - procps + - socat + - sshpass + - sudo + - vim + - libffi-dev + - libfuse-dev + - libssl-dev + - libxft-dev + - libxml2-dev + - libxss-dev + - libxslt-dev + - libxslt1-dev + - libzmq-dev + - qemu-user-static + - qemu-utils + - kpartx + - python + - python-setuptools + - python-dev + - python-pip + - python-libvirt + - python-virtualenv + - bridge-utils + - ebtables + - openssl + - ccze + - nginx-full + - uwsgi + - uwsgi-plugin-python + - supervisor + - lsof + - nodejs + - npm + - rabbitmq-server + +- name: Install libc6:arm64 package + action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" + with_items: + - libc6:arm64 + when: + - arch is defined + - arch != arch_arm64 + - installation_mode == inst_mode_container + +- name: Remove dependencies that are no longer required + apt: + update_cache: yes + +- name: Remove useless packages from the cache + apt: + autoclean: yes diff --git a/ansible/roles/install_dependencies_jumphost/tasks/RedHat.yml b/ansible/roles/install_dependencies_jumphost/tasks/RedHat.yml new file mode 100644 index 000000000..85eb1156a --- /dev/null +++ b/ansible/roles/install_dependencies_jumphost/tasks/RedHat.yml @@ -0,0 +1,54 @@ +# Copyright (c) 2017 Intel Corporation. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +--- +- name: Install EPEL if needed + action: "{{ ansible_pkg_mgr }} name=epel-release state=present" + when: ansible_distribution in ['RedHat', 'CentOS', 'ScientificLinux'] + +- name: Install core packages + action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" + with_items: + - deltarpm + - wget + - expect + - curl + # require python2 version of libselinux-python so ansible can operate in selinux enviroment + - libselinux-python + - screen + - git + - socat + - sshpass + - qemu-kvm + - qemu-img + - kpartx + - libxslt-devel + - libffi-devel + - openssl-devel + - nginx + - uwsgi + - uwsgi-plugin-python + - supervisor + - python-setuptools + - libffi-devel + - python-devel + - nodejs + - npm + - gcc + - lsof + - procps + - bridge-utils + - ebtables + - openssl + - python-virtualenv + - ccze diff --git a/ansible/roles/install_dependencies_jumphost/tasks/Suse.yml b/ansible/roles/install_dependencies_jumphost/tasks/Suse.yml new file mode 100644 index 000000000..af53c9cd5 --- /dev/null +++ b/ansible/roles/install_dependencies_jumphost/tasks/Suse.yml @@ -0,0 +1,49 @@ +# Copyright (c) 2018 Intel Corporation. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +--- +- name: Install EPEL if needed + action: "{{ ansible_pkg_mgr }} name=epel-release state=present" + when: ansible_distribution in ['RedHat', 'CentOS', 'ScientificLinux'] + +- name: Install core packages + action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" + with_items: + - deltarpm + - wget + - expect + - curl + - screen + - git + - socat + - sshpass + - qemu-kvm + - kpartx + - libxslt-devel + - libffi-devel + - openssl-devel + - nginx + - uwsgi + - python-setuptools + - libffi-devel + - python-devel + - nodejs + - npm + - gcc + - lsof + - procps + - bridge-utils + - ebtables + - openssl + - python-virtualenv + - ccze diff --git a/ansible/roles/install_dependencies_jumphost/tasks/main.yml b/ansible/roles/install_dependencies_jumphost/tasks/main.yml new file mode 100644 index 000000000..27660c3ca --- /dev/null +++ b/ansible/roles/install_dependencies_jumphost/tasks/main.yml @@ -0,0 +1,15 @@ +# Copyright (c) 2017 Intel Corporation. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +--- +- include: "{{ ansible_os_family }}.yml" |