Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Add ability to configure installed openstack version

perform a hiera lookup for the openstack_version
to use to setup the appropriate packages(for ubuntu).

Ensure that setup/hosts.pp is run before (and not from
within) setup/os.pp. This is b/c hiera is not
required to be installed before the os specific
setup manifest is run.
  • Loading branch information...
commit 2d08aa9cb0b95817fa8b11ff230d0b9f95fece84 1 parent 85d6d9d
@bodepd bodepd authored
View
1  .gitignore
@@ -8,3 +8,4 @@ Puppetfile.lock
my.log
*swp
logs
+hiera_data/jenkins.yaml
View
18 Vagrantfile
@@ -185,6 +185,15 @@ Vagrant::Config.run do |config|
puppet_options = ["--certname=#{node_name}"]
puppet_options.merge!({'--verbose', '--show_diff'}) if v_config['verbose']
+ # configure hosts, install hiera
+ # perform pre-steps that always need to occur
+ agent.vm.provision(:puppet, :pp_path => "/etc/puppet") do |puppet|
+ puppet.manifests_path = 'manifests'
+ puppet.manifest_file = "setup/hosts.pp"
+ puppet.module_path = 'modules'
+ puppet.options = puppet_options
+ end
+
if v_config['update_repos'] == true
agent.vm.provision(:puppet, :pp_path => "/etc/puppet") do |puppet|
@@ -194,15 +203,6 @@ Vagrant::Config.run do |config|
puppet.options = puppet_options
end
- else
-
- agent.vm.provision(:puppet, :pp_path => "/etc/puppet") do |puppet|
- puppet.manifests_path = 'manifests'
- puppet.manifest_file = "setup/hosts.pp"
- puppet.module_path = 'modules'
- puppet.options = puppet_options
- end
-
end
# export a data directory that can be used by hiera
View
10 manifests/setup/hosts.pp
@@ -1,5 +1,10 @@
#
-# specify a connection to the hardcoded puppet master
+# this manifest performs essentially environment configuration
+# that needs to be run before anything is configured
+#
+
+#
+# setup basic dns in /etc/hosts
#
host {
'puppetmaster': ip => '172.16.0.31', host_aliases => ['puppetmaster.puppetlabs.lan'];
@@ -33,8 +38,7 @@
ensure => present,
} ->
-# install hiera
-# TODO pretty sure hiera-puppet is not installed b/c I installed the module
+# install hiera, to support Puppet pre 3.0
package { ['hiera', 'hiera-puppet', 'ruby-debug']:
ensure => present,
provider => 'gem',
View
6 manifests/setup/precise64.pp
@@ -1,12 +1,14 @@
-import 'hosts.pp'
+#import 'hosts.pp'
#
# This puppet manifest is already applied first to do some environment specific things
#
+$openstack_version = hiera('openstack_version', 'folsom')
+
apt::source { 'openstack_folsom':
location => "http://ubuntu-cloud.archive.canonical.com/ubuntu",
- release => "precise-updates/folsom",
+ release => "precise-updates/${openstack_version}",
repos => "main",
required_packages => 'ubuntu-cloud-keyring',
}
Please sign in to comment.
Something went wrong with that request. Please try again.