bebox 0.1.4 → 0.1.5

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.
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