albanpeignier-gepetto 0.0.4 → 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- data/Manifest.txt +1 -0
- data/Rakefile +5 -3
- data/app_generators/gepetto/gepetto_generator.rb +4 -2
- data/app_generators/gepetto/templates/manifests/nodes.pp +5 -0
- data/app_generators/gepetto/templates/manifests/site.pp +9 -0
- data/gepetto.gemspec +6 -3
- data/lib/gepetto.rb +1 -1
- data/tasks/host.pp +34 -19
- data/tasks/puppet.rake +3 -1
- metadata +11 -2
data/Manifest.txt
CHANGED
@@ -7,6 +7,7 @@ app_generators/gepetto/gepetto_generator.rb
|
|
7
7
|
app_generators/gepetto/templates/Rakefile
|
8
8
|
app_generators/gepetto/templates/config/fileserver.conf
|
9
9
|
app_generators/gepetto/templates/config/puppet.conf
|
10
|
+
app_generators/gepetto/templates/manifests/defaults.pp
|
10
11
|
app_generators/gepetto/templates/manifests/nodes.pp
|
11
12
|
app_generators/gepetto/templates/manifests/site.pp
|
12
13
|
app_generators/gepetto/templates/manifests/templates.pp
|
data/Rakefile
CHANGED
@@ -11,10 +11,12 @@ $hoe = Hoe.new('gepetto', Gepetto::VERSION) do |p|
|
|
11
11
|
['rubigen',">= #{RubiGen::VERSION}"],
|
12
12
|
['echoe',">= 3.0.2"],
|
13
13
|
['cucumber',">= 0.1.8"],
|
14
|
+
['hoe',">= 1.8.0"],
|
15
|
+
['newgem', ">= #{::Newgem::VERSION}"]
|
14
16
|
]
|
15
|
-
p.extra_dev_deps = [
|
16
|
-
|
17
|
-
]
|
17
|
+
# p.extra_dev_deps = [
|
18
|
+
# ['newgem', ">= #{::Newgem::VERSION}"]
|
19
|
+
# ]
|
18
20
|
|
19
21
|
p.clean_globs |= %w[**/.DS_Store tmp *.log]
|
20
22
|
path = (p.rubyforge_name == p.name) ? p.rubyforge_name : "\#{p.rubyforge_name}/\#{p.name}"
|
@@ -16,11 +16,13 @@ class GepettoGenerator < RubiGen::Base
|
|
16
16
|
# Root directory and all subdirectories.
|
17
17
|
m.directory ''
|
18
18
|
|
19
|
-
%w{script config manifests files templates log tasks}.each { |path| m.directory path }
|
19
|
+
%w{script config manifests manifests/classes files templates log tasks}.each { |path| m.directory path }
|
20
20
|
|
21
21
|
m.template_copy_each %w( Rakefile )
|
22
22
|
|
23
|
-
m.template_copy_each %w( site.pp templates.pp nodes.pp ), 'manifests'
|
23
|
+
m.template_copy_each %w( defaults.pp site.pp templates.pp nodes.pp ), 'manifests'
|
24
|
+
|
25
|
+
m.template_copy_each %w( empty.pp ), 'manifests/classes'
|
24
26
|
|
25
27
|
m.template_copy_each %w( puppet.conf fileserver.conf ), 'config'
|
26
28
|
|
data/gepetto.gemspec
CHANGED
@@ -2,11 +2,11 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{gepetto}
|
5
|
-
s.version = "0.0.
|
5
|
+
s.version = "0.0.5"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Alban Peignier"]
|
9
|
-
s.date = %q{2009-02-
|
9
|
+
s.date = %q{2009-02-03}
|
10
10
|
s.default_executable = %q{gepetto}
|
11
11
|
s.description = %q{A helper suite for Puppet projects to create, manage and help daily development More information about Puppet: http://reductivelabs.com/trac/puppet/}
|
12
12
|
s.email = ["alban.peignier@free.fr"]
|
@@ -29,12 +29,14 @@ Gem::Specification.new do |s|
|
|
29
29
|
s.add_runtime_dependency(%q<rubigen>, [">= 1.5.2"])
|
30
30
|
s.add_runtime_dependency(%q<echoe>, [">= 3.0.2"])
|
31
31
|
s.add_runtime_dependency(%q<cucumber>, [">= 0.1.8"])
|
32
|
-
s.
|
32
|
+
s.add_runtime_dependency(%q<hoe>, [">= 1.8.0"])
|
33
|
+
s.add_runtime_dependency(%q<newgem>, [">= 1.2.3"])
|
33
34
|
s.add_development_dependency(%q<hoe>, [">= 1.8.0"])
|
34
35
|
else
|
35
36
|
s.add_dependency(%q<rubigen>, [">= 1.5.2"])
|
36
37
|
s.add_dependency(%q<echoe>, [">= 3.0.2"])
|
37
38
|
s.add_dependency(%q<cucumber>, [">= 0.1.8"])
|
39
|
+
s.add_dependency(%q<hoe>, [">= 1.8.0"])
|
38
40
|
s.add_dependency(%q<newgem>, [">= 1.2.3"])
|
39
41
|
s.add_dependency(%q<hoe>, [">= 1.8.0"])
|
40
42
|
end
|
@@ -42,6 +44,7 @@ Gem::Specification.new do |s|
|
|
42
44
|
s.add_dependency(%q<rubigen>, [">= 1.5.2"])
|
43
45
|
s.add_dependency(%q<echoe>, [">= 3.0.2"])
|
44
46
|
s.add_dependency(%q<cucumber>, [">= 0.1.8"])
|
47
|
+
s.add_dependency(%q<hoe>, [">= 1.8.0"])
|
45
48
|
s.add_dependency(%q<newgem>, [">= 1.2.3"])
|
46
49
|
s.add_dependency(%q<hoe>, [">= 1.8.0"])
|
47
50
|
end
|
data/lib/gepetto.rb
CHANGED
data/tasks/host.pp
CHANGED
@@ -3,33 +3,40 @@ Exec { path => "/usr/bin:/usr/sbin/:/bin:/sbin" }
|
|
3
3
|
# install qemu
|
4
4
|
|
5
5
|
package { qemu:
|
6
|
-
ensure =>
|
6
|
+
ensure => "0.9.1+svn20090104-1"
|
7
7
|
}
|
8
8
|
|
9
|
-
|
9
|
+
case $operatingsystem {
|
10
|
+
debian: {
|
11
|
+
notice("qemu from experimental is required for the moment")
|
10
12
|
|
11
|
-
|
12
|
-
|
13
|
-
}
|
13
|
+
file { "/etc/apt/sources.list.d/debian-experimental.list":
|
14
|
+
content => "deb http://ftp.debian.org/debian/ experimental main"
|
15
|
+
}
|
14
16
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
exec { "
|
20
|
-
|
21
|
-
|
22
|
-
before => Exec["modass-kqemu"],
|
23
|
-
require => [Package[debhelper], Package[dpatch]]
|
17
|
+
exec { "apt-get update":
|
18
|
+
require => File["/etc/apt/sources.list.d/debian-experimental.list"]
|
19
|
+
}
|
20
|
+
|
21
|
+
exec { "apt-get install -t experimental -y --force-yes qemu":
|
22
|
+
require => Exec["apt-get update"],
|
23
|
+
before => Package[qemu]
|
24
24
|
}
|
25
|
-
package { [debhelper, dpatch]: ensure => installed }
|
26
25
|
}
|
27
26
|
}
|
28
27
|
|
28
|
+
# compile kqemu module
|
29
|
+
|
30
|
+
package { kqemu-source:
|
31
|
+
ensure => "1.4.0~pre1-1",
|
32
|
+
require => Package[qemu]
|
33
|
+
}
|
34
|
+
|
29
35
|
exec { "modass-kqemu":
|
30
|
-
|
36
|
+
# modass returns 249 with non-inter ...
|
37
|
+
command => 'module-assistant --non-inter a-i kqemu || dpkg -l "kqemu-modules-`uname -r`" | grep ^ii',
|
31
38
|
unless => 'dpkg -l "kqemu-modules-`uname -r`" | grep ^ii',
|
32
|
-
require =>
|
39
|
+
require => Package[kqemu-source]
|
33
40
|
}
|
34
41
|
|
35
42
|
exec { "add kqemu in /etc/modules":
|
@@ -38,9 +45,16 @@ exec { "add kqemu in /etc/modules":
|
|
38
45
|
require => Exec["modass-kqemu"]
|
39
46
|
}
|
40
47
|
|
48
|
+
exec { "modprobe-kqemu":
|
49
|
+
command => "modprobe kqemu",
|
50
|
+
unless => "lsmod | grep kqemu",
|
51
|
+
require => Exec["modass-kqemu"]
|
52
|
+
}
|
53
|
+
|
41
54
|
file { "/dev/kqemu":
|
42
55
|
# default permissions on debian, but not on ubuntu
|
43
|
-
mode => 666
|
56
|
+
mode => 666,
|
57
|
+
require => Exec["modprobe-kqemu"]
|
44
58
|
}
|
45
59
|
|
46
60
|
# install uml-utilities for tunctl
|
@@ -75,5 +89,6 @@ fi
|
|
75
89
|
/sbin/ifconfig $1 172.20.0.1
|
76
90
|
iptables -t nat -A POSTROUTING -s 172.20.0.1/24 -o eth0 -j MASQUERADE
|
77
91
|
sysctl -w net.ipv4.ip_forward=1
|
78
|
-
'
|
92
|
+
',
|
93
|
+
require => Package[qemu]
|
79
94
|
}
|
data/tasks/puppet.rake
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
namespace :puppet do
|
2
2
|
desc "Check syntax of puppet manifests"
|
3
3
|
task :check_syntax do
|
4
|
-
|
4
|
+
FileList['manifests/**/*.pp'].each do |manifest|
|
5
|
+
sh "puppet --color=false --confdir=/tmp --vardir=/tmp --parseonly --ignoreimport #{manifest}"
|
6
|
+
end
|
5
7
|
end
|
6
8
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: albanpeignier-gepetto
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alban Peignier
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-02-
|
12
|
+
date: 2009-02-03 00:00:00 -08:00
|
13
13
|
default_executable: gepetto
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -39,6 +39,15 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: 0.1.8
|
41
41
|
version:
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: hoe
|
44
|
+
version_requirement:
|
45
|
+
version_requirements: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - ">="
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: 1.8.0
|
50
|
+
version:
|
42
51
|
- !ruby/object:Gem::Dependency
|
43
52
|
name: newgem
|
44
53
|
version_requirement:
|