aboutsummaryrefslogtreecommitdiffstats
path: root/ansible/roles/install_dependencies_jumphost
diff options
context:
space:
mode:
authorJohn O Loughlin <john.oloughlin@intel.com>2018-02-16 15:29:58 +0000
committerEmma Foley <emma.l.foley@intel.com>2018-06-26 14:40:13 +0000
commit035df34e6486ed249fa5f0b9085b8fe8c11fe184 (patch)
tree0f9343bfc26bbf62443aa6e713d525203e515f9a /ansible/roles/install_dependencies_jumphost
parente88d6092ac3dab2b657247c7f27a2b34d90978dc (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')
-rwxr-xr-xansible/roles/install_dependencies_jumphost/tasks/Debian.yml76
-rw-r--r--ansible/roles/install_dependencies_jumphost/tasks/RedHat.yml54
-rw-r--r--ansible/roles/install_dependencies_jumphost/tasks/Suse.yml49
-rw-r--r--ansible/roles/install_dependencies_jumphost/tasks/main.yml15
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"