Merge "Add Grafana Dashboard for vCMTS testcase"
[yardstick.git] / ansible / install.yaml
index f4f57bd..558c486 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (c) 2018 Intel Corporation.
+# Copyright (c) 2018-2019 Intel Corporation.
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -39,7 +39,8 @@
     - { role: configure_gui, when: installation_mode != inst_mode_container_pull }
     - { role: download_trex, when: installation_mode != inst_mode_container_pull }
     - { role: install_trex, when: installation_mode != inst_mode_container_pull }
-    - { role: configure_rabbitmq, when: installation_mode == inst_mode_baremetal }
+    - role: configure_rabbitmq
+      install_mode: "{{ installation_mode }}"
 
 
   post_tasks:
@@ -67,6 +68,7 @@
     # can't update grub in chroot/docker
     - enable_hugepages_on_boot
     - enable_iommu_on_boot
+    - enable_cpu_isolation_on_boot
     # needed for collectd plugins
     - increase_open_file_limits
     - install_image_dependencies
     - install_pmu_tools
     - download_collectd
     - install_collectd
+    - docker
+    - barometer_collectd
 
 
-- hosts: jumphost
+- name: Prepare to build VM
+  hosts: jumphost
   become: yes
   vars:
     img_prop_item: "{{ IMG_PROPERTY }}"
       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'
 
 
-- hosts: chroot_image
+- name: Build VM in chroot
+  hosts: chroot_image
   connection: chroot
   become: yes
   vars:
       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'
 
 
-- hosts: jumphost
+- name: Clear up after VM is built
+  hosts: jumphost
   become: yes
 
   tasks:
       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'
+
+
+- name: Add OpenStack variables, image
+  hosts: jumphost
+  vars:
+    openrc_flag: false
+  vars_files:
+    - yardstick_config.yml
+
+  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: start yardstick container on jumphost
+    - set_fact:
+        openrc_flag: true
+      when:
+        - openrc_file is defined
+        - imgfile is defined
+
+  roles:
+    - { 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
   hosts: jumphost
 
   tasks:
-    - include_role:
+    - name: Install docker needed to pull Yardstick container
+      include_role:
         name: docker
       when: installation_mode == inst_mode_container_pull