From f7e288dec1de77be635c5024729fb97de02641ba Mon Sep 17 00:00:00 2001 From: Fatih Degirmenci Date: Wed, 28 Feb 2018 11:37:52 +0000 Subject: functest: Move run-functest.sh execution out of ansible Ansible throws out the log at the end of task execution which makes it hard to read. This change renames the role to prepare-functest and then takes the script execution out which will be executed by releng/jjb/xci/xci-run-functest.sh. Change-Id: Icf399ce4f04357814ed7109cd11113a9decddc50 Signed-off-by: Fatih Degirmenci --- xci/playbooks/prepare-functest.yml | 20 +++++++++++ xci/playbooks/roles/.gitignore | 2 +- .../roles/prepare-functest/defaults/main.yml | 14 ++++++++ .../roles/prepare-functest/tasks/main.yml | 36 ++++++++++++++++++++ .../roles/prepare-functest/templates/env.j2 | 7 ++++ .../prepare-functest/templates/run-functest.sh.j2 | 21 ++++++++++++ xci/playbooks/roles/run-functest/defaults/main.yml | 14 -------- xci/playbooks/roles/run-functest/tasks/main.yml | 39 ---------------------- xci/playbooks/roles/run-functest/templates/env.j2 | 7 ---- .../run-functest/templates/run-functest.sh.j2 | 21 ------------ xci/playbooks/run-functest.yml | 20 ----------- 11 files changed, 99 insertions(+), 102 deletions(-) create mode 100644 xci/playbooks/prepare-functest.yml create mode 100644 xci/playbooks/roles/prepare-functest/defaults/main.yml create mode 100644 xci/playbooks/roles/prepare-functest/tasks/main.yml create mode 100644 xci/playbooks/roles/prepare-functest/templates/env.j2 create mode 100644 xci/playbooks/roles/prepare-functest/templates/run-functest.sh.j2 delete mode 100644 xci/playbooks/roles/run-functest/defaults/main.yml delete mode 100644 xci/playbooks/roles/run-functest/tasks/main.yml delete mode 100644 xci/playbooks/roles/run-functest/templates/env.j2 delete mode 100644 xci/playbooks/roles/run-functest/templates/run-functest.sh.j2 delete mode 100644 xci/playbooks/run-functest.yml diff --git a/xci/playbooks/prepare-functest.yml b/xci/playbooks/prepare-functest.yml new file mode 100644 index 00000000..6d5b01c6 --- /dev/null +++ b/xci/playbooks/prepare-functest.yml @@ -0,0 +1,20 @@ +--- +# Copyright 2017, SUSE LINUX GmbH. +# +# 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: Prepare the environment for functest + hosts: opnfv + user: root + roles: + - role: "prepare-functest" diff --git a/xci/playbooks/roles/.gitignore b/xci/playbooks/roles/.gitignore index 5e72578c..e0b47770 100644 --- a/xci/playbooks/roles/.gitignore +++ b/xci/playbooks/roles/.gitignore @@ -3,6 +3,6 @@ !clone-repository/ !configure-network/ !configure-nfs/ -!run-functest/ +!prepare-functest/ !remote-folders/ !synchronize-time/ diff --git a/xci/playbooks/roles/prepare-functest/defaults/main.yml b/xci/playbooks/roles/prepare-functest/defaults/main.yml new file mode 100644 index 00000000..a3638302 --- /dev/null +++ b/xci/playbooks/roles/prepare-functest/defaults/main.yml @@ -0,0 +1,14 @@ +--- +# Gateway parameters +gateway_ip: "10.10.10.1" +gateway_ip_mask: "10.10.10.1/24" +broadcast_ip: "10.10.10.255" +gateway_interface: "br-vlan" + +# Network parameters +external_network: "ext-net" + +# Subnet parameters +subnet_name: "ext-subnet" +allocation_pool: "start=10.10.10.5,end=10.10.10.254" +subnet_cidr: "10.10.10.0/24" diff --git a/xci/playbooks/roles/prepare-functest/tasks/main.yml b/xci/playbooks/roles/prepare-functest/tasks/main.yml new file mode 100644 index 00000000..243358fc --- /dev/null +++ b/xci/playbooks/roles/prepare-functest/tasks/main.yml @@ -0,0 +1,36 @@ +--- +# SPDX-license-identifier: Apache-2.0 +############################################################################## +# Copyright (c) 2017 SUSE Linux GmbH +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +- name: check if the gateway was already set + shell: "ip a | grep {{ gateway_ip }}" + register: gateway_ip_result + ignore_errors: True + +- name: add public network gateway + command: "ip addr add {{ gateway_ip_mask }} brd {{ broadcast_ip }} dev {{ gateway_interface }}" + when: gateway_ip_result|failed + +- name: prepare environment file for functest + template: + src: env.j2 + dest: /root/env + mode: 0755 + +- name: prepare the script to create networks and run functest + template: + src: run-functest.sh.j2 + dest: /root/run-functest.sh + mode: 0755 + +- name: install required packages + package: + name: "{{ item }}" + state: present + with_items: + - wget diff --git a/xci/playbooks/roles/prepare-functest/templates/env.j2 b/xci/playbooks/roles/prepare-functest/templates/env.j2 new file mode 100644 index 00000000..43a581bd --- /dev/null +++ b/xci/playbooks/roles/prepare-functest/templates/env.j2 @@ -0,0 +1,7 @@ +INSTALLER_TYPE=osa +INSTALLER_IP=192.168.122.2 +EXTERNAL_NETWORK={{ external_network }} +DEPLOY_SCENARIO="os-nosdn-nofeature-noha" +CI_LOOP=daily +TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results +ENERGY_RECORDER_API_URL=http://energy.opnfv.fr/resources diff --git a/xci/playbooks/roles/prepare-functest/templates/run-functest.sh.j2 b/xci/playbooks/roles/prepare-functest/templates/run-functest.sh.j2 new file mode 100644 index 00000000..016df8ef --- /dev/null +++ b/xci/playbooks/roles/prepare-functest/templates/run-functest.sh.j2 @@ -0,0 +1,21 @@ +#!/bin/bash + +source /root/openrc + +openstack --insecure network create --external \ + --provider-physical-network flat \ + --provider-network-type flat {{ external_network }} + +openstack --insecure subnet create --network {{ external_network }} \ + --allocation-pool {{ allocation_pool }} \ + --subnet-range {{ subnet_cidr }} --gateway {{ gateway_ip }} \ + --no-dhcp {{ subnet_name }} + +mkdir ~/results/ +mkdir ~/images && cd ~/images && wget http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img && cd ~ + +sudo docker run --env-file env \ + -v $(pwd)/openrc:/home/opnfv/functest/conf/env_file \ + -v $(pwd)/images:/home/opnfv/functest/images \ + -v $(pwd)/results:/home/opnfv/functest/results \ + opnfv/functest-healthcheck diff --git a/xci/playbooks/roles/run-functest/defaults/main.yml b/xci/playbooks/roles/run-functest/defaults/main.yml deleted file mode 100644 index a3638302..00000000 --- a/xci/playbooks/roles/run-functest/defaults/main.yml +++ /dev/null @@ -1,14 +0,0 @@ ---- -# Gateway parameters -gateway_ip: "10.10.10.1" -gateway_ip_mask: "10.10.10.1/24" -broadcast_ip: "10.10.10.255" -gateway_interface: "br-vlan" - -# Network parameters -external_network: "ext-net" - -# Subnet parameters -subnet_name: "ext-subnet" -allocation_pool: "start=10.10.10.5,end=10.10.10.254" -subnet_cidr: "10.10.10.0/24" diff --git a/xci/playbooks/roles/run-functest/tasks/main.yml b/xci/playbooks/roles/run-functest/tasks/main.yml deleted file mode 100644 index 3dc8e0bb..00000000 --- a/xci/playbooks/roles/run-functest/tasks/main.yml +++ /dev/null @@ -1,39 +0,0 @@ ---- -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2017 SUSE Linux GmbH -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## -- name: check if the gateway was already set - shell: "ip a | grep {{ gateway_ip }}" - register: gateway_ip_result - ignore_errors: True - -- name: add public network gateway - command: "ip addr add {{ gateway_ip_mask }} brd {{ broadcast_ip }} dev {{ gateway_interface }}" - when: gateway_ip_result|failed - -- name: prepare environment file for functest - template: - src: env.j2 - dest: /root/env - mode: 0755 - -- name: prepare the script to create networks and run functest - template: - src: run-functest.sh.j2 - dest: /root/run-functest.sh - mode: 0755 - -- name: install required packages - package: - name: "{{ item }}" - state: present - with_items: - - wget - -- name: execute the script - shell: "/root/run-functest.sh" diff --git a/xci/playbooks/roles/run-functest/templates/env.j2 b/xci/playbooks/roles/run-functest/templates/env.j2 deleted file mode 100644 index 43a581bd..00000000 --- a/xci/playbooks/roles/run-functest/templates/env.j2 +++ /dev/null @@ -1,7 +0,0 @@ -INSTALLER_TYPE=osa -INSTALLER_IP=192.168.122.2 -EXTERNAL_NETWORK={{ external_network }} -DEPLOY_SCENARIO="os-nosdn-nofeature-noha" -CI_LOOP=daily -TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results -ENERGY_RECORDER_API_URL=http://energy.opnfv.fr/resources diff --git a/xci/playbooks/roles/run-functest/templates/run-functest.sh.j2 b/xci/playbooks/roles/run-functest/templates/run-functest.sh.j2 deleted file mode 100644 index 016df8ef..00000000 --- a/xci/playbooks/roles/run-functest/templates/run-functest.sh.j2 +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash - -source /root/openrc - -openstack --insecure network create --external \ - --provider-physical-network flat \ - --provider-network-type flat {{ external_network }} - -openstack --insecure subnet create --network {{ external_network }} \ - --allocation-pool {{ allocation_pool }} \ - --subnet-range {{ subnet_cidr }} --gateway {{ gateway_ip }} \ - --no-dhcp {{ subnet_name }} - -mkdir ~/results/ -mkdir ~/images && cd ~/images && wget http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img && cd ~ - -sudo docker run --env-file env \ - -v $(pwd)/openrc:/home/opnfv/functest/conf/env_file \ - -v $(pwd)/images:/home/opnfv/functest/images \ - -v $(pwd)/results:/home/opnfv/functest/results \ - opnfv/functest-healthcheck diff --git a/xci/playbooks/run-functest.yml b/xci/playbooks/run-functest.yml deleted file mode 100644 index 8b3b29a1..00000000 --- a/xci/playbooks/run-functest.yml +++ /dev/null @@ -1,20 +0,0 @@ ---- -# Copyright 2017, SUSE LINUX GmbH. -# -# 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: Prepare the environment for functest and run tests - hosts: opnfv - user: root - roles: - - role: "run-functest" -- cgit 1.2.3-korg