diff options
Diffstat (limited to 'ansible')
-rw-r--r-- | ansible/group_vars/all.yml | 1 | ||||
-rw-r--r-- | ansible/install-inventory.ini | 3 | ||||
-rw-r--r-- | ansible/install.yaml | 59 | ||||
-rw-r--r-- | ansible/roles/configure_uwsgi/tasks/main.yml | 8 | ||||
-rw-r--r-- | ansible/roles/configure_uwsgi/templates/yardstick.ini.j2 | 2 | ||||
-rw-r--r-- | ansible/roles/download_samplevnfs/defaults/main.yml | 14 |
6 files changed, 72 insertions, 15 deletions
diff --git a/ansible/group_vars/all.yml b/ansible/group_vars/all.yml index 9f5293272..596560508 100644 --- a/ansible/group_vars/all.yml +++ b/ansible/group_vars/all.yml @@ -7,6 +7,7 @@ release: xenial normal_image_file: "{{ workspace }}/yardstick-image.img"
nsb_image_file: "{{ workspace }}/yardstick-nsb-image.img"
ubuntu_image_file: /tmp/workspace/yardstick/yardstick-trusty-server.raw
+installation_mode: "{{ INSTALLATION_MODE | default('baremetal') }}"
proxy_env:
PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/root/bin
http_proxy: "{{ lookup('env', 'http_proxy') }}"
diff --git a/ansible/install-inventory.ini b/ansible/install-inventory.ini index e15a2e96a..4e8629428 100644 --- a/ansible/install-inventory.ini +++ b/ansible/install-inventory.ini @@ -17,8 +17,9 @@ jumphost [all:vars] arch_amd64=amd64 arch_arm64=arm64 -inst_mode_container=container 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/"} # Uncomment credentials below if needed # ansible_user=root diff --git a/ansible/install.yaml b/ansible/install.yaml index fa8419b53..0800ee534 100644 --- a/ansible/install.yaml +++ b/ansible/install.yaml @@ -15,7 +15,6 @@ - hosts: jumphost become: yes vars: - installation_mode: "{{ INSTALLATION_MODE | default('baremetal') }}" yardstick_dir: "{{ YARDSTICK_DIR | default('/home/opnfv/repos/yardstick') }}" virtual_environment: "{{ VIRTUAL_ENVIRONMENT | default(False) }}" nsb_dir: "{{ NSB_DIR | default('/opt/nsb_bin/') }}" @@ -28,27 +27,30 @@ state: directory owner: root mode: 0777 + when: + - installation_mode != inst_mode_container_pull roles: - - add_repos_jumphost - - install_dependencies_jumphost - - install_yardstick - - configure_uwsgi - - configure_nginx - - configure_gui - - download_trex - - install_trex - - configure_rabbitmq + - { role: add_repos_jumphost, when: installation_mode != inst_mode_container_pull } + - { role: install_dependencies_jumphost, when: installation_mode != inst_mode_container_pull } + - { role: install_yardstick, when: installation_mode != inst_mode_container_pull } + - { role: configure_uwsgi, when: installation_mode != inst_mode_container_pull } + - { role: configure_nginx, when: installation_mode != inst_mode_container_pull } + - { 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_container_pull } + post_tasks: - service: name: nginx state: restarted - when: installation_mode != inst_mode_container + when: installation_mode == inst_mode_baremetal - shell: uwsgi -i /etc/yardstick/yardstick.ini - when: installation_mode != inst_mode_container + when: installation_mode == inst_mode_baremetal - name: Prepare baremetal and standalone servers @@ -106,6 +108,7 @@ include_role: name: build_yardstick_image tasks_from: pre_build.yml + when: installation_mode != inst_mode_container - hosts: chroot_image @@ -120,6 +123,7 @@ include_role: name: build_yardstick_image tasks_from: "cloudimg_modify_{{ img_property }}.yml" + when: installation_mode != inst_mode_container - hosts: jumphost @@ -130,3 +134,34 @@ include_role: name: build_yardstick_image tasks_from: post_build.yml + when: installation_mode != inst_mode_container + + +- name: start yardstick container on jumphost + hosts: jumphost + + tasks: + - include_role: + name: install_dependencies_jumphost + when: installation_mode == inst_mode_container_pull + + - include_role: + name: docker + when: installation_mode == inst_mode_container_pull + + - name: Start yardstick container + docker_container: + name: yardstick + pull: yes + recreate: yes + image: "{{ yardstick_docker_image|default('opnfv/yardstick:latest') }}" + state: started + restart_policy: always + privileged: yes + interactive: yes + volumes: + - "{{ openrc_file|default('/dev/null') }}:/etc/yardstick/openstack.creds:ro" + - /var/run/docker.sock:/var/run/docker.sock + - /opt:/opt + - /etc/localtime:/etc/localtime:ro + when: installation_mode == inst_mode_container_pull diff --git a/ansible/roles/configure_uwsgi/tasks/main.yml b/ansible/roles/configure_uwsgi/tasks/main.yml index 6a2244657..8822bda53 100644 --- a/ansible/roles/configure_uwsgi/tasks/main.yml +++ b/ansible/roles/configure_uwsgi/tasks/main.yml @@ -39,6 +39,14 @@ owner: root mode: 0644 +- set_fact: + uwsgi_log: "logto" + when: installation_mode == inst_mode_container + +- set_fact: + uwsgi_log: "daemonize" + when: installation_mode != inst_mode_container + - name: Create the UWSGI config file template: src: yardstick.ini.j2 diff --git a/ansible/roles/configure_uwsgi/templates/yardstick.ini.j2 b/ansible/roles/configure_uwsgi/templates/yardstick.ini.j2 index 495febb19..1890f16f9 100644 --- a/ansible/roles/configure_uwsgi/templates/yardstick.ini.j2 +++ b/ansible/roles/configure_uwsgi/templates/yardstick.ini.j2 @@ -12,7 +12,7 @@ chmod-socket = 666 callable = app_wrapper enable-threads = true close-on-exec = 1 -logto = {{ log_dir }}/uwsgi.log +{{ uwsgi_log }} = {{ log_dir }}/uwsgi.log socket = {{ socket_file }} {# If virtual environment, we need to add: virtualenv = <virtual_env> #} diff --git a/ansible/roles/download_samplevnfs/defaults/main.yml b/ansible/roles/download_samplevnfs/defaults/main.yml index c5e880e57..104f594f5 100644 --- a/ansible/roles/download_samplevnfs/defaults/main.yml +++ b/ansible/roles/download_samplevnfs/defaults/main.yml @@ -1,4 +1,16 @@ --- +# samplevnf_version must be a valid version accepted by "git checkout" +# It can be either: +# - a branch name: fetch branch latest commits, as of installation time +# - a tag name: frozen and reproducible, from stable branches, or +# - a commit id: frozen and reproducible, from any branch +# Some examples: +# - branch name: "master", "stable/gambia", "stable/fraser" +# - tag name: "opnfv-6.2.0" +# - commit id: "3afd384b7e68a3cd29f4d2cdf39785f8441d0b6f" +# Please refer to https://git.opnfv.org/samplevnf for possible values +# beyond the one specified below + samplevnf_url: "https://git.opnfv.org/samplevnf" samplevnf_dest: "{{ clone_dest }}/samplevnf" -samplevnf_version: "stable/fraser" +samplevnf_version: "3afd384b7e68a3cd29f4d2cdf39785f8441d0b6f" |