bard 0.8.10 → 0.8.11

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.8.10
1
+ 0.8.11
data/bard.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{bard}
8
- s.version = "0.8.10"
8
+ s.version = "0.8.11"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Micah Geisel", "Nick Hogle"]
@@ -68,3 +68,27 @@ Feature: Bard can check its environment for missing dependencies and potential p
68
68
  And the integration branch isnt tracking origin/integration
69
69
  When I type "bard check"
70
70
  Then I should see the fatal error "tracking"
71
+
72
+ Scenario: Bard check detects gitignored Capfile
73
+ Given a shared rails project
74
+ And the ".gitignore" file includes "Capfile"
75
+ When I type "bard check"
76
+ Then I should see the fatal error "Capfile should not be gitignored"
77
+
78
+ Scenario: Bard check detects gitignored config/deploy.rb
79
+ Given a shared rails project
80
+ And the ".gitignore" file includes "config/deploy.rb"
81
+ When I type "bard check"
82
+ Then I should see the fatal error "config/deploy.rb should not be gitignored"
83
+
84
+ Scenario: Bard check detects missing bard rake tasks
85
+ Given a shared rails project
86
+ And the "Rakefile" file does not include "bard/rake"
87
+ When I type "bard check"
88
+ Then I should see the fatal error "missing bard rake tasks"
89
+
90
+ Scenario: Bard check detects missing bard cap tasks
91
+ Given a shared rails project
92
+ And the "Capfile" file does not include "bard/capistrano"
93
+ When I type "bard check"
94
+ Then I should see the fatal error "missing bard capistrano tasks"
@@ -34,3 +34,11 @@ end
34
34
  Then /^passenger should have been restarted$/ do
35
35
  File.exist?("tmp/restart.txt").should be_true
36
36
  end
37
+
38
+ Given /^the "([^\"]+)" file includes "([^\"]+)"$/ do |file, contents|
39
+ file_append file, contents
40
+ end
41
+
42
+ Given /^the "([^\"]+)" file does not include "([^\"]+)"$/ do |file, contents|
43
+ gsub_file file, contents, ""
44
+ end
@@ -11,6 +11,10 @@ def type(command)
11
11
  @stdout || @stderr
12
12
  end
13
13
 
14
+ def file_append(file_name, contents)
15
+ File.open(file_name, 'ab') { |file| file.puts("\n#{contents}") }
16
+ end
17
+
14
18
  def file_inject(file_name, sentinel, string, before_after=:after)
15
19
  gsub_file file_name, /(#{Regexp.escape(sentinel)})/mi do |match|
16
20
  if before_after == :after
data/lib/bard/check.rb CHANGED
@@ -62,6 +62,11 @@ class Bard < Thor
62
62
  errors << "integration branch isnt tracking the remote integration branch, please run `grb track integration`" if `git config branch.integration.merge` !~ %r%\brefs/heads/integration\b%
63
63
  end
64
64
  errors << "you shouldn't be working on the master branch, please work on the integration branch" if current_branch == "master"
65
+
66
+ errors << "Capfile should not be gitignored" if File.read(".gitignore") =~ /\bCapfile\b/
67
+ errors << "config/deploy.rb should not be gitignored" if File.read(".gitignore") =~ /\bconfig\/deploy\.rb\b/
68
+ errors << "missing bard rake tasks, please complain to micah" if File.read("Rakefile") !~ /\bbard\/rake\b/
69
+ errors << "missing bard capistrano tasks, please complain to micah" if File.read("Capfile") !~ /\bbard\/capistrano\b/
65
70
  end
66
71
 
67
72
  if not errors.empty?
@@ -14,6 +14,7 @@ plugin 'asset_packager', :git => 'git://github.com/sbecker/asset_packager.git'
14
14
  #plugin 'fckeditor', :git => 'git://github.com/originofstorms/fckeditor.git'
15
15
 
16
16
  # Install gems
17
+ gem "bard"
17
18
  gem "haml", :version => "2.2.17"
18
19
  gem "compass", :version => "0.8.17"
19
20
  rake "gems:install"
@@ -44,14 +45,6 @@ END
44
45
  rake "db:create"
45
46
  rake "db:migrate"
46
47
 
47
- # Restart task
48
- file "lib/tasks/restart.rake", <<-END
49
- task :restart do
50
- system("touch tmp/restart.txt")
51
- system("touch tmp/debug.txt") if ENV["DEBUG"] == 'true'
52
- end
53
- END
54
-
55
48
  # Staging Environment
56
49
  run "cp config/environments/development.rb config/environments/staging.rb"
57
50
 
@@ -184,6 +177,13 @@ public/stylesheets/*.css
184
177
  END
185
178
 
186
179
  # Deployment and staging setup
180
+ file_append "Rakefile", <<-END
181
+
182
+ begin
183
+ require 'bard/rake'
184
+ rescue LoadError; end
185
+ END
186
+
187
187
  file "Capfile", <<-END
188
188
  Dir['vendor/plugins/*/recipes/*.rb'].each { |plugin| load(plugin) }
189
189
  require 'bard/capistrano'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bard
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.10
4
+ version: 0.8.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Micah Geisel