instigator 0.9 → 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,3 @@
1
1
  module Instigator
2
- VERSION = "0.9"
2
+ VERSION = "0.9.1"
3
3
  end
data/lib/jenkins.rb CHANGED
@@ -11,7 +11,9 @@ class Jenkins < Thor
11
11
 
12
12
  desc "preflight", "Check for dependencies"
13
13
  def preflight
14
- jenkins_password && jenkins_user
14
+ jenkins_password
15
+ jenkins_user
16
+ jenkins_server =~ /^http/ or abort "jenkins_server must be a fully qualified http or https URL" # sanity check
15
17
  end
16
18
 
17
19
 
data/lib/rails.rb ADDED
@@ -0,0 +1,44 @@
1
+ $LOAD_PATH << File.join(File.dirname(__FILE__), '..', 'lib')
2
+ require 'instigator/util'
3
+ require 'git_config'
4
+ require 'thor'
5
+
6
+ # TODO abstract out the heroku stuff
7
+ class Rails < Thor
8
+ include GitConfig
9
+ include Thor::Actions
10
+
11
+ argument :name
12
+
13
+ def self.source_root
14
+ File.join(File.dirname(__FILE__), '..', 'templates', 'rails')
15
+ end
16
+
17
+ desc "preflight", "Check for preconditions"
18
+ def preflight
19
+ # bit rough and ready, but no heroku api for querying
20
+ # app namespace
21
+ abort "#{name} is already taken on heroku" unless
22
+ HTTParty.get("http://#{name}.heroku.com").code == 404
23
+
24
+ # these will abort anyway.
25
+ author && email
26
+ end
27
+
28
+ desc "setup", "set up a rails-on-heroku project"
29
+ def setup
30
+
31
+ guarded "git clone git://github.com/mwotton/railstemplate.git #{name}"
32
+ guarded "rm #{name}/config/database.yml"
33
+ template "database_yml.tt", "#{name}/config/database.yml"
34
+ Dir.chdir name do
35
+ system "git remote rm origin 2>/dev/null >/dev/null" # hide the evidence
36
+ guarded "heroku create #{name}"
37
+ File.open("runtests.sh", "w") do |f|
38
+ f.write "bundle exec rspec spec"
39
+ end
40
+ end
41
+ end
42
+
43
+ end
44
+
@@ -0,0 +1,15 @@
1
+ development:
2
+ adapter: postgresql
3
+ database: <%=name%>_dev
4
+
5
+ # Warning: The database defined as "test" will be erased and
6
+ # re-generated from your development database when you run "rake".
7
+ # Do not set this db to the same as development or production.
8
+ test:
9
+ adapter: postgresql
10
+ database: <%=name%>_test
11
+
12
+ production:
13
+ adapter: postgresql
14
+ database: <%=name%>_prod
15
+
metadata CHANGED
@@ -1,11 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: instigator
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 57
4
5
  prerelease: false
5
6
  segments:
6
7
  - 0
7
8
  - 9
8
- version: "0.9"
9
+ - 1
10
+ version: 0.9.1
9
11
  platform: ruby
10
12
  authors:
11
13
  - Mark Wotton
@@ -13,7 +15,7 @@ autorequire:
13
15
  bindir: bin
14
16
  cert_chain: []
15
17
 
16
- date: 2011-05-08 00:00:00 +10:00
18
+ date: 2011-05-10 00:00:00 +10:00
17
19
  default_executable:
18
20
  dependencies:
19
21
  - !ruby/object:Gem::Dependency
@@ -24,6 +26,7 @@ dependencies:
24
26
  requirements:
25
27
  - - ">="
26
28
  - !ruby/object:Gem::Version
29
+ hash: 15424057
27
30
  segments:
28
31
  - 1
29
32
  - 0
@@ -41,6 +44,7 @@ dependencies:
41
44
  requirements:
42
45
  - - ">="
43
46
  - !ruby/object:Gem::Version
47
+ hash: 3
44
48
  segments:
45
49
  - 0
46
50
  version: "0"
@@ -54,6 +58,7 @@ dependencies:
54
58
  requirements:
55
59
  - - ">="
56
60
  - !ruby/object:Gem::Version
61
+ hash: 3
57
62
  segments:
58
63
  - 0
59
64
  version: "0"
@@ -67,6 +72,7 @@ dependencies:
67
72
  requirements:
68
73
  - - ">="
69
74
  - !ruby/object:Gem::Version
75
+ hash: 3
70
76
  segments:
71
77
  - 0
72
78
  version: "0"
@@ -80,6 +86,7 @@ dependencies:
80
86
  requirements:
81
87
  - - ">="
82
88
  - !ruby/object:Gem::Version
89
+ hash: 3
83
90
  segments:
84
91
  - 0
85
92
  version: "0"
@@ -93,6 +100,7 @@ dependencies:
93
100
  requirements:
94
101
  - - ">="
95
102
  - !ruby/object:Gem::Version
103
+ hash: 3
96
104
  segments:
97
105
  - 0
98
106
  version: "0"
@@ -106,6 +114,7 @@ dependencies:
106
114
  requirements:
107
115
  - - ">="
108
116
  - !ruby/object:Gem::Version
117
+ hash: 3
109
118
  segments:
110
119
  - 0
111
120
  version: "0"
@@ -119,6 +128,7 @@ dependencies:
119
128
  requirements:
120
129
  - - ">="
121
130
  - !ruby/object:Gem::Version
131
+ hash: 3
122
132
  segments:
123
133
  - 0
124
134
  version: "0"
@@ -151,12 +161,14 @@ files:
151
161
  - lib/instigator/util.rb
152
162
  - lib/instigator/version.rb
153
163
  - lib/jenkins.rb
164
+ - lib/rails.rb
154
165
  - lib/sinatra.rb
155
166
  - tasks/app.thor
156
167
  - templates/README.tt
157
168
  - templates/cabal.tt
158
169
  - templates/config_xml.tt
159
170
  - templates/module.tt
171
+ - templates/rails/database_yml.tt
160
172
  - templates/test.tt
161
173
  - templates/watchr.tt
162
174
  has_rdoc: true
@@ -173,6 +185,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
173
185
  requirements:
174
186
  - - ">="
175
187
  - !ruby/object:Gem::Version
188
+ hash: 3
176
189
  segments:
177
190
  - 0
178
191
  version: "0"
@@ -181,6 +194,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
181
194
  requirements:
182
195
  - - ">="
183
196
  - !ruby/object:Gem::Version
197
+ hash: 23
184
198
  segments:
185
199
  - 1
186
200
  - 3