oscar 0.2.0alpha1 → 0.2.0alpha2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.markdown +5 -92
- data/Vagrantfile +1 -2
- data/lib/oscar/version.rb +1 -1
- data/lib/oscar.rb +1 -1
- data/lib/pe_build/config.rb +1 -1
- data/lib/pe_build/provisioners/puppet_enterprise_bootstrap.rb +1 -2
- data/lib/pe_build.rb +4 -0
- data/lib/vagrant_init.rb +2 -0
- metadata +5 -4
data/README.markdown
CHANGED
@@ -1,97 +1,10 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
Oscar
|
2
|
+
=====
|
3
3
|
|
4
|
-
|
5
|
-
|
6
|
-
Versions
|
7
|
-
--------
|
8
|
-
|
9
|
-
Right now, the master branch of soupkitchen is going through a major rewrite.
|
10
|
-
The codebase is in flux and thus the documentation is really going to be based
|
11
|
-
on inline comments.
|
12
|
-
|
13
|
-
All of the supported behavior before the write has been tagged as version 0.0.1
|
14
|
-
and is the reference point for the following documentation.
|
15
|
-
|
16
|
-
Prerequisites
|
17
|
-
-------------
|
18
|
-
|
19
|
-
* Vagrant 1.0
|
20
|
-
* Virtualbox 4.x (4.0 strongly recommended for OSX 10.7)
|
4
|
+
Oscar helps you build a full Puppet Enterprise environment from vagrant base boxes.
|
21
5
|
|
22
6
|
Installation
|
23
7
|
------------
|
24
8
|
|
25
|
-
|
26
|
-
|
27
|
-
cd soupkitchen
|
28
|
-
|
29
|
-
# You'll need a config.yaml to specify how to build the environment. Contact your
|
30
|
-
# friendly neighborhood Puppet support monkey on where this is located. Place
|
31
|
-
# this file in the insta-pe directory.
|
32
|
-
wget http://your.web.server/insta-pe/config.yaml
|
33
|
-
|
34
|
-
# You'll also need the extracted universal installers for Puppet Enterprise.
|
35
|
-
# Place the extracted installers in insta-pe/files.
|
36
|
-
cd soupkitchen/files
|
37
|
-
tar xvf puppet-enterprise-X.Y.Z.tar.gz
|
38
|
-
|
39
|
-
# soupkitchen assumes the you either have all your vagrant boxes already added or
|
40
|
-
# are hosted on a webserver.
|
41
|
-
vagrant up
|
42
|
-
|
43
|
-
Configuration
|
44
|
-
-------------
|
45
|
-
|
46
|
-
Configuration is provided through a yaml file. (Yes, the vagrant config file
|
47
|
-
has a config file. Deal with it.) The top level values are all keys. You'll
|
48
|
-
have something like this:
|
49
|
-
|
50
|
-
---
|
51
|
-
# Configuration settings for Puppet Enterprise.
|
52
|
-
pe:
|
53
|
-
# The version of PE to install. Using a version of 0.0.0 disables the installation
|
54
|
-
version: 2.5.1
|
55
|
-
installer_path: /vagrant/files/puppet-enterprise-%s-all/puppet-enterprise-installer
|
56
|
-
installer:
|
57
|
-
# The program to execute to run the PE install. You can insert 'bash -x' to do a trace
|
58
|
-
# of the installation. Any string containing :version will be replaced with the current version.
|
59
|
-
executable: /vagrant/files/puppet-enterprise-:version-all/puppet-enterprise-installer
|
60
|
-
args:
|
61
|
-
# Additional arguments to pass to the installer
|
62
|
-
- "-l /root/puppet-enterprise-installer.log"
|
63
|
-
- "-D"
|
64
|
-
- "| tee /root/installer-all.log"
|
65
|
-
|
66
|
-
# Profiles are generic configurations for a basebox
|
67
|
-
profiles:
|
68
|
-
# One or more key/value pairs, where the name is the profile name and the values are hashes.
|
69
|
-
debian:
|
70
|
-
# The vagrant base box to use.
|
71
|
-
boxname: debian-6.0.4-i386
|
72
|
-
# The URL that the box can be downloaded from. This is optional
|
73
|
-
boxurl: http://your.web.server/insta-pe/debian-6.0.4-i386.box
|
74
|
-
# add more profiles as necessary
|
75
|
-
|
76
|
-
# Your actual node definitions. This is an array of hashes
|
77
|
-
nodes:
|
78
|
-
-
|
79
|
-
# name: the name of the node to address with vagrant commands
|
80
|
-
name: master
|
81
|
-
# role: one of (master, agent). Self explanatory.
|
82
|
-
role: master
|
83
|
-
# The name of the profile to use in the previous section.
|
84
|
-
profile: debian
|
85
|
-
# The IP address to assign for the host
|
86
|
-
address: 10.16.1.2
|
87
|
-
# A hash where the keys are VM port names and the values are hypervisor port names. Optional.
|
88
|
-
# You'll want to forward 443 on the master to your hypervisor for access to the PEC.
|
89
|
-
forwards:
|
90
|
-
443: 20443
|
91
|
-
|
92
|
-
You can also view the config.yaml.example in this directory.
|
93
|
-
|
94
|
-
Caveats
|
95
|
-
-------
|
96
|
-
|
97
|
-
Do not look at the Vagrantfile in this directory. You'll go blind.
|
9
|
+
gem install --pre oscar
|
10
|
+
# magic!
|
data/Vagrantfile
CHANGED
data/lib/oscar/version.rb
CHANGED
data/lib/oscar.rb
CHANGED
data/lib/pe_build/config.rb
CHANGED
@@ -81,12 +81,11 @@ class PEBuild::Provisioners::PuppetEnterpriseBootstrap < Vagrant::Provisioners::
|
|
81
81
|
@archive_path = File.join(PEBuild.archive_directory, @filename)
|
82
82
|
end
|
83
83
|
|
84
|
-
# @todo use absolute path for locating answers file template
|
85
84
|
def prepare_answers_file
|
86
85
|
FileUtils.mkdir_p @answers_dir unless File.directory? @answers_dir
|
87
86
|
@env[:ui].info "Creating answers file, node:#{@env[:vm].name}, role: #{config.role}"
|
88
87
|
|
89
|
-
template = File.read("#{
|
88
|
+
template = File.read("#{PEBuild.source_root}/templates/answers/#{config.role}.txt.erb")
|
90
89
|
dest = "#{@answers_dir}/#{@env[:vm].name}.txt"
|
91
90
|
|
92
91
|
contents = ERB.new(template).result(binding)
|
data/lib/pe_build.rb
CHANGED
@@ -4,6 +4,10 @@ module PEBuild
|
|
4
4
|
def self.archive_directory
|
5
5
|
File.expand_path(File.join(ENV['HOME'], '.vagrant.d', 'pe_builds'))
|
6
6
|
end
|
7
|
+
|
8
|
+
def self.source_root
|
9
|
+
@source_root ||= File.expand_path(File.join(File.dirname(__FILE__), '..'))
|
10
|
+
end
|
7
11
|
end
|
8
12
|
|
9
13
|
require 'pe_build/version'
|
data/lib/vagrant_init.rb
ADDED
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: oscar
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 2754431913
|
5
5
|
prerelease: 5
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 2
|
9
9
|
- 0
|
10
10
|
- alpha
|
11
|
-
-
|
12
|
-
version: 0.2.
|
11
|
+
- 2
|
12
|
+
version: 0.2.0alpha2
|
13
13
|
platform: ruby
|
14
14
|
authors:
|
15
15
|
- Adrien Thebo
|
@@ -43,7 +43,7 @@ dependencies:
|
|
43
43
|
requirements:
|
44
44
|
- - "="
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
hash:
|
46
|
+
hash: -459699854
|
47
47
|
segments:
|
48
48
|
- 0
|
49
49
|
- 0
|
@@ -130,6 +130,7 @@ files:
|
|
130
130
|
- lib/pe_build/provisioners/puppet_enterprise.rb
|
131
131
|
- lib/pe_build/provisioners/puppet_enterprise_bootstrap.rb
|
132
132
|
- lib/pe_build/version.rb
|
133
|
+
- lib/vagrant_init.rb
|
133
134
|
- manifests/.gitignore
|
134
135
|
- modules/.gitignore
|
135
136
|
- oscar.gemspec
|