Merge pull request #59 from bodepd/control_ubuntu_os_version

Control ubuntu os version
This commit is contained in:
Dan Bode
2013-03-13 09:42:23 -07:00
4 changed files with 34 additions and 26 deletions

1
.gitignore vendored
View File

@@ -8,3 +8,4 @@ Puppetfile.lock
my.log
*swp
logs
hiera_data/jenkins.yaml

18
Vagrantfile vendored
View File

@@ -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 File

@@ -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 @@ package { ['make', 'gcc']:
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',
@@ -54,6 +58,19 @@ file { '/etc/puppet/hiera.yaml':
:datadir: /etc/puppet/hiera_data'
}
package { 'wget':
ensure => present,
}
file_line { 'wgetrc_proxy':
ensure => present,
line => "https_proxy = http://172.16.0.1:3128/",
path => '/etc/wgetrc',
require => Package['wget'],
}
# not sure if this is the best place for my puppetmaster config
node /puppetmaster/ {
Ini_setting {
path => '/etc/puppet/puppet.conf',
@@ -75,16 +92,4 @@ node /puppetmaster/ {
}
}
package { 'wget':
ensure => present,
}
file_line { 'wgetrc_proxy':
ensure => present,
line => "https_proxy = http://172.16.0.1:3128/",
path => '/etc/wgetrc',
require => Package['wget'],
}
node default { }

View File

@@ -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',
}