bebox 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7dbcd794821165fbd1d616c747b8ba8125fd255b
4
- data.tar.gz: 36cf6cbe8f4c35d2b21e49e61ceb648ada9b903a
3
+ metadata.gz: b6d6e63c580f4a2ce092b13f27c67e6906eee555
4
+ data.tar.gz: 43e1bc3876660c08b4cf27fbb3c4a708379a10bf
5
5
  SHA512:
6
- metadata.gz: 2eb096841311aa6c652aeabfe79eda7faac54f091a7b615d0cf4af72d5b31b973631b0fc8e4b08a04c3de65a5dce76b215067051833f125fba5b7b9ab4a518ea
7
- data.tar.gz: 0aeaf4a6e8cc853373856e4011f6f256555a961133c55917b8b83a7474749d6412ec25f79272c039ee483d79ad19bdefd28a28f073096a163f47fd2bb755a674
6
+ metadata.gz: 6bd27c4308d206439a8e148b841c289f60f30c781e3ea041f2331de72f1ea9a132c9f08e0a74ed53a4da5a91ad8c7e74e0c149c9af0ca349072f704344457f3f
7
+ data.tar.gz: 99be29307448b98834086e5b38e336c986cec6d632164a713f0aea0d4138aabb5f242a6e26e411d47efc885c68bb053fc32436a9c62ec0b023176ecf73eb144d
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- bebox (0.1.4)
4
+ bebox (0.1.5)
5
5
  colorize (= 0.6.0)
6
6
  fast_gettext (= 0.9.0)
7
7
  gli (= 2.10.0)
@@ -34,8 +34,13 @@ module Bebox
34
34
 
35
35
  # Create checkpoints base directories
36
36
  def create_checkpoints
37
- `cd #{self.project_root} && mkdir -p .checkpoints/environments/#{self.name}/{nodes,prepared_nodes,steps}`
38
- (0..3).each{|i| `cd #{self.project_root} && mkdir -p .checkpoints/environments/#{self.name}/steps/step-#{i}`}
37
+ Bebox::Environment.create_checkpoint_directories(project_root, name)
38
+ end
39
+
40
+ # Create checkpoints base directories
41
+ def self.create_checkpoint_directories(project_root, environment)
42
+ `cd #{project_root} && mkdir -p .checkpoints/environments/#{environment}/{nodes,prepared_nodes,steps}`
43
+ (0..3).each{|i| `cd #{project_root} && mkdir -p .checkpoints/environments/#{environment}/steps/step-#{i}`}
39
44
  end
40
45
 
41
46
  # Remove checkpoints base directories
@@ -47,6 +52,7 @@ module Bebox
47
52
  def create_capistrano_base
48
53
  # Create keys directory for environment
49
54
  `cd #{self.project_root} && mkdir -p config/keys/environments/#{self.name}`
55
+ `cd #{self.project_root}/config/keys/environments/#{self.name} && touch .keep`
50
56
  # Create ssh key for puppet user if environment is vagrant
51
57
  generate_puppet_user_keys('vagrant') if self.name == 'vagrant'
52
58
  end
@@ -74,6 +74,7 @@ module Bebox
74
74
  def create_prepare_checkpoint(started_at)
75
75
  self.started_at = started_at
76
76
  self.finished_at = DateTime.now.to_s
77
+ Bebox::Environment.create_checkpoint_directories(project_root, environment)
77
78
  generate_file_from_template("#{Bebox::FilesHelper::templates_path}/node/prepared_node.yml.erb", "#{self.project_root}/.checkpoints/environments/#{self.environment}/prepared_nodes/#{self.hostname}.yml", {node: self})
78
79
  end
79
80
 
@@ -105,6 +106,7 @@ module Bebox
105
106
  # Set the creation time for the node
106
107
  self.created_at = DateTime.now.to_s
107
108
  # Create the checkpoint file from template
109
+ Bebox::Environment.create_checkpoint_directories(project_root, environment)
108
110
  generate_file_from_template("#{Bebox::FilesHelper::templates_path}/node/node.yml.erb", "#{project_root}/.checkpoints/environments/#{environment}/nodes/#{hostname}.yml", {node: self})
109
111
  end
110
112
 
@@ -74,6 +74,7 @@ module Bebox
74
74
 
75
75
  # Clean a path to make it valid
76
76
  def self.cleanpath(path_name)
77
+ return path_name if path_name.empty?
77
78
  valid_path = Pathname.new(path_name).cleanpath.to_path.split('/').reject{|c| c.empty? }
78
79
  return valid_path.nil? ? '' : valid_path.join('/')
79
80
  end
@@ -154,7 +154,10 @@ module Bebox
154
154
 
155
155
  # Generate steps directories
156
156
  def generate_steps_directories
157
- Bebox::PROVISION_STEP_NAMES.each{|step| `cd #{self.path} && mkdir -p puppet/steps/#{step}/{hiera/data,manifests,modules}`}
157
+ Bebox::PROVISION_STEP_NAMES.each do |step|
158
+ `cd #{self.path} && mkdir -p puppet/steps/#{step}/{hiera/data,manifests,modules}`
159
+ `cd puppet/steps/#{step}/modules && touch .keep`
160
+ end
158
161
  `cd #{self.path} && mkdir -p puppet/{roles,profiles}`
159
162
  end
160
163
 
@@ -185,6 +185,7 @@ module Bebox
185
185
  def create_step_checkpoint(started_at)
186
186
  self.node.started_at = started_at
