jetfuel 1.19.3 → 1.19.4

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: 0f74479dce1eafb13325b2c0ce039f781e22bd42
4
- data.tar.gz: 7903fd249de125d82cc368d63616c82c255ab83e
3
+ metadata.gz: 4f3c06d2343e89b706c0794caa780d614a50849e
4
+ data.tar.gz: 56e16154ee4c869dbbd215e03fe41dc4c6708eeb
5
5
  SHA512:
6
- metadata.gz: 115ecabff3f03ed4e33a037f605719238f313c1b88e94324f820bb9b1d148b6fa57bcc355168bc932f6e2200bcaffe37b6e128130ceaa92a70d39fa306ca01fc
7
- data.tar.gz: 269e856bf373bc22c0a06560eb1152e38faa41e816a7fae4ff149813c35d3fbfc69abcdbd92f78e3ed4c12c11ef58e0220d870d64225c1f95cc9010faca3c642
6
+ metadata.gz: 244a9422674fccbae63e493930d8b04c07b0ab26af15c61eb19e6311ca6e0a17b01f5e4900fe49a1e995b3928b347b74bffc57a204b41d0ea964dcec5de5446d
7
+ data.tar.gz: e2e5fad74d933b174f2e1e9cde8746c4d24b676b00afd4d771ef83e882b161db500006d8a6e68f2e372a75b5ffa5520e544fa68635a6a77d09d6e10b1b3ff166
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- jetfuel (1.19.3)
4
+ jetfuel (1.19.4)
5
5
  bundler (~> 1.3)
6
6
  rails (= 4.1.1)
7
7
 
@@ -174,6 +174,11 @@ end
174
174
  after: /group :staging, :production do/
175
175
  end
176
176
 
177
+ def setup_capistrano_specific_gems
178
+ inject_into_file 'Gemfile', "\n\s\sgem 'capistrano', '~> 3.2'\n\s\sgem 'capistrano-rails', '~> 1.1'",
179
+ after: /gem 'spring-commands-rspec'/
180
+ end
181
+
177
182
  def enable_database_cleaner
178
183
  copy_file 'database_cleaner_rspec.rb', 'spec/support/database_cleaner.rb'
179
184
  end
@@ -344,6 +349,18 @@ fi
344
349
  run "#{path_addition} heroku config:add SECRET_KEY_BASE=#{generate_secret} --remote=production"
345
350
  end
346
351
 
352
+ def copy_capistrano_configuration_files
353
+ run "mkdir -p config/deploy"
354
+ template 'Capfile', 'Capfile'
355
+ template 'cap_deploy.erb', 'config/deploy.rb'
356
+ template 'cap_staging.rb.erb', 'config/deploy/staging.rb'
357
+ template 'cap_production.rb.erb', 'config/deploy/production.rb'
358
+ run "mkdir -p lib/capistrano/tasks"
359
+
360
+ replace_in_file 'config/deploy.rb', /GITHUB_REPO/, ask("What is your github repository address?")
361
+ replace_in_file 'config/deploy/production.rb', /IP_ADDRESS/, ask("What is your app's IP address?")
362
+ end
363
+
347
364
  def create_github_repo(repo_name)
348
365
  path_addition = override_path_for_tests
349
366
  run "#{path_addition} hub create #{repo_name}"
@@ -9,6 +9,9 @@ module Jetfuel
9
9
  class_option :heroku, :type => :boolean, :aliases => '-H', :default => false,
10
10
  :desc => 'Create staging and production Heroku apps'
11
11
 
12
+ class_option :capistrano, :type => :boolean, :aliases => '-C', :default => false,
13
+ :desc => 'Install capistrano'
14
+
12
15
  class_option :github, :type => :string, :aliases => '-G', :default => nil,
13
16
  :desc => 'Create Github repository and add remote origin pointed to repo'
14
17
 
@@ -38,6 +41,7 @@ module Jetfuel
38
41
  invoke :setup_git
39
42
  invoke :setup_database
40
43
  invoke :create_heroku_apps
44
+ invoke :install_capistrano
41
45
  invoke :create_github_repo
42
46
  invoke :setup_segment_io
43
47
  invoke :install_leather
@@ -53,6 +57,10 @@ module Jetfuel
53
57
  build :setup_heroku_specific_gems
54
58
  end
55
59
 
