From d3accf21a5490820cd5627f67b1613e8e2a4d0f4 Mon Sep 17 00:00:00 2001 From: Chris Hoge Date: Thu, 14 Nov 2013 12:04:12 -0800 Subject: [PATCH 01/12] Preparing for 3.0.0 Havana release Updated Modulefile with current release version. Updated README.md with deprecation warning and release notes. Updated fixtures to point to stable/havana branch Change-Id: I1e1f70d6ddaa41c0ac71b4d4b44c91d745ee3e8f --- .fixtures.yml | 36 +++++++++++++++++++++++++++--------- Modulefile | 16 ++++++++-------- README.md | 16 ++++++++++++++++ 3 files changed, 51 insertions(+), 17 deletions(-) diff --git a/.fixtures.yml b/.fixtures.yml index e85ac2c..d958ea8 100644 --- a/.fixtures.yml +++ b/.fixtures.yml @@ -1,14 +1,32 @@ fixtures: repositories: - 'cinder': 'git://github.com/stackforge/puppet-cinder' - "keystone": "git://github.com/stackforge/puppet-keystone.git" - "nova": "git://github.com/stackforge/puppet-nova.git" - "glance": "git://github.com/stackforge/puppet-glance.git" - 'horizon': 'git://github.com/stackforge/puppet-horizon' - 'swift' : 'git://github.com/stackforge/puppet-swift' - 'neutron': 'git://github.com/stackforge/puppet-neutron' - 'ceilometer' : 'git://github.com/stackforge/puppet-ceilometer' - 'heat' : 'git://github.com/stackforge/puppet-heat' + 'cinder': + repo: 'git://github.com/stackforge/puppet-cinder' + ref: 'stable/havana' + "keystone": + repo: "git://github.com/stackforge/puppet-keystone.git" + ref: 'stable/havana' + "nova": + repo: "git://github.com/stackforge/puppet-nova.git" + ref: 'stable/havana' + "glance": + repo: "git://github.com/stackforge/puppet-glance.git" + ref: 'stable/havana' + 'horizon': + repo: 'git://github.com/stackforge/puppet-horizon' + ref: 'stable/havana' + 'swift' : + repo: 'git://github.com/stackforge/puppet-swift' + ref: 'stable/havana' + 'neutron': + repo: 'git://github.com/stackforge/puppet-neutron' + ref: 'stable/havana' + 'ceilometer' : + repo: 'git://github.com/stackforge/puppet-ceilometer' + ref: 'stable/havana' + 'heat' : + repo: 'git://github.com/stackforge/puppet-heat' + ref: 'stable/havana' "apt": "git://github.com/puppetlabs/puppetlabs-apt.git" "apache": repo: "git://github.com/puppetlabs/puppetlabs-apache.git" diff --git a/Modulefile b/Modulefile index 2580b65..1ca3524 100644 --- a/Modulefile +++ b/Modulefile @@ -1,5 +1,5 @@ name 'puppetlabs-openstack' -version '2.2.0' +version '3.0.0-rc1' source 'https://github.com/stackforge/puppet-openstack' author 'Puppet Labs' license 'Apache License 2.0' @@ -7,10 +7,10 @@ summary 'Puppet Labs Openstack Module targeted for Grizzly' description 'Puppet module that pulls together all the individual components of Openstack, resulting is a complete and functional stack.' project_page 'https://github.com/stackforge/puppet-openstack' -dependency 'puppetlabs/glance', '>= 2.2.0 <3.0.0' -dependency 'puppetlabs/horizon', '>= 2.2.0 <3.0.0' -dependency 'puppetlabs/keystone', '>= 2.2.0 <3.0.0' -dependency 'puppetlabs/nova', '>= 2.2.0 <3.0.0' -dependency 'puppetlabs/cinder', '>= 2.2.0 <3.0.0' -dependency 'puppetlabs/swift', '>= 2.2.0 <3.0.0' -dependency 'puppetlabs/quantum', '>= 2.2.0 <3.0.0' +dependency 'puppetlabs/glance', '>= 3.0.0 <4.0.0' +dependency 'puppetlabs/horizon', '>= 3.0.0 <4.0.0' +dependency 'puppetlabs/keystone', '>= 3.0.0 <4.0.0' +dependency 'puppetlabs/nova', '>= 3.0.0 <4.0.0' +dependency 'puppetlabs/cinder', '>= 3.0.0 <4.0.0' +dependency 'puppetlabs/swift', '>= 3.0.0 <4.0.0' +dependency 'puppetlabs/neutron', '>= 3.0.0 <4.0.0' diff --git a/README.md b/README.md index 19356ad..d3b46cf 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,7 @@ openstack #### Table of Contents +0. [Deprecation Warning](#deprecation) 1. [Overview - What is the openstack module?](#overview) 2. [Module Description - What does the module do?](#module-description) 3. [Setup - The basics of getting started with cinder](#setup) @@ -13,6 +14,13 @@ openstack 8. [Contributors - Those with commits](#contributors) 9. [Release Notes - Notes on the most recent updates to the module](#release-notes) +Deprecation +----------- + +This implementation of the puppet-openstack module is deprecated, and will be removed for the OpenStack Icehouse release. +A new reference deployment based on the puppetlabs-grizzly module, and being updated for Havana, will replace the +functionality of this module. + Overview -------- @@ -505,6 +513,14 @@ Contributors Release Notes ------------- +**3.0.0** + +* Major release to support OpenStack Havana. +* Switches from puppet-quantum to puppet-neutron for networking. +* Change to ensure nova network compatible provisioning. +* Added support for alternate images with glance. +* Fixed bug to prevent dollar signs and single quote variable to be removed by shell. + **2.2.0** * Added support for syslog. From 06adf0246a9ead74eb788f529468620de2d11deb Mon Sep 17 00:00:00 2001 From: cbaesema Date: Tue, 17 Dec 2013 13:47:25 -0600 Subject: [PATCH 02/12] Allow running of proxy and storage on the same node. This adds a if defined check to avoid class conflicts when running swift proxy and storage on the same node. Change-Id: I60fb78e5d40605ab47f349d154737ef9bab641f4 (cherry picked from commit 4b9e74a7a275f32217d86487f975c8ded85317b2) --- manifests/swift/storage-node.pp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/manifests/swift/storage-node.pp b/manifests/swift/storage-node.pp index 1fcdcbb..662db0c 100644 --- a/manifests/swift/storage-node.pp +++ b/manifests/swift/storage-node.pp @@ -12,9 +12,11 @@ $byte_size = '1024', ) { - class { 'swift': - swift_hash_suffix => $swift_hash_suffix, - package_ensure => $package_ensure, + if !defined(swift){ + class { 'swift': + swift_hash_suffix => $swift_hash_suffix, + package_ensure => $package_ensure, + } } case $storage_type { From dfaad20a350b8f69e525e6ea8b1c3e2e40c5ccec Mon Sep 17 00:00:00 2001 From: Chris Hoge Date: Fri, 20 Dec 2013 14:04:08 -0800 Subject: [PATCH 03/12] Update for 3.0.0-rc2 Updated .gitreview to use stable/havana branch. Updated Modulefile with current version and dependencies for new Heat and Ceilometer releases. Change-Id: Ied48ec68ace77fbdfa47216d8d32e531c320bcd3 --- .gitreview | 1 + Modulefile | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.gitreview b/.gitreview index 3ffd590..0a0d132 100644 --- a/.gitreview +++ b/.gitreview @@ -2,3 +2,4 @@ host=review.openstack.org port=29418 project=stackforge/puppet-openstack.git +defaultbranch=stable/havana diff --git a/Modulefile b/Modulefile index 1ca3524..22de513 100644 --- a/Modulefile +++ b/Modulefile @@ -1,5 +1,5 @@ name 'puppetlabs-openstack' -version '3.0.0-rc1' +version '3.0.0-rc2' source 'https://github.com/stackforge/puppet-openstack' author 'Puppet Labs' license 'Apache License 2.0' @@ -14,3 +14,5 @@ dependency 'puppetlabs/nova', '>= 3.0.0 <4.0.0' dependency 'puppetlabs/cinder', '>= 3.0.0 <4.0.0' dependency 'puppetlabs/swift', '>= 3.0.0 <4.0.0' dependency 'puppetlabs/neutron', '>= 3.0.0 <4.0.0' +dependency 'puppetlabs/ceilometer', '>= 3.0.0 <4.0.0' +dependency 'puppetlabs/heat', '>= 3.0.0 <4.0.0' From c20039004cb39e78c93cd00f154c3b9ba6404951 Mon Sep 17 00:00:00 2001 From: Chris Hoge Date: Thu, 9 Jan 2014 14:14:50 -0800 Subject: [PATCH 04/12] Release 3.0.0 Updated Modulefile for release 3.0.0. Change-Id: I18ddb80fb97176a2b6614fd8d7c482eef0f59116 --- Modulefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modulefile b/Modulefile index 22de513..44c44cc 100644 --- a/Modulefile +++ b/Modulefile @@ -1,5 +1,5 @@ name 'puppetlabs-openstack' -version '3.0.0-rc2' +version '3.0.0' source 'https://github.com/stackforge/puppet-openstack' author 'Puppet Labs' license 'Apache License 2.0' From 65e776e97f0dda743d9d4b1ec45511ab25e05c27 Mon Sep 17 00:00:00 2001 From: Sumit Naiksatam Date: Thu, 23 Jan 2014 11:41:36 -0800 Subject: [PATCH 05/12] Pointing openstack modules to stable/havana. Puppetfile was referencing master as opposed to stable/havana. Change-Id: I127072ebfcfdcdecd094ac29845e6b0b50a48d07 --- Puppetfile | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/Puppetfile b/Puppetfile index 97e8458..d838a72 100644 --- a/Puppetfile +++ b/Puppetfile @@ -1,15 +1,31 @@ forge "http://forge.puppetlabs.com" -mod 'puppetlabs/nova', :git => 'git://github.com/stackforge/puppet-nova' -mod 'puppetlabs/glance', :git => 'git://github.com/stackforge/puppet-glance' -mod 'puppetlabs/keystone', :git => 'git://github.com/stackforge/puppet-keystone' -mod 'puppetlabs/horizon', :git => 'git://github.com/stackforge/puppet-horizon' -mod 'puppetlabs/swift', :git => 'git://github.com/stackforge/puppet-swift' -mod 'puppetlabs/cinder', :git => 'git://github.com/stackforge/puppet-cinder' -mod 'puppetlabs/tempest', :git => 'git://github.com/stackforge/puppet-tempest' -mod 'stackforge/neutron', :git => 'git://github.com/stackforge/puppet-neutron' +mod 'puppetlabs/nova', + :git => 'git://github.com/stackforge/puppet-nova', + :ref => 'origin/stable/havana' +mod 'puppetlabs/glance', + :git => 'git://github.com/stackforge/puppet-glance', + :ref => 'origin/stable/havana' +mod 'puppetlabs/keystone', + :git => 'git://github.com/stackforge/puppet-keystone', + :ref => 'origin/stable/havana' +mod 'puppetlabs/horizon', + :git => 'git://github.com/stackforge/puppet-horizon', + :ref => 'origin/stable/havana' +mod 'puppetlabs/swift', + :git => 'git://github.com/stackforge/puppet-swift', + :ref => 'origin/stable/havana' +mod 'puppetlabs/cinder', + :git => 'git://github.com/stackforge/puppet-cinder', + :ref => 'origin/stable/havana' +mod 'puppetlabs/tempest', + :git => 'git://github.com/stackforge/puppet-tempest', + :ref => 'origin/stable/havana' +mod 'stackforge/neutron', + :git => 'git://github.com/stackforge/puppet-neutron', + :ref => 'origin/stable/havana' # openstack middleware -mod 'puppet/vswitch', :git => 'git://github.com/bodepd/puppet-vswitch' +mod 'puppet/vswitch', :git => 'git://github.com/stackforge/puppet-vswitch' mod 'puppetlabs/rabbitmq', :git => 'git://github.com/puppetlabs/puppetlabs-rabbitmq', :ref => 'origin/2.x' From f61fd7337fcfecccb51d8a54010743a46d91637b Mon Sep 17 00:00:00 2001 From: Chris Ricker Date: Mon, 3 Feb 2014 05:58:52 -0800 Subject: [PATCH 06/12] test_nova.sh uses old cirros images Update test_nova.sh to download Cirros 0.3.1 for config_drive support, and for consistency with the other Cirros image downloads within this module. Closes-Bug: #1275746 (cherry picked from commit eec8af5a745a28db1bcccb51f5cff22ef88dee42) Change-Id: I2bd462c03d81caa493410e8c7ae583aa71416993 --- templates/test_nova.sh.erb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/templates/test_nova.sh.erb b/templates/test_nova.sh.erb index c9842ac..092efaf 100644 --- a/templates/test_nova.sh.erb +++ b/templates/test_nova.sh.erb @@ -6,10 +6,10 @@ source <%= @rc_file_path %> <% if @image_type == 'cirros' -%> # Grab an image. Cirros is a nice small Linux that's easy to deploy -wget --quiet https://launchpad.net/cirros/trunk/0.3.0/+download/cirros-0.3.0-x86_64-disk.img +wget --quiet http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-disk.img # Add it to glance so that we can use it in Openstack -glance add name='cirros image' is_public=true container_format=bare disk_format=qcow2 < cirros-0.3.0-x86_64-disk.img +glance add name='cirros image' is_public=true container_format=bare disk_format=qcow2 < cirros-0.3.1-x86_64-disk.img # Caputre the Image ID so taht we can call the right UUID for this image IMAGE_ID=`glance index | grep 'cirros image' | head -1 | awk -F' ' '{print $1}'` From 2739f251fe0f7987a415c8890a29c07d8915fb8e Mon Sep 17 00:00:00 2001 From: Jeffrey Cox Date: Tue, 4 Feb 2014 11:21:37 -0500 Subject: [PATCH 07/12] Remove deprecated address from keystone spec When I57b8469fb816c37c9d6a285c07796f685b121a90 (Remove deprecated parameter 'address') was merged openstack_keystone_spec.rb broke. This change removes the use of the deprecated 'address'. Change-Id: Ib6d74bfc0d13f5c13f523d5d98b4aea60cc4adaf (cherry picked from commit 1bd3442a946f81101ff60dc45ba996fa3d5bb4e2) --- spec/classes/openstack_keystone_spec.rb | 1 - 1 file changed, 1 deletion(-) diff --git a/spec/classes/openstack_keystone_spec.rb b/spec/classes/openstack_keystone_spec.rb index 05b6443..68d9d79 100644 --- a/spec/classes/openstack_keystone_spec.rb +++ b/spec/classes/openstack_keystone_spec.rb @@ -95,7 +95,6 @@ it do should contain_class('swift::keystone::auth').with( :password => 'dude', - :address => '127.0.0.1', :region => 'RegionOne' ) end From 8130d66e957bf50b2eca276d8eafbb06e426190a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathieu=20Gagne=CC=81?= Date: Wed, 25 Dec 2013 21:16:13 -0500 Subject: [PATCH 08/12] Remove duplicated parameters for keystone Following parameters where duplicated by mistake: nova, glance, cinder, neutron, ceilometer, swift, enabled. Change-Id: I4587ac21a3328a34971428629185bd919cfddb2b Closes-bug: #1263886 (cherry picked from commit 388d47bd9b58bc2259de86dfc9c23f6f3bf60583) --- manifests/keystone.pp | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/manifests/keystone.pp b/manifests/keystone.pp index e54111b..d953b69 100644 --- a/manifests/keystone.pp +++ b/manifests/keystone.pp @@ -128,15 +128,9 @@ $heat_cfn_public_address = false, $heat_cfn_internal_address = false, $heat_cfn_admin_address = false, - $glance = true, - $nova = true, - $cinder = true, - $neutron = true, - $ceilometer = false, - $swift = false, + # logging $use_syslog = false, - $log_facility = 'LOG_USER', - $enabled = true + $log_facility = 'LOG_USER' ) { # Install and configure Keystone From 4f65842f95ece8d0dd354bcf014b84a17aad2050 Mon Sep 17 00:00:00 2001 From: Sebastien Badia Date: Tue, 18 Feb 2014 14:13:47 +0100 Subject: [PATCH 09/12] Havana: Fixtures: fix keystone branch name MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Solve issue: « fatal: ambiguous argument 'stable/havana': unknown revision or path not in the working tree. » Change-Id: Ic5dd26dd3f41a0a022561eb95a3fbaf7ec03f0d8 --- .fixtures.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.fixtures.yml b/.fixtures.yml index d958ea8..5df20b1 100644 --- a/.fixtures.yml +++ b/.fixtures.yml @@ -2,31 +2,31 @@ fixtures: repositories: 'cinder': repo: 'git://github.com/stackforge/puppet-cinder' - ref: 'stable/havana' + ref: 'origin/stable/havana' "keystone": repo: "git://github.com/stackforge/puppet-keystone.git" - ref: 'stable/havana' + ref: 'origin/stable/havana' "nova": repo: "git://github.com/stackforge/puppet-nova.git" - ref: 'stable/havana' + ref: 'origin/stable/havana' "glance": repo: "git://github.com/stackforge/puppet-glance.git" - ref: 'stable/havana' + ref: 'origin/stable/havana' 'horizon': repo: 'git://github.com/stackforge/puppet-horizon' - ref: 'stable/havana' + ref: 'origin/stable/havana' 'swift' : repo: 'git://github.com/stackforge/puppet-swift' - ref: 'stable/havana' + ref: 'origin/stable/havana' 'neutron': repo: 'git://github.com/stackforge/puppet-neutron' - ref: 'stable/havana' + ref: 'origin/stable/havana' 'ceilometer' : repo: 'git://github.com/stackforge/puppet-ceilometer' - ref: 'stable/havana' + ref: 'origin/stable/havana' 'heat' : repo: 'git://github.com/stackforge/puppet-heat' - ref: 'stable/havana' + ref: 'origin/stable/havana' "apt": "git://github.com/puppetlabs/puppetlabs-apt.git" "apache": repo: "git://github.com/puppetlabs/puppetlabs-apache.git" From 8cacc3bdab3fc54c0abe65699d018fac36ff8048 Mon Sep 17 00:00:00 2001 From: Michael Chapman Date: Sat, 1 Mar 2014 00:48:56 +1100 Subject: [PATCH 10/12] Fix ubuntu issues that broke tests. Puppetlabs apt introduced a change that required a debian specific fact that wasn't being set in the spec tests. This patch adds it. Change-Id: Ia8fb3a5d0b01bf58eea583f2f129b48b4ce9564d (cherry picked from commit 0cbddbcea0f3c9932863695d731f079fdd2b1be2) --- spec/classes/openstack_repo_spec.rb | 2 ++ spec/classes/openstack_repo_uca_spec.rb | 2 ++ 2 files changed, 4 insertions(+) diff --git a/spec/classes/openstack_repo_spec.rb b/spec/classes/openstack_repo_spec.rb index f51df32..b544525 100644 --- a/spec/classes/openstack_repo_spec.rb +++ b/spec/classes/openstack_repo_spec.rb @@ -103,6 +103,7 @@ :operatingsystemrelease => '12.04', :lsbdistdescription => 'Ubuntu 12.04.1 LTS', :lsbdistcodename => 'precise', + :lsbdistid => 'ubuntu', } end @@ -123,6 +124,7 @@ :operatingsystemrelease => '12.04', :lsbdistdescription => 'Ubuntu 12.04.1 LTS', :lsbdistcodename => 'precise', + :lsbdistid => 'ubuntu', } end diff --git a/spec/classes/openstack_repo_uca_spec.rb b/spec/classes/openstack_repo_uca_spec.rb index 15a7b08..11d161a 100644 --- a/spec/classes/openstack_repo_uca_spec.rb +++ b/spec/classes/openstack_repo_uca_spec.rb @@ -11,6 +11,7 @@ :operatingsystemrelease => '12.04', :lsbdistdescription => 'Ubuntu 12.04.1 LTS', :lsbdistcodename => 'precise', + :lsbdistid => 'ubuntu', } end it do @@ -32,6 +33,7 @@ :operatingsystemrelease => '12.04', :lsbdistdescription => 'Ubuntu 12.04.1 LTS', :lsbdistcodename => 'precise', + :lsbdistid => 'ubuntu', } end From e6bd33949f13e9199ab413c4b8b0ba0bbffe516c Mon Sep 17 00:00:00 2001 From: Chris Ricker Date: Mon, 3 Mar 2014 12:34:43 -0800 Subject: [PATCH 11/12] Ensure swift.conf created in all scenarios Change I60fb78e5d40605ab47f349d154737ef9bab641f4 introduced a bug wherein /etc/swift/swift.conf is getting created in consolidated installs in which openstack::swift::proxy and openstack::swift::storage-node classes are both applied to the same server, but is not getting created on storage nodes in distributed installs in which the proxy and storage-node classes are applied to different servers. Use ensure_resource wrappers around the swift class call to correct. Change-Id: I692ddf5f344577705fc6a8652349f480ad21542d Closes-Bug: 1287349 (cherry picked from commit 472253cbe29b1375b33d91ae13b561dcdc7fa2d6) --- manifests/swift/proxy.pp | 10 ++++++---- manifests/swift/storage-node.pp | 7 +++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/manifests/swift/proxy.pp b/manifests/swift/proxy.pp index 4eaea7b..d461493 100644 --- a/manifests/swift/proxy.pp +++ b/manifests/swift/proxy.pp @@ -32,10 +32,12 @@ } else { $real_keystone_host = $keystone_host } - class { 'swift': - swift_hash_suffix => $swift_hash_suffix, - package_ensure => $package_ensure, - } + + ensure_resource('class', 'swift', + { swift_hash_suffix => $swift_hash_suffix, + package_ensure => $package_ensure, + } + ) if $memcached { class { 'memcached': diff --git a/manifests/swift/storage-node.pp b/manifests/swift/storage-node.pp index 662db0c..6e12e33 100644 --- a/manifests/swift/storage-node.pp +++ b/manifests/swift/storage-node.pp @@ -12,12 +12,11 @@ $byte_size = '1024', ) { - if !defined(swift){ - class { 'swift': - swift_hash_suffix => $swift_hash_suffix, + ensure_resource('class', 'swift', + { swift_hash_suffix => $swift_hash_suffix, package_ensure => $package_ensure, } - } + ) case $storage_type { 'loopback': { From 8a3e0d5696bcd7c68d5bf321ff2c9e62c0a6e534 Mon Sep 17 00:00:00 2001 From: Chris Hoge Date: Mon, 24 Mar 2014 16:13:38 -0700 Subject: [PATCH 12/12] Fixed gate by Updating Gemfile to pin Rake to 10.1.1 The latest Rake update requires Ruby >= 1.9. Bundler in the current gate uses 1.8.x. This update fixes the gate by pinning Rake to the last known working version. Change-Id: Ib73f7921171871d37e7753f87ba5bc7dcbed5b8b --- Gemfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Gemfile b/Gemfile index 89f2e1b..2080973 100644 --- a/Gemfile +++ b/Gemfile @@ -3,6 +3,7 @@ source 'https://rubygems.org' group :development, :test do gem 'puppetlabs_spec_helper', :require => false gem 'puppet-lint', '~> 0.3.2' + gem 'rake', '~> 10.1.1' end if puppetversion = ENV['PUPPET_GEM_VERSION']