diff options
Diffstat (limited to 'deploy/adapters/ansible/roles')
8 files changed, 134 insertions, 90 deletions
diff --git a/deploy/adapters/ansible/roles/config-osa/files/requirements_absolute_requirements.txt b/deploy/adapters/ansible/roles/config-osa/files/requirements_absolute_requirements.txt index 56067a6c..c850b564 100644 --- a/deploy/adapters/ansible/roles/config-osa/files/requirements_absolute_requirements.txt +++ b/deploy/adapters/ansible/roles/config-osa/files/requirements_absolute_requirements.txt @@ -61,6 +61,7 @@ gnocchiclient==3.0.0 google_api_python_client==1.6.1 greenlet==0.4.11 heat==8.0.2.dev4 +heat_translator==0.7.0 horizon==11.0.2.dev21 httplib2==0.9.2 idna==2.2 @@ -102,6 +103,7 @@ ndg_httpsclient==0.4.2 netaddr==0.7.19 netifaces==0.10.5 networking_calico==1.3.2.dev3 +networking_sfc==4.0.0 networkx==1.11 neutron==10.0.2.dev45 neutron_dynamic_routing==10.0.1.dev8 @@ -137,6 +139,7 @@ oslo.reports==1.17.0 oslo.rootwrap==5.4.0 oslo.serialization==2.16.0 oslo.service==1.19.0 +oslosphinx==4.10.0 oslo.utils==3.22.0 oslo.versionedobjects==1.21.0 oslo.vmware==2.17.0 @@ -210,6 +213,7 @@ python_saharaclient==1.1.0 python_senlinclient==1.2.0 python_subunit==1.2.0 python_swiftclient==3.3.0 +python_tackerclient==0.9.0 python_troveclient==2.8.0 python_watcherclient==1.0.0 python_zaqarclient==1.4.0 @@ -251,6 +255,7 @@ sqlparse==0.2.2 statsd==3.2.1 stevedore==1.20.0 suds_jurko==0.6 +tacker==0.7.1.dev7 taskflow==2.9.0 tempest==14.0.1.dev142 tempita==0.5.2 @@ -259,6 +264,7 @@ testrepository==0.0.20 testtools==2.2.0 tinyrpc==0.5 tooz==1.48.0 +tosca_parser==0.7.0 traceback2==1.4.0 trollius==2.1 trove_dashboard==8.0.1.dev1 diff --git a/deploy/adapters/ansible/roles/config-osa/tasks/main.yml b/deploy/adapters/ansible/roles/config-osa/tasks/main.yml index d2ce5c38..d96a83da 100755 --- a/deploy/adapters/ansible/roles/config-osa/tasks/main.yml +++ b/deploy/adapters/ansible/roles/config-osa/tasks/main.yml @@ -235,24 +235,30 @@ src: user_ceph.yml dest: /etc/openstack_deploy/user_ceph.yml when: - - "{{ hostvars[inventory_hostname]['groups']['ceph_mon'] | length > 0 }}" - - "{{ hostvars[inventory_hostname]['groups']['ceph_osd'] | length > 0 }}" + - hostvars[inventory_hostname]['groups']['ceph_mon'] is defined and + "{{ hostvars[inventory_hostname]['groups']['ceph_mon'] | length > 0 }}" + - hostvars[inventory_hostname]['groups']['ceph_osd'] is defined and + "{{ hostvars[inventory_hostname]['groups']['ceph_osd'] | length > 0 }}" - name: render ceph.yml.j2 template: src: ceph.yml.j2 dest: /etc/openstack_deploy/conf.d/ceph.yml when: - - "{{ hostvars[inventory_hostname]['groups']['ceph_mon'] | length > 0 }}" - - "{{ hostvars[inventory_hostname]['groups']['ceph_osd'] | length > 0 }}" + - hostvars[inventory_hostname]['groups']['ceph_mon'] is defined and + "{{ hostvars[inventory_hostname]['groups']['ceph_mon'] | length > 0 }}" + - hostvars[inventory_hostname]['groups']['ceph_osd'] is defined and + "{{ hostvars[inventory_hostname]['groups']['ceph_osd'] | length > 0 }}" - name: render user_variables_ceph.yml.j2 template: src: user_variables_ceph.yml.j2 dest: /etc/openstack_deploy/user_variables_ceph.yml when: - - "{{ hostvars[inventory_hostname]['groups']['ceph_mon'] | length > 0 }}" - - "{{ hostvars[inventory_hostname]['groups']['ceph_osd'] | length > 0 }}" + - hostvars[inventory_hostname]['groups']['ceph_mon'] is defined and + "{{ hostvars[inventory_hostname]['groups']['ceph_mon'] | length > 0 }}" + - hostvars[inventory_hostname]['groups']['ceph_osd'] is defined and + "{{ hostvars[inventory_hostname]['groups']['ceph_osd'] | length > 0 }}" - name: adapt no ha scenario include: noha.yml diff --git a/deploy/adapters/ansible/roles/post-osa/tasks/Ubuntu.yml b/deploy/adapters/ansible/roles/post-osa/tasks/Ubuntu.yml new file mode 100755 index 00000000..5d53d234 --- /dev/null +++ b/deploy/adapters/ansible/roles/post-osa/tasks/Ubuntu.yml @@ -0,0 +1,23 @@ +--- +- name: remove bridge ubuntu + template: + src: compute.j2 + dest: /etc/network/interfaces + notify: + - restart network service + +- name: fix mapping in compute + shell: | + {% set compute_mappings = [] %} + {% for key, value in compu_prv_mappings.iteritems() %} + {% set mapping = key + ":" + value["bridge"] %} + {% set _ = compute_mappings.append(mapping) %} + {% endfor %} + {% if compute_mappings | length != 0 %} + sed -i "s/^\(bridge_mappings\).*/\1 = {{ ','.join(compute_mappings) }}/g" \ + /etc/neutron/plugins/ml2/openvswitch_agent.ini + {% else %} + sed -i "/bridge_mappings/d" /etc/neutron/plugins/ml2/openvswitch_agent.ini + {% endif %} + +- meta: flush_handlers diff --git a/deploy/adapters/ansible/roles/post-osa/tasks/main.yml b/deploy/adapters/ansible/roles/post-osa/tasks/main.yml index cf157d74..c48a5d1a 100644 --- a/deploy/adapters/ansible/roles/post-osa/tasks/main.yml +++ b/deploy/adapters/ansible/roles/post-osa/tasks/main.yml @@ -1,12 +1,10 @@ +############################################################################# +# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others. +# +# 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: remove bridge ubuntu - template: - src: compute.j2 - dest: /etc/network/interfaces - notify: - - restart network service - when: ansible_distribution == 'Ubuntu' - -# TODO -# - name: remove bridge centos -# when: ansible_distribution == 'CentOS' +- include: "{{ ansible_distribution }}.yml" diff --git a/deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml b/deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml index 62edd34b..b7a8fbcb 100644 --- a/deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml +++ b/deploy/adapters/ansible/roles/setup-openvswitch/tasks/compute.yml @@ -22,22 +22,6 @@ notify: - restart neutron-openvswitch-agent -- name: fix mapping in compute - shell: | - {% set compute_mappings = [] %} - {% for key, value in compu_prv_mappings.iteritems() %} - {% set mapping = key + ":" + value["bridge"] %} - {% set _ = compute_mappings.append(mapping) %} - {% endfor %} - {% if compute_mappings | length != 0 %} - sed -i "s/^\(bridge_mappings\).*/\1 = {{ ','.join(compute_mappings) }}/g" \ - /etc/neutron/plugins/ml2/openvswitch_agent.ini - {% else %} - sed -i "/bridge_mappings/d" /etc/neutron/plugins/ml2/openvswitch_agent.ini - {% endif %} - notify: - - restart neutron-openvswitch-agent - - name: create compute bridges openvswitch_bridge: bridge: "{{ item['name'] }}" diff --git a/deploy/adapters/ansible/roles/storage/tasks/ceph.yml b/deploy/adapters/ansible/roles/storage/tasks/ceph.yml index e024c671..50476c7b 100644 --- a/deploy/adapters/ansible/roles/storage/tasks/ceph.yml +++ b/deploy/adapters/ansible/roles/storage/tasks/ceph.yml @@ -43,3 +43,10 @@ line: "losetup -f /var/{{ item }}.img" insertbefore: "{{ rc_local_insert_before }}" with_items: "{{ ceph_osd_images }}" + +- name: Create ceph partitions at boot time + lineinfile: + dest: "{{ rc_local }}" + line: "partprobe -s {{ item }}" + insertbefore: "{{ rc_local_insert_before }}" + with_items: "{{ ceph_loopback.results | map(attribute='stdout') | list }}" diff --git a/deploy/adapters/ansible/roles/storage/tasks/main.yml b/deploy/adapters/ansible/roles/storage/tasks/main.yml index 3d9635cc..e04019ae 100755 --- a/deploy/adapters/ansible/roles/storage/tasks/main.yml +++ b/deploy/adapters/ansible/roles/storage/tasks/main.yml @@ -7,69 +7,21 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## --- -- name: check if physical device exists - stat: path={{ physical_device }} - register: status - tags: - - storage - -- name: load loop.yml - include: loop.yml - when: status.stat.exists == False or status.stat.isblk == False - tags: - - storage - -- name: load real.yml - include: real.yml - when: status.stat.exists == True and status.stat.isblk == True - tags: - - storage - -- name: make setup_storage directory - file: path=/opt/setup_storage state=directory mode=0755 - tags: - - storage - -- name: copy setup storage scripts - copy: src={{ item }} dest=/opt/setup_storage mode=0755 - with_items: - - losetup.sh - tags: - - storage - -- name: set autostart file - copy: src=storage dest=/etc/init.d/storage mode=0755 - tags: - - storage - -- name: set autostart file for centos - copy: - src: storage.service - dest: /usr/lib/systemd/system/storage.service - mode: 0755 - when: ansible_os_family == "RedHat" - tags: - - storage - -- name: add to boot scripts - shell: update-rc.d storage defaults - when: ansible_os_family == "Debian" - tags: - - storage - -- name: add to boot scripts - shell: | - chkconfig --add storage; - chkconfig --level 2345 storage on; - when: ansible_os_family == 'RedHat' +- name: load storage.yml + include: storage.yml + when: + - hostvars[inventory_hostname]['groups']['ceph_mon'] is not defined + - hostvars[inventory_hostname]['groups']['ceph_osd'] is not defined tags: - storage - name: load ceph.yml include: ceph.yml when: - - "{{ hostvars[inventory_hostname]['groups']['ceph_mon'] |length > 0 }}" - - "{{ hostvars[inventory_hostname]['groups']['ceph_osd'] | length > 0 }}" + - hostvars[inventory_hostname]['groups']['ceph_mon'] is defined and + "{{ hostvars[inventory_hostname]['groups']['ceph_mon'] | length > 0 }}" + - hostvars[inventory_hostname]['groups']['ceph_osd'] is defined and + "{{ hostvars[inventory_hostname]['groups']['ceph_osd'] | length > 0 }}" tags: - storage diff --git a/deploy/adapters/ansible/roles/storage/tasks/storage.yml b/deploy/adapters/ansible/roles/storage/tasks/storage.yml new file mode 100755 index 00000000..b054be9e --- /dev/null +++ b/deploy/adapters/ansible/roles/storage/tasks/storage.yml @@ -0,0 +1,68 @@ +############################################################################## +# Copyright (c) 2016 HUAWEI TECHNOLOGIES CO.,LTD and others. +# +# 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 physical device exists + stat: path={{ physical_device }} + register: status + tags: + - storage + +- name: load loop.yml + include: loop.yml + when: status.stat.exists == False or status.stat.isblk == False + tags: + - storage + +- name: load real.yml + include: real.yml + when: status.stat.exists == True and status.stat.isblk == True + tags: + - storage + +- name: make setup_storage directory + file: path=/opt/setup_storage state=directory mode=0755 + tags: + - storage + +- name: copy setup storage scripts + copy: src={{ item }} dest=/opt/setup_storage mode=0755 + with_items: + - losetup.sh + tags: + - storage + +- name: set autostart file + copy: src=storage dest=/etc/init.d/storage mode=0755 + tags: + - storage + +- name: set autostart file for centos + copy: + src: storage.service + dest: /usr/lib/systemd/system/storage.service + mode: 0755 + when: ansible_os_family == "RedHat" + tags: + - storage + +- name: add to boot scripts + shell: update-rc.d storage defaults + when: ansible_os_family == "Debian" + tags: + - storage + +- name: add to boot scripts + shell: | + chkconfig --add storage; + chkconfig --level 2345 storage on; + when: ansible_os_family == 'RedHat' + tags: + - storage + +- meta: flush_handlers |