From dac24618c01d3dcb1f867768f57ff06029882c37 Mon Sep 17 00:00:00 2001 From: kevin Date: Tue, 7 Jul 2015 09:26:04 -0500 Subject: [PATCH] Updated master for new dev work - Liberty-2 Update all branches to Liberty-2. Also, as of Change ID I3823900bc5aaf7757c37edb804027cf4d9c757ab the new neutron releases have a new db upgrade and stamp process in order for these version to be rev'd we need to incorporate those change. As such the neutron_db_setup.yml has been updated along with the neutron `neutron_db_revision` default variable. Change-Id: Icfb75d377498e288e67be1a8bc049b42d8aa57b1 --- .../repo_packages/openstack_clients.yml | 18 +++---- .../repo_packages/openstack_other.yml | 14 ++--- .../repo_packages/openstack_services.yml | 27 +++++----- playbooks/roles/os_neutron/defaults/main.yml | 2 +- .../os_neutron/tasks/neutron_db_setup.yml | 54 ++++++++++++++----- 5 files changed, 68 insertions(+), 47 deletions(-) diff --git a/playbooks/defaults/repo_packages/openstack_clients.yml b/playbooks/defaults/repo_packages/openstack_clients.yml index d48f058982..922b95f6fa 100644 --- a/playbooks/defaults/repo_packages/openstack_clients.yml +++ b/playbooks/defaults/repo_packages/openstack_clients.yml @@ -26,53 +26,53 @@ ## Ceilometer client ceilometerclient_git_repo: https://git.openstack.org/openstack/python-ceilometerclient -ceilometerclient_git_install_branch: 7e4d2edc970a555b982d7081a95c6a1ada6d58de # HEAD of "master" as of 22.06.2015 +ceilometerclient_git_install_branch: 803c59fbc7682dbfbd8f32c191c3e5e45d9fb8ca # HEAD of "master" as of 06.08.2015 ceilometerclient_git_dest: "/opt/ceilometerclient_{{ ceilometerclient_git_install_branch | replace('/', '_') }}" ## Cinder client cinderclient_git_repo: https://git.openstack.org/openstack/python-cinderclient -cinderclient_git_install_branch: f32684747f39d6723f990ee3171e507466066e36 # HEAD of "master" as of 22.06.2015 +cinderclient_git_install_branch: 03542ee65a5e818a5d908a85a6a9eba21ef63b53 # HEAD of "master" as of 06.08.2015 cinderclient_git_dest: "/opt/cinderclient_{{ cinderclient_git_install_branch | replace('/', '_') }}" ## Glance client glanceclient_git_repo: https://git.openstack.org/openstack/python-glanceclient -glanceclient_git_install_branch: cc38f51086b930a05c0abecf6c9e00fdf5c294f6 # HEAD of "master" as of 22.06.2015 +glanceclient_git_install_branch: 8af084d5a3c8e48fbbae4015c10141b90b491b00 # HEAD of "master" as of 06.08.2015 glanceclient_git_dest: "/opt/glanceclient_{{ glanceclient_git_install_branch | replace('/', '_') }}" ## Heat client heatclient_git_repo: https://git.openstack.org/openstack/python-heatclient -heatclient_git_install_branch: 4b193e11712847e9b5a80a507124f5d22749ae8d # HEAD of "master" as of 22.06.2015 +heatclient_git_install_branch: 142d0996ec9ef086b90fee7356c092d8665c679d # HEAD of "master" as of 06.08.2015 heatclient_git_dest: "/opt/heatclient_{{ heatclient_git_install_branch | replace('/', '_') }}" # Keystone client keystoneclient_git_repo: https://git.openstack.org/openstack/python-keystoneclient -keystoneclient_git_install_branch: d238cc9af4927d1092de207db978536d712af129 # HEAD of "master" as of 22.06.2015 +keystoneclient_git_install_branch: eae8e83f5a7a170b98ef2d74a4ffd9eac7cc47ba # HEAD of "master" as of 06.08.2015 keystoneclient_git_dest: "/opt/keystoneclient_{{ keystoneclient_git_install_branch | replace('/', '_') }}" ## Neutron client neutronclient_git_repo: https://git.openstack.org/openstack/python-neutronclient -neutronclient_git_install_branch: dcb7401a04c96aeb7c00a456b1ba0c77134a0a25 # HEAD of "master" as of 22.06.2015 +neutronclient_git_install_branch: 6281aba974de947b46e05dd926009a53c14d53df # HEAD of "master" as of 06.08.2015 neutronclient_git_dest: "/opt/neutronclient_{{ neutronclient_git_install_branch | replace('/', '_') }}" ## Nova client novaclient_git_repo: https://git.openstack.org/openstack/python-novaclient -novaclient_git_install_branch: 3c2ff0faad8c84777ffe7d9946a1bc4486116084 # HEAD of "master" as of 22.06.2015 +novaclient_git_install_branch: 7c18da6e644634181d0d6c33d9453fcba28c41ee # HEAD of "master" as of 06.08.2015 novaclient_git_dest: "/opt/novaclient_{{ novaclient_git_install_branch | replace('/', '_') }}" ## OpenStack client openstackclient_git_repo: https://git.openstack.org/openstack/python-openstackclient -openstackclient_git_install_branch: 2d6bc8f4c38dbf997e3e71119f13f0328b4a8669 # HEAD of "master" as of 22.06.2015 +openstackclient_git_install_branch: d87403a7bf868d96c6c3185a59ac9bac4ba264fa # HEAD of "master" as of 06.08.2015 openstackclient_git_dest: "/opt/openstackclient_{{ openstackclient_git_install_branch | replace('/', '_') }}" ## Swift client swiftclient_git_repo: https://git.openstack.org/openstack/python-swiftclient -swiftclient_git_install_branch: 7c716997a8ede3f98741709b0594340df9849a76 # HEAD of "master" as of 22.06.2015 +swiftclient_git_install_branch: a056f1b3742812a2c861a0d01678dfed3b0087e4 # HEAD of "master" as of 06.08.2015 swiftclient_git_dest: "/opt/swiftclient_{{ swiftclient_git_install_branch | replace('/', '_') }}" diff --git a/playbooks/defaults/repo_packages/openstack_other.yml b/playbooks/defaults/repo_packages/openstack_other.yml index 72b9b19c67..4708d935d8 100644 --- a/playbooks/defaults/repo_packages/openstack_other.yml +++ b/playbooks/defaults/repo_packages/openstack_other.yml @@ -24,29 +24,23 @@ ## * All items with this file should be separated by `name_` note that the name of the ## package should be one long name with no additional `_` separating it. + ## Glance store library glancestore_git_repo: https://git.openstack.org/openstack/glance_store -glancestore_git_install_branch: 0ae8f4102e7aeebb75fe5f65c02ed9bfa76cebb5 # HEAD of "master" as of 22.06.2015 +glancestore_git_install_branch: 29a84f7ced03ece1eb5b2128593dc84f8f95bec1 # HEAD of "master" as of 29.07.2015 glancestore_git_dest: "/opt/glancestore_{{ glancestore_git_repo | replace('/', '_') }}" ## Global Requirements requirements_git_repo: https://git.openstack.org/openstack/requirements -requirements_git_install_branch: 6100411c312cfa63526f5dada31318d7f2a605ad # HEAD of "master" as of 22.06.2015 +requirements_git_install_branch: bdd44d169d0c1928f84167fee37dd6753784cdf4 # HEAD of "master" as of 29.07.2015 requirements_git_dest: "/opt/requirements_{{ requirements_git_install_branch | replace('/', '_') }}" -## Tempest Library -tempestlib_git_repo: https://git.openstack.org/openstack/tempest-lib -tempestlib_git_install_branch: 061a2efc71ccce9024f86517edccdb4c82d416bc # HEAD of "master" as of 22.06.2015 -tempestlib_git_install_fragments: "yaprtignorerequirements=true" -tempestlib_git_dest: "/opt/tempest-lib_{{ requirements_git_install_branch | replace('/', '_') }}" - - ## Cryptography # NOTE(sigmavirus24): Fix this when cryptography 1.0 is released and # global-requirements.txt allows for it. See also: # https://github.com/pyca/cryptography/issues/1868 cryptography_git_repo: https://github.com/pyca/cryptography -cryptography_git_install_branch: 02a299d8b2d70e4e145fbd420787ea35873d96f7 # HEAD of "master" as of 22.06.2015 +cryptography_git_install_branch: 172d6846d78e34c005d2c679cf53dd79a3e54d8e # HEAD of "master" as of 27.07.2015 cryptography_git_dest: "/opt/cryptography_{{ cryptography_git_install_branch | replace('/', '_') }}" diff --git a/playbooks/defaults/repo_packages/openstack_services.yml b/playbooks/defaults/repo_packages/openstack_services.yml index 1e5e93b609..4ee3cecefc 100644 --- a/playbooks/defaults/repo_packages/openstack_services.yml +++ b/playbooks/defaults/repo_packages/openstack_services.yml @@ -30,72 +30,71 @@ ## Ceilometer service ceilometer_git_repo: https://github.com/openstack/ceilometer -ceilometer_git_install_branch: d9b04cd19c5ab853f8dafc67a7d493b01017b103 # HEAD of "master" as of 25.06.2015 +ceilometer_git_install_branch: 5.0.0.0b2 # liberty-2 ceilometer_git_dest: "/opt/ceilometer_{{ceilometer_git_install_branch | replace('/', '_') }}" ## Cinder service cinder_git_repo: https://git.openstack.org/openstack/cinder -cinder_git_install_branch: 648d544621ed101e6f5581a201efea585a08935a # HEAD of "master" as of 22.06.2015 +cinder_git_install_branch: 7.0.0.0b2 # liberty-2 cinder_git_dest: "/opt/cinder_{{ cinder_git_install_branch | replace('/', '_') }}" ## Glance service glance_git_repo: https://git.openstack.org/openstack/glance -glance_git_install_branch: 33fb88108b90e7841e5ac12054214ab229dacd2d # HEAD of "master" as of 22.06.2015 +glance_git_install_branch: 11.0.0.0b2 # liberty-2 glance_git_dest: "/opt/glance_{{ glance_git_install_branch | replace('/', '_') }}" ## Heat service heat_git_repo: https://git.openstack.org/openstack/heat -heat_git_install_branch: c512e0fb878ecd519fac19df5d35fb8d83590c92 # HEAD of "master" as of 22.06.2015 +heat_git_install_branch: 5.0.0.0b2 # liberty-2 heat_git_dest: "/opt/heat_{{ heat_git_install_branch | replace('/', '_') }}" ## Horizon service horizon_git_repo: https://git.openstack.org/openstack/horizon -horizon_git_install_branch: 6b18a22b51aa991ed1bf45871b98e5a20362778b # HEAD of "master" as of 22.06.2015 +horizon_git_install_branch: 8.0.0.0b2 # liberty-2 horizon_git_dest: "/opt/horizon_{{ horizon_git_install_branch | replace('/', '_') }}" ## Keystone service keystone_git_repo: https://git.openstack.org/openstack/keystone -keystone_git_install_branch: a7ca13b687dd284f0980d768b11a3d1b52b4106e # HEAD of "master" as of 22.06.2015 +keystone_git_install_branch: 8.0.0.0b2 # liberty-2 keystone_git_dest: "/opt/keystone_{{ keystone_git_install_branch | replace('/', '_') }}" ## Neutron service neutron_git_repo: https://git.openstack.org/openstack/neutron -neutron_git_install_branch: 3c6ab9e360e6f29b844e53304d0300714b1d52f9 # HEAD of "master" as of 22.06.2015 +neutron_git_install_branch: 7.0.0.0b2 # liberty-2 neutron_git_dest: "/opt/neutron_{{ neutron_git_install_branch | replace('/', '_') }}" neutron_lbaas_git_repo: https://git.openstack.org/openstack/neutron-lbaas -neutron_lbaas_git_install_branch: d7bbbf4ce85e923e167ab06004f8cf51055f87ba # HEAD of "master" as of 22.06.2015 +neutron_lbaas_git_install_branch: 7.0.0.0b2 # liberty-2 neutron_lbaas_git_dest: "/opt/neutron_lbaas_{{ neutron_lbaas_git_install_branch | replace('/', '_') }}" neutron_vpnaas_git_repo: https://git.openstack.org/openstack/neutron-vpnaas -neutron_vpnaas_git_install_branch: f8b7d3168b03efd0fe4fd81f22a98763bae60890 # HEAD of "master" as of 22.06.2015 +neutron_vpnaas_git_install_branch: 7.0.0.0b2 # liberty-2 neutron_vpnaas_git_dest: "/opt/neutron_vpnaas_{{ neutron_vpnaas_git_install_branch | replace('/', '_') }}" neutron_fwaas_git_repo: https://git.openstack.org/openstack/neutron-fwaas -neutron_fwaas_git_install_branch: b1853c01264cef9893cc86192f198f6ab62f4ecd # HEAD of "master" as of 22.06.2015 +neutron_fwaas_git_install_branch: 7.0.0.0b2 # liberty-2 neutron_fwaas_git_dest: "/opt/neutron_fwaas_{{ neutron_fwaas_git_install_branch | replace('/', '_') }}" ## Nova service nova_git_repo: https://git.openstack.org/openstack/nova -nova_git_install_branch: a4f4be370be06cfc9aa3ed30d2445277e832376f # HEAD of "master" as of 22.06.2015 +nova_git_install_branch: 12.0.0.0b2 # liberty-2 nova_git_dest: "/opt/nova_{{ nova_git_install_branch | replace('/', '_') }}" ## Swift service swift_git_repo: https://git.openstack.org/openstack/swift -swift_git_install_branch: 0009a43eb45fdee6716d1272b346cfc76d946e4b # HEAD of "master" as of 22.06.2015 +swift_git_install_branch: 2.3.0 # liberty-2 swift_git_dest: "/opt/swift_{{ swift_git_install_branch | replace('/', '_') }}" ## Tempest service tempest_git_repo: https://git.openstack.org/openstack/tempest -tempest_git_install_branch: 1cfa1720e8db3966af7ad042b6fbb12e01e2ab31 # HEAD of "master" as of 22.06.2015 -tempest_git_install_fragments: "yaprtignorerequirements=true" +tempest_git_install_branch: 3101ebddd7bfb214d8de277e365499f04667f492 # HEAD of "master" as of 29.07.2015 tempest_git_dest: "/opt/tempest_{{ tempest_git_install_branch | replace('/', '_') }}" diff --git a/playbooks/roles/os_neutron/defaults/main.yml b/playbooks/roles/os_neutron/defaults/main.yml index 60fd4edb2a..e64e355a42 100644 --- a/playbooks/roles/os_neutron/defaults/main.yml +++ b/playbooks/roles/os_neutron/defaults/main.yml @@ -32,7 +32,7 @@ neutron_system_home_folder: "/var/lib/{{ neutron_system_user_name }}" neutron_galera_user: neutron neutron_galera_password: "{{ neutron_container_mysql_password }}" neutron_galera_database: neutron -neutron_db_revision: head +neutron_db_revision: heads neutron_db_config: /etc/neutron/neutron.conf neutron_db_plugin: /etc/neutron/plugins/ml2/ml2_conf.ini neutron_db_max_overflow: 20 diff --git a/playbooks/roles/os_neutron/tasks/neutron_db_setup.yml b/playbooks/roles/os_neutron/tasks/neutron_db_setup.yml index de7b775b07..9852925c4f 100644 --- a/playbooks/roles/os_neutron/tasks/neutron_db_setup.yml +++ b/playbooks/roles/os_neutron/tasks/neutron_db_setup.yml @@ -39,6 +39,41 @@ tags: - neutron-db-setup +- name: Inspect on disk neutron DB revision + command: > + cat {{ neutron_system_home_folder }}/neutron-revision + failed_when: false + changed_when: neutron_revision_on_disk.rc != 0 + register: neutron_revision_on_disk + tags: + - neutron-db-setup + - neutron-upgrade + - neutron-stamp + +- name: Check last DB revision + shell: | + neutron-db-manage history | head -1 | tee {{ neutron_system_home_folder }}/neutron-revision + register: neutron_revision + sudo: yes + sudo_user: "{{ neutron_system_user_name }}" + delegate_to: "{{ item }}" + with_items: groups['neutron_all'] + tags: + - neutron-db-setup + - neutron-upgrade + - neutron-stamp + +- name: Stop neutron server + service: + name: "neutron-server" + state: stopped + pattern: "neutron-server" + ignore_errors: true + when: neutron_revision.results.0.stdout != neutron_revision_on_disk.stdout + tags: + - neutron-db-setup + - neutron-stamp + - name: Perform a Neutron DB Upgrade command: | neutron-db-manage --config-file {{ neutron_db_config }} @@ -46,21 +81,12 @@ upgrade {{ neutron_db_revision }} sudo: yes sudo_user: "{{ neutron_system_user_name }}" + when: > + neutron_revision.results.0.stdout != neutron_revision_on_disk.stdout + notify: Restart neutron services tags: - neutron-db-setup - neutron-upgrade - -# This is using shell because we are grep-ing -- name: Check for DB revision - shell: | - neutron-db-manage history | grep -w 'Revision ID: {{ neutron_db_revision }}' - register: neutron_dbmanage - failed_when: false - changed_when: neutron_dbmanage.rc != 0 - sudo: yes - sudo_user: "{{ neutron_system_user_name }}" - tags: - - neutron-db-setup - neutron-stamp - name: Perform a Neutron DB Stamp @@ -68,9 +94,11 @@ neutron-db-manage --config-file {{ neutron_db_config }} --config-file {{ neutron_db_plugin }} stamp {{ neutron_db_revision }} - when: neutron_dbmanage.rc != 0 + when: neutron_revision.results.0.stdout != neutron_revision_on_disk.stdout sudo: yes sudo_user: "{{ neutron_system_user_name }}" + notify: Restart neutron services tags: - neutron-db-setup + - neutron-upgrade - neutron-stamp