60
+ if options[:capistrano]
61
+ build :setup_capistrano_specific_gems
62
+ end
63
+
56
64
  bundle_command 'install'
57
65
  end
58
66
 
@@ -172,6 +180,13 @@ module Jetfuel
172
180
  end
173
181
  end
174
182
 
183
+ def install_capistrano
184
+ if options[:capistrano]
185
+ say 'Installing capistrano'
186
+ build :copy_capistrano_configuration_files
187
+ end
188
+ end
189
+
175
190
  def create_github_repo
176
191
  if !options[:skip_git] && options[:github]
177
192
  say 'Creating Github repo'
@@ -1,5 +1,5 @@
1
1
  module Jetfuel
2
2
  RAILS_VERSION = '4.1.1'
3
3
  RUBY_VERSION = IO.read("#{File.dirname(__FILE__)}/../../.ruby-version").strip
4
- VERSION = '1.19.3'
4
+ VERSION = '1.19.4'
5
5
  end
data/templates/Capfile ADDED
@@ -0,0 +1,25 @@
1
+ # Load DSL and Setup Up Stages
2
+ require 'capistrano/setup'
3
+
4
+ # Includes default deployment tasks
5
+ require 'capistrano/deploy'
6
+
7
+ # Includes tasks from other gems included in your Gemfile
8
+ #
9
+ # For documentation on these, see for example:
10
+ #
11
+ # https://github.com/capistrano/rvm
12
+ # https://github.com/capistrano/rbenv
13
+ # https://github.com/capistrano/chruby
14
+ # https://github.com/capistrano/bundler
15
+ # https://github.com/capistrano/rails
16
+ #
17
+ # require 'capistrano/rvm'
18
+ # require 'capistrano/rbenv'
19
+ # require 'capistrano/chruby'
20
+ require 'capistrano/bundler'
21
+ require 'capistrano/rails/assets'
22
+ require 'capistrano/rails/migrations'
23
+
24
+ # Loads custom tasks from `lib/capistrano/tasks' if you have any defined.
25
+ Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }
@@ -0,0 +1,50 @@
1
+ # config valid only for Capistrano 3.1
2
+ lock '3.2.1'
3
+
4
+ set :application, '<%= app_name %>'
5
+ set :repo_url, 'GITHUB_REPO'
6
+
7
+ # Default branch is :master
8
+ # ask :branch, proc { `git rev-parse --abbrev-ref HEAD`.chomp }.call
9
+
10
+ # Default deploy_to directory is /var/www/my_app
11
+ set :deploy_to, "/var/www/apps/<%= app_name %>"
12
+
13
+ # Default value for :scm is :git
14
+ # set :scm, :git
15
+
16
+ # Default value for :format is :pretty
17
+ # set :format, :pretty
18
+
19
+ # Default value for :log_level is :debug
20
+ # set :log_level, :debug
21
+
22
+ # Default value for :pty is false
23
+ # set :pty, true
24
+
25
+ # Default value for :linked_files is []
26
+ # set :linked_files, %w{config/database.yml}
27
+
28
+ # Default value for linked_dirs is []
29
+ set :linked_dirs, %w{bin log pids tmp/cache tmp/sockets vendor/bundle public/system}
30
+
31
+ # Default value for default_env is {}
32
+ # set :default_env, { path: "/opt/ruby/bin:$PATH" }
33
+
34
+ # Default value for keep_releases is 5
35
+ # set :keep_releases, 5
36
+
37
+ namespace :deploy do
38
+ %w[start stop restart].each do |command|
39
+ desc "#{command} unicorn server"
40
+ task command do
41
+ on roles(:app) do |host|
42
+ execute "/etc/init.d/unicorn #{command}"
43
+ end
44
+ end
45
+ end
46
+
47
+ after :finishing, 'deploy:cleanup'
48
+ end
49
+
50
+ after 'deploy:publishing', 'deploy:restart'
@@ -0,0 +1,45 @@
1
+ # Simple Role Syntax
2
+ # ==================
3
+ # Supports bulk-adding hosts to roles, the primary server in each group
4
+ # is considered to be the first unless any hosts have the primary
5
+ # property set. Don't declare `role :all`, it's a meta role.
6
+
7
+ # role :app, %w{deploy@example.com}
8
+ # role :web, %w{deploy@example.com}
9
+ # role :db, %w{deploy@example.com}
10
+
11
+
12
+ # Extended Server Syntax
13
+ # ======================
14
+ # This can be used to drop a more detailed server definition into the
15
+ # server list. The second argument is a, or duck-types, Hash and is
16
+ # used to set extended properties on the server.
17
+
18
+ server 'IP_ADDRESS', user: 'deploy', roles: %w{web app db}
19
+
20
+
21
+ # Custom SSH Options
22
+ # ==================
23
+ # You may pass any option but keep in mind that net/ssh understands a
24
+ # limited set of options, consult[net/ssh documentation](http://net-ssh.github.io/net-ssh/classes/Net/SSH.html#method-c-start).
25
+ #
26
+ # Global options
27
+ # --------------
28
+ # set :ssh_options, {
29
+ # keys: %w(/home/rlisowski/.ssh/id_rsa),
30
+ # forward_agent: false,
31
+ # auth_methods: %w(password)
32
+ # }
33
+ #
34
+ # And/or per server (overrides global)
35
+ # ------------------------------------
36
+ # server 'example.com',
37
+ # user: 'user_name',
38
+ # roles: %w{web app},
39
+ # ssh_options: {
40
+ # user: 'user_name', # overrides user setting above
41
+ # keys: %w(/home/user_name/.ssh/id_rsa),
42
+ # forward_agent: false,
43
+ # auth_methods: %w(publickey password)
44
+ # # password: 'please use keys'
45
+ # }
@@ -0,0 +1,45 @@
1
+ # Simple Role Syntax
2
+ # ==================
3
+ # Supports bulk-adding hosts to roles, the primary server in each group
4
+ # is considered to be the first unless any hosts have the primary
5
+ # property set. Don't declare `role :all`, it's a meta role.
6
+
7
+ role :app, %w{deploy@example.com}
8
+ role :web, %w{deploy@example.com}
9
+ role :db, %w{deploy@example.com}
10
+
11
+
12
+ # Extended Server Syntax
13
+ # ======================
14
+ # This can be used to drop a more detailed server definition into the
15
+ # server list. The second argument is a, or duck-types, Hash and is
16
+ # used to set extended properties on the server.
17
+
18
+ server 'example.com', user: 'deploy', roles: %w{web app}, my_property: :my_value
19
+
20
+
21
+ # Custom SSH Options
22
+ # ==================
23
+ # You may pass any option but keep in mind that net/ssh understands a
24
+ # limited set of options, consult[net/ssh documentation](http://net-ssh.github.io/net-ssh/classes/Net/SSH.html#method-c-start).
25
+ #
26
+ # Global options
27
+ # --------------
28
+ # set :ssh_options, {
29
+ # keys: %w(/home/rlisowski/.ssh/id_rsa),
30
+ # forward_agent: false,
31
+ # auth_methods: %w(password)
32
+ # }
33
+ #
34
+ # And/or per server (overrides global)
35
+ # ------------------------------------
36
+ # server 'example.com',
37
+ # user: 'user_name',
38
+ # roles: %w{web app},
39
+ # ssh_options: {
40
+ # user: 'user_name', # overrides user setting above
41
+ # keys: %w(/home/user_name/.ssh/id_rsa),
42
+ # forward_agent: false,
43
+ # auth_methods: %w(publickey password)
44
+ # # password: 'please use keys'
45
+ # }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jetfuel
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.19.3
4
+ version: 1.19.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - FlyoverWorks
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-14 00:00:00.000000000 Z
11
+ date: 2014-07-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -143,6 +143,7 @@ files:
143
143
  - spec/support/jetfuel.rb
144
144
  - templates/.rspec
145
145
  - templates/Brewfile
146
+ - templates/Capfile
146
147
  - templates/Gemfile.erb
147
148
  - templates/Guardfile
148
149
  - templates/Procfile
@@ -156,6 +157,9 @@ files:
156
157
  - templates/application_helper.rb
157
158
  - templates/background_jobs_rspec.rb
158
159
  - templates/bin_setup
160
+ - templates/cap_deploy.erb
161
+ - templates/cap_production.erb
162
+ - templates/cap_staging.erb
159
163
  - templates/config_locales_en.yml
160
164
  - templates/database_cleaner_rspec.rb
161
165
  - templates/devise.rb