borg-rb 0.0.2 → 0.0.3

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,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MWM1NWU1YWYzZGJmYjE1Y2NiNWU3NjllOTU3MDgyMTdiOTA0NzFlMQ==
4
+ NjdkOGNhMjJlZGQwOTc2NTVhZjMzYTkwODdlMDVjZWM1M2ExYjRlZA==
5
5
  data.tar.gz: !binary |-
6
- ZWVkNGIxM2VlZjE1NGU2YTI1MDNmYjM0NWJlMGExY2U3YTlmZTMxMA==
6
+ OWEzNzg2OGIxNDE2YjdlNTM5NjE3Zjc5ZmFiMjZmNGFhZDlmOGZlOQ==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- ZTFmNjM3Mjc0MmU2ZDFmOTNhNDY2NzQ3NWY3ZTQ0ODNiMDRjMzdjYjFiYWUx
10
- MzBmM2I2MDkyMzI0YTQ0OTZlMGYwOWQ5ODQ3ZTdlM2Y4NjA5YzRjZmE4M2Rk
11
- MDYyMmEwZjMxMDQ2YTgzZTJmZTIyNTRjZjdlZTQ1MTlkNjk3OTY=
9
+ Nzg3Y2QyMzhjYWZjZDQ1Zjc2ZWYyYzg1OGUxZmE2YmIwYzRiY2I5NWE4ZjJl
10
+ YjVkNTdkZTBiMWRkNDc2YmIxZTMzZTJlNTdjOTY4M2U2MWNhNzU1ZjQ5Yzgz
11
+ MTA4YmZmNDUwNTdjZWJjNjllYzMzMzUxMzVhMDk3MDQ4MDVjNGQ=
12
12
  data.tar.gz: !binary |-
13
- M2E4OTY5ZmFhMzFlMTYxMjFiZWY2ZmRhNDJlMWFmNmY4NDVmOGRjYjM2ZWFh
14
- Mzg2NDBmMDAyZGFlODNmOWU2YmIxOTMyYjMwNjkxYzM2ZTc0MmYwZTdjMzU4
15
- ZjBjZGFhMDA4ZjQwMzVmMzA2ODJhMDE2ODc0ODQxNzNkMTRhMWM=
13
+ NmRlNWFlMGI5MGUwYjQ5MTJhM2I1YjQ3MGU3MDdlMDVmMDU5ZjAxODM5NjBk
14
+ NzRhNWViNzQ5NWRlNWIyNmMxYmU5NTA4NDE4MzExOWRlODhmNGJjMDYyODUy
15
+ ZjMxMDVkZjFjMjZjMjRlODQ5NzNlYTYzZDdjN2I1ZmE2NjU3NmI=
data/.gitignore CHANGED
@@ -6,6 +6,7 @@ Gemfile.lock
6
6
  InstalledFiles
7
7
  coverage
8
8
  lib/bundler/man
9
+ vender/bundle
9
10
  pkg
10
11
  rdoc
11
12
  spec/reports
@@ -14,7 +15,10 @@ test/version_tmp
14
15
  tmp
15
16
 
16
17
  # Local Ruby Dev Configs
18
+ # Why? We aren't tied to a specific ruby version, should work on 1.9, 2.0, jruby, etc...
19
+ # Let our travis config dictate what ruby to run our gem in.
17
20
  .rvmrc
21
+ .ruby-version
18
22
 
19
23
  # YARD artifacts
20
24
  .yardoc
data/CHANGELOG.md CHANGED
@@ -1,8 +1,9 @@
1
1
  ## Current (Unreleased)
2
2
 
3
- ## 0.0.2 / 3-22-2013
3
+ ## 0.0.3 / 3-22-2013
4
4
 
5
- * Fix load problem in Capfile in generated skeleton
5
+ * Fix load problem in Capfile in generated skeleton (0.0.2)
6
+ * Change load borg-rb to a require
6
7
 
7
8
 
8
9
  ## 0.0.1 / 3-21-2013
data/Capfile CHANGED
@@ -1 +1 @@
1
- load 'lib/borg'
1
+ require 'borg-rb'
data/README.md CHANGED
@@ -36,9 +36,8 @@ my-deployer-package
36
36
  # runs on :exit events when ctrl-c is hit
