aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStepan Andrushko <stepanx.andrushko@intel.com>2018-12-31 12:54:40 +0200
committerStepan Andrushko <stepanx.andrushko@intel.com>2019-01-11 13:24:07 +0200
commit62a5d6bfc8480dfd0bfa2d6937f31125ba443e56 (patch)
tree844aeeaf1fd1fd58ba5ed5bd70b18a8080214361
parent07c506d3fff732019651d89de14bf42fa8d9a365 (diff)
Replace script to install.yaml in nsb_setup.sh
Replace 'nsb_setup.yml' with 'install.yaml' in 'nsb_setup.sh'. Ansible script 'install.yaml' supports installations on Ubuntu 16/18 of Yardstick, packages dependencies and VM images. Add possibility to provide and add to OpenStack non-NSB VM image. JIRA: YARDSTICK-1577 Change-Id: I0cf7cbb354a5f389da432b05cb6f0b470fb5d8f1 Signed-off-by: Stepan Andrushko <stepanx.andrushko@intel.com>
-rw-r--r--ansible/group_vars/all.yml2
-rw-r--r--ansible/install-inventory.ini2
-rw-r--r--ansible/install.yaml54
-rwxr-xr-xnsb_setup.sh10
4 files changed, 48 insertions, 20 deletions
diff --git a/ansible/group_vars/all.yml b/ansible/group_vars/all.yml
index 0e8ad5bc5..cd12bf02e 100644
--- a/ansible/group_vars/all.yml
+++ b/ansible/group_vars/all.yml
@@ -1,6 +1,6 @@
---
target_os: "Ubuntu"
-YARD_IMG_ARCH: "amd64"
+YARD_IMG_ARCH: "{{ YARD_IMAGE_ARCH | default('amd64') }}"
IMG_PROPERTY: "{{ IMAGE_PROPERTY | default('normal') }}"
clone_dest: /opt/tempT
release: "{{ OS_RELEASE | default('xenial') }}"
diff --git a/ansible/install-inventory.ini b/ansible/install-inventory.ini
index 4e8629428..d0a8ef927 100644
--- a/ansible/install-inventory.ini
+++ b/ansible/install-inventory.ini
@@ -21,6 +21,8 @@ inst_mode_baremetal=baremetal
inst_mode_container=container
inst_mode_container_pull=container_pull
ubuntu_archive={"amd64": "http://archive.ubuntu.com/ubuntu/", "arm64": "http://ports.ubuntu.com/ubuntu-ports/"}
+# When IMG_PROPERTY is passed neither normal nor nsb set "path_to_vm=/path/to/image" to add it to OpenStack
+# path_to_img=/tmp/workspace/yardstick-image.img
# Uncomment credentials below if needed
# ansible_user=root
# ansible_pass=root
diff --git a/ansible/install.yaml b/ansible/install.yaml
index d181c5ffd..6146c7f19 100644
--- a/ansible/install.yaml
+++ b/ansible/install.yaml
@@ -116,7 +116,9 @@
include_role:
name: build_yardstick_image
tasks_from: pre_build.yml
- when: installation_mode != inst_mode_container
+ when:
+ - installation_mode != inst_mode_container
+ - IMG_PROPERTY == 'nsb' or IMG_PROPERTY == 'normal'
- name: Build VM in chroot
@@ -132,7 +134,9 @@
include_role:
name: build_yardstick_image
tasks_from: "cloudimg_modify_{{ img_property }}.yml"
- when: installation_mode != inst_mode_container
+ when:
+ - installation_mode != inst_mode_container
+ - IMG_PROPERTY == 'nsb' or IMG_PROPERTY == 'normal'
- name: Clear up after VM is built
@@ -144,28 +148,48 @@
include_role:
name: build_yardstick_image
tasks_from: post_build.yml
- when: installation_mode != inst_mode_container
+ when:
+ - installation_mode != inst_mode_container
+ - IMG_PROPERTY == 'nsb' or IMG_PROPERTY == 'normal'
-- hosts: jumphost
+- name: Add OpenStack variables, image
+ hosts: jumphost
+ vars:
+ openrc_flag: false
vars_files:
- yardstick_config.yml
- roles:
- - { role: convert_openrc, when: openrc_file is defined }
+ pre_tasks:
+ - name: Get information about external VM image
+ stat:
+ path: "{{ path_to_img }}"
+ register: image_file_stat
+ when:
+ - path_to_img is defined
+ - imgfile is not defined
+ - set_fact:
+ imgfile: "{{ path_to_img }}"
+ when:
+ - path_to_img is defined
+ - imgfile is not defined
+ - image_file_stat.stat.islnk is defined
+ - not image_file_stat.stat.islnk
-- name: Add OpenStack variables, image
- hosts: jumphost
- vars_files:
- - yardstick_config.yml
- environment:
- "{{ openrc }}"
+ - set_fact:
+ openrc_flag: true
+ when:
+ - openrc_file is defined
+ - imgfile is defined
roles:
- - { role: clean_images, when: openrc_file is defined }
- - { role: clean_flavors, when: openrc_file is defined }
- - { role: create_samplevnfs_image, when: openrc_file is defined }
+ - { role: convert_openrc, when: openrc_file is defined }
+ - { role: clean_images, when: openrc_flag }
+ - { role: clean_flavors, when: openrc_flag }
+ - { role: create_samplevnfs_image, when: openrc_flag }
+ environment:
+ "{{ openrc | default({}) }}"
- name: Start yardstick container on jumphost
diff --git a/nsb_setup.sh b/nsb_setup.sh
index 335db8dd2..2e244cf00 100755
--- a/nsb_setup.sh
+++ b/nsb_setup.sh
@@ -131,9 +131,11 @@ pip install ansible==2.5.5 shade==1.22.2 docker-py==1.10.6
ANSIBLE_SCRIPTS="ansible"
-cd ${ANSIBLE_SCRIPTS} &&\
+cd ${ANSIBLE_SCRIPTS} && \
ansible-playbook \
- -e img_property="nsb" \
- -e YARD_IMG_ARCH='amd64' ${extra_args}\
- -i install-inventory.ini nsb_setup.yml
+ -e IMAGE_PROPERTY='nsb' \
+ -e OS_RELEASE='xenial' \
+ -e INSTALLATION_MODE='container_pull' \
+ -e YARD_IMAGE_ARCH='amd64' ${extra_args} \
+ -i install-inventory.ini install.yaml