187
187
  self.node.finished_at = DateTime.now.to_s
188
+ Bebox::Environment.create_checkpoint_directories(project_root, environment)
188
189
  generate_file_from_template("#{Bebox::FilesHelper::templates_path}/node/provisioned_node.yml.erb", "#{self.project_root}/.checkpoints/environments/#{self.environment}/steps/#{self.step}/#{self.node.hostname}.yml", {node: self.node})
189
190
  end
190
191
 
@@ -1,3 +1,3 @@
1
1
  module Bebox
2
- VERSION = '0.1.4'
2
+ VERSION = '0.1.5'
3
3
  end
@@ -1,7 +1,8 @@
1
1
  .vagrant/
2
2
  .bundle/
3
3
  .checkpoints/
4
- config/keys/
4
+ config/keys/**/id_rsa
5
+ config/keys/**/id_rsa.pub
5
6
  <% steps.each do |step_name| %>
6
7
  puppet/steps/<%=step_name%>/hiera/data/
7
8
  <% end %>
File without changes
@@ -1,7 +1,8 @@
1
1
  .vagrant/
2
2
  .bundle/
3
3
  .checkpoints/
4
- config/keys/
4
+ config/keys/**/id_rsa
5
+ config/keys/**/id_rsa.pub
5
6
  puppet/steps/0-fundamental/hiera/data/
6
7
  puppet/steps/1-users/hiera/data/
7
8
  puppet/steps/2-services/hiera/data/
@@ -12,12 +12,12 @@ describe 'Test 01: Bebox::ProjectWizard' do
12
12
  let(:project_name) { 'bebox-pname' }
13
13
  let(:parent_path) { "#{Dir.pwd}/tmp" }
14
14
  let(:http_box_uri) {'http://puppet-vagrant-boxes.puppetlabs.com/ubuntu-server-12042-x64-vbox4210-nocm.box'}
15
- let(:local_box_uri) {"#{Dir.pwd}/spec/fixtures/test_box.box"}
15
+ let(:local_box_uri) {"#{Dir.pwd}/spec/fixtures/box.test"}
16
16
  let(:bebox_boxes_path) {File.expand_path(Bebox::ProjectWizard::BEBOX_BOXES_PATH)}
17
17
 
18
18
  before :all do
19
19
  `mkdir -p #{bebox_boxes_path}/tmp`
20
- `rm #{bebox_boxes_path}/test_box.box`
20
+ `rm #{bebox_boxes_path}/box.test`
21
21
  `rm -rf #{Dir.pwd}/tmp/bebox-pname`
22
22
  end
23
23
 
@@ -26,7 +26,7 @@ describe 'Test 01: Bebox::ProjectWizard' do
26
26
  end
27
27
 
28
28
  after :all do
29
- `rm #{bebox_boxes_path}/test_box.box`
29
+ `rm #{bebox_boxes_path}/box.test`
30
30
  end
31
31
 
32
32
  it 'not create a project that already exist' do
@@ -38,8 +38,8 @@ describe 'Test 01: Bebox::ProjectWizard' do
38
38
  it 'creates a project with wizard' do
39
39
  Bebox::Project.any_instance.stub(:create) { true }
40
40
  subject.stub(:bebox_boxes_setup)
41
- subject.stub(:choose_box) { 'test_box.box' }
42
- subject.stub(:get_valid_box_uri) { 'test_box.box' }
41
+ subject.stub(:choose_box) { 'box.test' }
42
+ subject.stub(:get_valid_box_uri) { 'box.test' }
43
43
  subject.stub(:choose_option) { 'virtualbox' }
44
44
  $stdin.stub(:gets).and_return('1')
45
45
  output = subject.create_new_project(project_name)
@@ -59,13 +59,13 @@ describe 'Test 01: Bebox::ProjectWizard' do
59
59
 
60
60
  it 'chooses a box from a menu' do
61
61
  $stdin.stub(:gets).and_return('1')
62
- output = subject.choose_box(['test_box.box'])
63
- expect(output).to eq('test_box.box')
62
+ output = subject.choose_box(['box.test'])
63
+ expect(output).to eq('box.test')
64
64
  end
65
65
 
66
66
  it 'not chooses a box from a menu' do
67
67
  $stdin.stub(:gets).and_return('2')
68
- output = subject.choose_box(['test_box.box'])
68
+ output = subject.choose_box(['box.test'])
69
69
  expect(output).to eq(nil)
70
70
  end
71
71
 
@@ -105,7 +105,7 @@ describe 'Test 01: Bebox::ProjectWizard' do
105
105
 
106
106
  it 'links to a local file box' do
107
107
  subject.set_box(local_box_uri)
108
- expect(File.symlink?("#{bebox_boxes_path}/test_box.box")).to eq(true)
108
+ expect(File.symlink?("#{bebox_boxes_path}/box.test")).to eq(true)
109
109
  end
110
110
 
111
111
  it 'checks for a local file box existence' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bebox
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Codescrum
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-12 00:00:00.000000000 Z
11
+ date: 2014-09-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -345,6 +345,7 @@ files:
345
345
  - spec/factories/role.rb
346
346
  - spec/fixtures/Capfile.test
347
347
  - spec/fixtures/Gemfile.test
348
+ - spec/fixtures/box.test
348
349
  - spec/fixtures/commands/environment_help.erb.test
349
350
  - spec/fixtures/commands/general_help.erb.test
350
351
  - spec/fixtures/commands/in_project_help.erb.test