37
37
  # set :borg_sigint_triggers_exit, true
38
38
 
39
- load 'borg'
40
- # load any other borg gems here.
41
- # NOTE: require ends up causing the initializers to be called every time a config is loaded.
39
+ require 'borg-rb'
40
+ # require any other borg gems here.
42
41
 
43
42
  ```
44
43
 
data/bin/borg CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  require 'capistrano/cli'
4
4
  require 'borg/cli/applications'
5
+ require 'borg/cli/assimilator'
5
6
  require 'borg/configuration/applications'
6
7
  require 'borg/configuration/stages'
7
8
  require 'borg/configuration/assimilator'
data/bin/borgify CHANGED
@@ -10,7 +10,13 @@ if ARGV.empty? or plugin
10
10
  FileUtils.cp_r("#{skeleton_dir}/.", ".")
11
11
 
12
12
  puts "Creating lib/#{gem_name}.rb"
13
- File.open("lib/#{gem_name}.rb", 'w') { |file| file.write("assimilate '#{gem_name}'") }
13
+ File.open("lib/#{gem_name}.rb", 'w') do |file|
14
+ file.write(<<-GEMRB)
15
+ Capistrano::Configuration.instance(:must_exist).load do
16
+ assimilate "#{gem_name}"
17
+ end
18
+ GEMRB
19
+ end
14
20
 
15
21
  puts "Removing unnecessary files and folders"
16
22
  if plugin
@@ -0,0 +1,17 @@
1
+ module Borg
2
+ module CLI
3
+ module Assimilator
4
+ def self.included(base) #:nodoc:
5
+ base.send :alias_method, :execute_requested_actions_without_assimilator, :execute_requested_actions
6
+ base.send :alias_method, :execute_requested_actions, :execute_requested_actions_with_assimilator
7
+ end
8
+
9
+ def execute_requested_actions_with_assimilator(config)
10
+ config.assimilate!
11
+ execute_requested_actions_without_assimilator config
12
+ end
13
+ end
14
+ end
15
+ end
16
+
17
+ Capistrano::CLI.send :include, Borg::CLI::Assimilator
@@ -2,11 +2,18 @@ module Borg
2
2
  module Configuration
3
3
  module Assimilator
4
4
  def assimilate gem_name
5
- gem_home = Gem::Specification.find_by_name(gem_name).gem_dir
6
- Dir["#{gem_home}/cap/initializers/**/*.rb"].each do |file|
7
- load file
5
+ @to_assimilate ||= {}
6
+ @to_assimilate[gem_name] = Gem::Specification.find_by_name(gem_name).gem_dir
7
+ end
8
+
9
+ def assimilate!
10
+ @to_assimilate ||= {}
11
+ @to_assimilate.each do |gem_name, gem_home|
12
+ Dir["#{gem_home}/cap/initializers/**/*.rb"].each do |file|
13
+ load file
14
+ end
15
+ @load_paths << "#{gem_home}/cap"
8
16
  end
9
- @load_paths << "#{gem_home}/cap"
10
17
  end
11
18
  end
12
19
  end
data/lib/borg/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Borg
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
data/lib/borg-rb.rb ADDED
@@ -0,0 +1,10 @@
1
+ # source capistrano/deploy.rb
2
+ Capistrano::Configuration.instance(:must_exist).load do
3
+ def _cset(name, *args, &block)
4
+ unless exists?(name)
5
+ set(name, *args, &block)
6
+ end
7
+ end
8
+
9
+ assimilate "borg-rb"
10
+ end
data/skeleton/Capfile CHANGED
@@ -4,7 +4,6 @@
4
4
  # runs on :exit events when ctrl-c is hit
5
5
  # set :borg_sigint_triggers_exit, true
6
6
 
7
- load "#{Gem::Specification.find_by_name('borg-rb').gem_dir}/lib/borg.rb"
7
+ require "borg-rb"
8
8
 
9
- # load any other borg gems here.
10
- # NOTE: require ends up causing the initializers to be called every time a config is loaded.
9
+ # require any other borg gems here.
File without changes
@@ -0,0 +1,17 @@
1
+ require 'spec_helper'
2
+
3
+ describe "borgify plugin" do
4
+ include_context "acceptance"
5
+
6
+ before do
7
+ assert_execute("borgify", "plugin")
8
+ @workdir = environment.workdir_path
9
+ end
10
+
11
+ it "creates the right files and directories" do
12
+ # the gemspec
13
+ directory_name = File.basename(@workdir = environment.workdir_path)
14
+ gemspec = @workdir = environment.workdir_path.join("#{directory_name}.gemspec")
15
+ expect(gemspec.file?).to be_true
16
+ end
17
+ end
@@ -1,4 +1,4 @@
1
- require 'acceptance_spec_helper'
1
+ require 'spec_helper'
2
2
 
3
3
  describe "borgify" do
4
4
  include_context "acceptance"
@@ -11,39 +11,24 @@ describe "borgify" do
11
11
  it "creates the right files and directories" do
12
12
  # Gemfile
13
13
  gemfile = @workdir.join("Gemfile")
14
- expect(gemfile.exist?).to be_true
15
- expect(gemfile.read).to match(/^source "https:\/\/rubygems.org"$/)
16
- expect(gemfile.read).to match(/borg-rb/)
14
+ expect(gemfile.file?).to be_true
15
+ gemfile_contents = gemfile.read
16
+ expect(gemfile_contents).to match(/^source "https:\/\/rubygems.org"$/)
17
+ expect(gemfile_contents).to match(/borg-rb/)
17
18
 
18
19
  # Capfile
19
20
  capfile = @workdir.join("Capfile")
20
- expect(capfile.exist?).to be_true
21
+ expect(capfile.file?).to be_true
21
22
 
22
23
  # lib directory
23
24
  capfile = @workdir.join("lib")
24
- expect(capfile.exist?).to be_true
25
+ expect(capfile.directory?).to be_true
25
26
 
26
27
  # cap directory with the subdirectories: applications, initializers, recipes
27
28
  cap_dir = @workdir.join("cap")
28
- expect(cap_dir.exist?).to be_true
29
- expect(cap_dir.join("applications")).to be_true
30
- expect(cap_dir.join("initializers")).to be_true
31
- expect(cap_dir.join("recipes")).to be_true
29
+ expect(cap_dir.directory?).to be_true
30
+ expect(cap_dir.join("applications").directory?).to be_true
31
+ expect(cap_dir.join("initializers").directory?).to be_true
32
+ expect(cap_dir.join("recipes").directory?).to be_true
32
33
  end
33
34
  end
34
-
35
- describe "borgify plugin" do
36
- include_context "acceptance"
37
-
38
- before do
39
- assert_execute("borgify", "plugin")
40
- @workdir = environment.workdir_path
41
- end
42
-
43
- it "creates the right files and directories" do
44
- # the gemspec
45
- directory_name = File.basename(@workdir = environment.workdir_path)
46
- gemspec = @workdir = environment.workdir_path.join("#{directory_name}.gemspec")
47
- expect(gemspec.exist?).to be_true
48
- end
49
- end
@@ -6,18 +6,30 @@ describe Borg::Configuration::Assimilator do
6
6
  Capistrano::Configuration.new.should respond_to :assimilate
7
7
  end
8
8
 
9
- context "when assimilate('borg') is called" do
9
+ context "when #assimilate('borg-rb') is called" do
10
10
  subject { Capistrano::Configuration.new }
11
+ it "should add to the to_assimilate list" do
12
+ lambda {subject.assimilate('borg-rb')}.should change {subject.instance_eval("@to_assimilate")}.from(nil).to({'borg-rb' => Gem::Specification.find_by_name('borg-rb').gem_dir})
13
+ end
14
+ end
15
+
16
+ context "when #assimilate! is called" do
17
+ before do
18
+ @config = Capistrano::Configuration.new
19
+ @config.assimilate('borg-rb')
20
+ end
21
+
22
+ subject { @config }
11
23
  it "should loads all the initializers" do
12
24
  Dir["cap/initializers/**/*.rb"].each do |file|
13
25
  subject.should_receive(:load).with(File.expand_path(file))
14
26
  end
15
- subject.assimilate ('borg-rb')
27
+ subject.assimilate!
16
28
  end
17
29
 
18
30
  it "should add the cap directory to teh load path" do
19
31
  Dir.stub("[]").and_return([])
20
- lambda { subject.assimilate ('borg-rb') }.should change(subject.load_paths, :count).by 1
32
+ lambda { subject.assimilate! }.should change(subject.load_paths, :count).by 1
21
33
  end
22
34
  end
23
35
  end
data/spec/spec_helper.rb CHANGED
@@ -1,2 +1,17 @@
1
1
  require 'capistrano/cli'
2
2
  require 'yaml'
3
+
4
+ Dir["./spec/support/**/*.rb"].sort.each { |f| require f }
5
+
6
+ RSpec.configure do |config|
7
+ config.treat_symbols_as_metadata_keys_with_true_values = true
8
+ config.run_all_when_everything_filtered = true
9
+ config.filter_run :focus
10
+
11
+ # Run specs in random order to surface order dependencies. If you find an
12
+ # order dependency and want to debug it, you can fix the order by providing
13
+ # the seed, which is printed after each run.
14
+ # --seed 1234
15
+ config.order = 'random'
16
+
17
+ end
@@ -21,7 +21,6 @@ shared_context "acceptance" do
21
21
  def assert_execute(*args, &block)
22
22
  result = execute(*args, &block)
23
23
  expect(result).to succeed
24
- #assert(result.exit_code == 0, "expected '#{args.join(" ")}' to succeed")
25
24
  result
26
25
  end
27
26
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: borg-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Identified
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-03-23 00:00:00.000000000 Z
11
+ date: 2013-03-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capistrano
@@ -118,8 +118,9 @@ files:
118
118
  - cap/initializers/performance.rb
119
119
  - cap/initializers/role_reset.rb
120
120
  - cap/initializers/sigint.rb
121
- - lib/borg.rb
121
+ - lib/borg-rb.rb
122
122
  - lib/borg/cli/applications.rb
123
+ - lib/borg/cli/assimilator.rb
123
124
  - lib/borg/configuration/applications.rb
124
125
  - lib/borg/configuration/assimilator.rb
125
126
  - lib/borg/configuration/stages.rb
@@ -131,11 +132,11 @@ files:
131
132
  - skeleton/Gemfile
132
133
  - skeleton/cap/applications/.gitkeep
133
134
  - skeleton/cap/initializers/.gitkeep
134
- - skeleton/cap/recipies/.gitkeep
135
+ - skeleton/cap/recipes/.gitkeep
135
136
  - skeleton/lib/.gitkeep
136
137
  - skeleton/mygem.gemspec.skeleton
138
+ - spec/acceptance/borgify_plugin_spec.rb
137
139
  - spec/acceptance/borgify_spec.rb
138
- - spec/acceptance_spec_helper.rb
139
140
  - spec/lib/borg/cli/applications_spec.rb
140
141
  - spec/lib/borg/configuration/applications_spec.rb
141
142
  - spec/lib/borg/configuration/assimilator_spec.rb
@@ -172,8 +173,8 @@ signing_key:
172
173
  specification_version: 4
173
174
  summary: Ruby-based software provisioning and deployment framework
174
175
  test_files:
176
+ - spec/acceptance/borgify_plugin_spec.rb
175
177
  - spec/acceptance/borgify_spec.rb
176
- - spec/acceptance_spec_helper.rb
177
178
  - spec/lib/borg/cli/applications_spec.rb
178
179
  - spec/lib/borg/configuration/applications_spec.rb
179
180
  - spec/lib/borg/configuration/assimilator_spec.rb
data/lib/borg.rb DELETED
@@ -1,8 +0,0 @@
1
- # source capistrano/deploy.rb
2
- def _cset(name, *args, &block)
3
- unless exists?(name)
4
- set(name, *args, &block)
5
- end
6
- end
7
-
8
- assimilate "borg-rb"
@@ -1,16 +0,0 @@
1
- require 'spec_helper'
2
-
3
- Dir["./spec/support/**/*.rb"].sort.each { |f| require f }
4
-
5
- RSpec.configure do |config|
6
- config.treat_symbols_as_metadata_keys_with_true_values = true
7
- config.run_all_when_everything_filtered = true
8
- config.filter_run :focus
9
-
10
- # Run specs in random order to surface order dependencies. If you find an
11
- # order dependency and want to debug it, you can fix the order by providing
12
- # the seed, which is printed after each run.
13
- # --seed 1234
14
- config.order = 'random'
15
-
16
- end