Skip to content

Commit

Permalink
Progress on level 5
Browse files Browse the repository at this point in the history
  • Loading branch information
e28eta committed Feb 13, 2013
1 parent 31dee51 commit 0bdb06e
Show file tree
Hide file tree
Showing 5 changed files with 57 additions and 56 deletions.
33 changes: 16 additions & 17 deletions Vagrantfile
@@ -1,27 +1,26 @@
# -*- mode: ruby -*-
# vi: set ft=ruby :

# Helper method to do all common Vagrant config for a given level number
def configure(vm_config, number)
vm_config.vm.network :hostonly, "192.168.33.10#{number}"
vm_config.vm.host_name = "level0#{number}-1.stripe-ctf.com"

vm_config.vm.provision :puppet do |puppet|
puppet.manifests_path = "puppet"
puppet.module_path = "puppet/modules"
puppet.manifest_file = "site.pp"
end
end

Vagrant::Config.run do |config|
config.vm.box = "stripe-ctf-base"
config.vm.box_url = "https://www.dropbox.com/s/qhdb95prfjqh2r9/stripe-ctf-base-v2.box"

config.vm.define :level2 do |level2_config|
level2_config.vm.network :hostonly, "192.168.33.102"
level2_config.vm.host_name = "level02-1.stripe-ctf.com"

level2_config.vm.provision :puppet do |puppet|
puppet.manifests_path = "puppet"
puppet.module_path = "puppet/modules"
puppet.manifest_file = "site.pp"
end
config.vm.define :level2 do |box_config|
configure(box_config, "2")
end

config.vm.define :level5 do |level5_config|
level5_config.vm.network :hostonly, "192.168.33.105"

level5_config.vm.provision :puppet do |puppet|
puppet.manifests_path = "puppet/manifests"
puppet.manifest_file = "level05.pp"
end
config.vm.define :level5 do |box_config|
configure(box_config, "5")
end
end
5 changes: 5 additions & 0 deletions puppet/modules/stripectf2/manifests/level02.pp
Expand Up @@ -7,6 +7,11 @@
enable => true,
hasrestart => true,
}

# Disable the default apache2 site
stripectf2::apache2_site {'000-default':
ensure => 'absent',
}

file {$destination:
ensure => 'directory',
Expand Down
64 changes: 29 additions & 35 deletions puppet/modules/stripectf2/manifests/level05.pp
@@ -1,39 +1,33 @@
package { 'bundler':
ensure => 'latest',
provider => 'gem',
}

file {'/level5':
ensure => 'directory',
}
class stripectf2::level05 (
$destination,
$source,
) {
file {$destination:
ensure => 'directory',
recurse => true,
purge => true,
force => true,
mode => '0755',
owner => 'vagrant',
group => 'vagrant',
source => $source,
}

file {'/level5/production':
ensure => 'present',
content => '',
}

file {'/level5/srv.rb':
ensure => 'present',
source => '/vagrant/levels/5/srv.rb',
}
# This file tells our service to run in production mode
file {"${destination}/production":
ensure => 'present',
content => '',
require => File[$destination]
}

file {'/level5/Gemfile':
ensure => 'present',
source => '/vagrant/levels/5/Gemfile',
}

file {'/level5/Gemfile.lock':
ensure => 'present',
source => '/vagrant/levels/5/Gemfile.lock',
}

file {'/level5/password.txt':
ensure => 'present',
content => 'some-password',
}
stripectf2::random_password {"${destination}/password.txt":
require => File[$destination],
}

service {'srv.rb':
ensure => 'running',
start => 'cd /level5 && bundle install && ./srv.rb &',
provider => 'base',
service {'srv.rb':
ensure => 'running',
start => "cd ${destination} && bundle install && ./srv.rb &",
provider => 'base',
require => File[$destination]
}
}
7 changes: 7 additions & 0 deletions puppet/nodes/level05.pp
@@ -0,0 +1,7 @@
node 'level05-1.stripe-ctf.com' {
class {'stripectf2::level05':
destination => '/levels/05',
source => '/vagrant/levels/5',
require => File['/levels'],
}
}
4 changes: 0 additions & 4 deletions puppet/site.pp
Expand Up @@ -17,8 +17,4 @@
group => 'vagrant',
}

# Disable the default apache2 site
stripectf2::apache2_site {'000-default':
ensure => 'absent',
}

0 comments on commit 0bdb06e

Please sign in to comment.