ratchetify 1.0.2 → 1.0.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: afde081629aaaa295943f37ede29bf2490b0766a
4
- data.tar.gz: fed743747185f2660f79ffa135aa75bb796bb811
3
+ metadata.gz: 1a4b8fdc1b6691a5ca19a8c95f91378178668bf7
4
+ data.tar.gz: e301d5942f39c709b69c8f434dab192d63882fae
5
5
  SHA512:
6
- metadata.gz: 4a1c0bb35a467d6092a41a62bc4dc7c688c7b1df6359357b1ee2c6786b8a3d40d6fc9f5815b9acf19211232998fa93d7491f7e084c7b0edcd5a0400a1ea9abbb
7
- data.tar.gz: 07d6841650e7e9479c16849fc7c3e0cdec5fcb4a54bcb086dd1b7b5a1e748a862b81a802ad1bd48b43989594fb6ea0de8e6eb87810645c54c06a1a64985cf03d
6
+ metadata.gz: 7d620f93eee909490c77afcb898ef4842997f91cbe23a058c15e559dc2de18b125142c68f19489f0437fd2e0e5a2d25cb9aaf97da8f9459976cfca4135ce29e2
7
+ data.tar.gz: ce3371bd8f427d0113de5a38db17d00d20784af94a999a6961cae738534aecf3944fa7d3c82a7edc1e905357e090094fd7caf1edbad592fdb1898916152b0476
@@ -0,0 +1,49 @@
1
+
2
+ Capistrano::Configuration.instance.load do
3
+
4
+ require 'capistrano'
5
+ require 'ratchetify/helpers'
6
+
7
+ desc "Tasks to create / drop a database (mysql)"
8
+ namespace :db do
9
+
10
+ task :create do
11
+
12
+ # extract user & password
13
+ my_cnf = capture('cat ~/.my.cnf')
14
+
15
+ my_cnf.match(/^user=(\w+)/)
16
+ mysql_user = $1
17
+ my_cnf.match(/^password=(\w+)/)
18
+ mysql_pwd = $1
19
+
20
+ # create the database
21
+ mysql_database = "#{user}_#{application}" # 'application' MUST NOT contain any '-' !!!
22
+ run "mysql -e 'CREATE DATABASE IF NOT EXISTS #{mysql_database} CHARACTER SET utf8 COLLATE utf8_general_ci;'"
23
+
24
+ # create the database.yml file
25
+ database_yml = <<-EOF
26
+ production:
27
+ adapter: mysql2
28
+ encoding: utf8
29
+ database: #{mysql_database}
30
+ pool: 15
31
+ username: #{mysql_user}
32
+ password: #{mysql_pwd}
33
+ host: localhost
34
+ socket: /var/lib/mysql/mysql.sock
35
+ timeout: 10000
36
+
37
+ EOF
38
+ # upload the database.yml file
39
+ put database_yml, "#{deploy_dir}/config/database.yml"
40
+
41
+ end # task :create
42
+
43
+ task :drop do
44
+ mysql_database = "#{user}_#{application}" # 'application' MUST NOT contain any '-' !!!
45
+ run "mysql -e 'DROP DATABASE IF EXISTS #{mysql_database};'"
46
+ end
47
+
48
+ end
49
+ end
@@ -12,7 +12,7 @@ Capistrano::Configuration.instance.load do
12
12
  desc "Deploy an app for the first time"
13
13
  namespace :create do
14
14
 
15
- desc "Deploy an wordpress blog to uberspace"
15
+ desc "Deploy a PHP app to uberspace"
16
16
  task :php do
17
17
  create_repo
18
18
  create_database
@@ -6,19 +6,20 @@ Capistrano::Configuration.instance.load do
6
6
  require 'ratchetify/setup'
7
7
  require 'ratchetify/domain'
8
8
  require 'ratchetify/service'
9
+ require 'ratchetify/db'
9
10
 
10
11
  before "create:rails", "setup:environment"
12
+ before "create:rails", "db:create"
11
13
  after "create:rails", "service:create"
14
+ after "create:rails", "service:create_reverse_proxy"
12
15
  after "create:rails", "domain:add"
13
16
 
14
17
  desc "Deploy an app for the first time"
15
18
  namespace :create do
16
19
 
17
- desc "Deploy an RAILS app to uberspace"
20
+ desc "Deploy a RAILS app to uberspace"
18
21
  task :rails do
19
22
  create_repo
20
- create_and_configure_database
21
- create_reverse_proxy
22
23
  config_rails_app
23
24
  finalize
24
25
  end
@@ -40,55 +41,6 @@ Capistrano::Configuration.instance.load do
40
41
 
41
42
  end # task :create_repo
42
43
 
43
- task :create_and_configure_database do
44
-
45
- # extract user & password
46
- my_cnf = capture('cat ~/.my.cnf')
47
-
48
- my_cnf.match(/^user=(\w+)/)
49
- mysql_user = $1
50
- my_cnf.match(/^password=(\w+)/)
51
- mysql_pwd = $1
52
-
53
- # create the database
54
- mysql_database = "#{user}_#{application}" # 'application' MUST NOT contain any '-' !!!
55
- run "mysql -e 'CREATE DATABASE IF NOT EXISTS #{mysql_database} CHARACTER SET utf8 COLLATE utf8_general_ci;'"
56
-
57
- # create the database.yml file
58
- database_yml = <<-EOF
59
- production:
60
- adapter: mysql2
61
- encoding: utf8
62
- database: #{mysql_database}
63
- pool: 15
64
- username: #{mysql_user}
65
- password: #{mysql_pwd}
66
- host: localhost
67
- socket: /var/lib/mysql/mysql.sock
68
- timeout: 10000
69
-
70
- EOF
71
- # upload the database.yml file
72
- put database_yml, "#{deploy_dir}/config/database.yml"
73
-
74
- end # task :create_and_configure_database
75
-
76
- task :create_reverse_proxy do
77
-
78
- # .htaccess
79
- htaccess = <<-EOF
80
- RewriteEngine On
81
- RewriteBase /
82
- RewriteCond %{REQUEST_FILENAME} !-f
83
- RewriteRule ^(.*)$ http://localhost:#{daemon_port}/$1 [P]
84
- EOF
85
-
86
- # place the .htaccess file
87
- put htaccess, "#{deploy_dir}/.htaccess"
88
- run "chmod +r #{deploy_dir}/.htaccess"
89
-
90
- end # task :create_reverse_proxy
91
-
92
44
  task :config_rails_app do
93
45
  # run bundle install first
94
46
  run "cd #{deploy_dir} && bundle install --path ~/.gem"
@@ -36,7 +36,7 @@ Capistrano::Configuration.instance.load do
36
36
  export HOME=/home/#{user}
37
37
  source $HOME/.bash_profile
38
38
  cd #{deploy_dir}
39
- exec /home/#{user}/.gem/ruby/#{ruby_version}/bin/bundle exec thin start -p #{daemon_port} -e production 2>&1
39
+ exec /home/#{user}/.gem/ruby/#{:ruby_api_version}/bin/bundle exec thin start -p #{daemon_port} -e production 2>&1
40
40
  EOF
41
41
 
42
42
  # upload the run script
@@ -52,7 +52,7 @@ EOF
52
52
  export HOME=/home/#{user}
53
53
  source $HOME/.bash_profile
54
54
  cd #{deploy_dir}
55
- exec /home/#{user}/.gem/ruby/#{ruby_version}/bin/bundle exec unicorn -p #{daemon_port} -c ./config/unicorn.rb -E #{environment} 2>&1
55
+ exec /home/#{user}/.gem/ruby/#{:ruby_api_version}/bin/bundle exec unicorn -p #{daemon_port} -c ./config/unicorn.rb -E #{environment} 2>&1
56
56
  EOF
57
57
 
58
58
  # upload the run script
@@ -91,6 +91,22 @@ EOF
91
91
 
92
92
  end # task :create_service_unicorn
93
93
 
94
+ task :create_reverse_proxy do
95
+
96
+ # .htaccess
97
+ htaccess = <<-EOF
98
+ RewriteEngine On
99
+ RewriteBase /
100
+ RewriteCond %{REQUEST_FILENAME} !-f
101
+ RewriteRule ^(.*)$ http://localhost:#{daemon_port}/$1 [P]
102
+ EOF
103
+
104
+ # place the .htaccess file
105
+ put htaccess, "#{deploy_dir}/.htaccess"
106
+ run "chmod +r #{deploy_dir}/.htaccess"
107
+
108
+ end # task :create_reverse_proxy
109
+
94
110
  desc "Remove the service"
95
111
  task :remove do
96
112
  script = <<-EOF
@@ -4,23 +4,19 @@ Capistrano::Configuration.instance.load do
4
4
  require 'capistrano'
5
5
  require 'ratchetify/helpers'
6
6
  require 'ratchetify/service'
7
+ require 'ratchetify/db'
7
8
 
8
9
  before "undeploy", "service:remove"
10
+ before "undeploy", "db:drop"
9
11
 
10
12
  desc "Undeploy an app from uberspace"
11
13
  namespace :undeploy do
12
14
 
13
15
  desc "Undeploy an app from uberspace"
14
16
  task :default do
15
- drop_database
16
17
  remove_repo
17
18
  end
18
19
 
19
- task :drop_database do
20
- mysql_database = "#{user}_#{application}" # 'application' MUST NOT contain any '-' !!!
21
- run "mysql -e 'DROP DATABASE IF EXISTS #{mysql_database};'"
22
- end
23
-
24
20
  task :remove_repo do
25
21
  run "cd #{deploy_root} && rm -rf #{fetch :application}"
26
22
  run "cd #{webroot_dir} && rm -rf #{fetch :host}.#{fetch :domain}"
@@ -1,3 +1,3 @@
1
1
  module Ratchetify
2
- VERSION = "1.0.2"
2
+ VERSION = "1.0.4"
3
3
  end
@@ -5,17 +5,18 @@ Capistrano::Configuration.instance.load do
5
5
  require 'ratchetify/helpers'
6
6
  require 'ratchetify/setup'
7
7
  require 'ratchetify/domain'
8
+ require 'ratchetify/db'
8
9
 
9
10
  before "create:wordpress", "setup:environment"
11
+ before "create:wordpress", "db:create"
10
12
  after "create:wordpress", "domain:add"
11
13
 
12
14
  desc "Deploy an app for the first time"
13
15
  namespace :create do
14
16
 
15
- desc "Deploy an wordpress blog to uberspace"
17
+ desc "Deploy a standard wordpress blog to uberspace"
16
18
  task :wordpress do
17
19
  create_web_dir
18
- create_database
19
20
  finalize
20
21
  end
21
22
 
@@ -33,42 +34,10 @@ Capistrano::Configuration.instance.load do
33
34
  #run "cd #{deploy_root} && rm wordpress*"
34
35
  run "cd #{webroot_dir} && rm -rf wordpress*"
35
36
 
36
- # rename word press to -> :application
37
- #run "cd #{deploy_root} && mv ./wordpress #{application}"
38
37
  end
39
38
 
40
39
  end # task :create_dir
41
-
42
- task :create_database do
43
-
44
- # extract user & password
45
- my_cnf = capture('cat ~/.my.cnf')
46
-
47
- my_cnf.match(/^user=(\w+)/)
48
- mysql_user = $1
49
- my_cnf.match(/^password=(\w+)/)
50
- mysql_pwd = $1
51
- my_cnf.match(/^port=(\w+)/)
52
- mysql_port = $1
53
-
54
- # create the database
55
- mysql_database = "#{user}_#{application}" # 'application' MUST NOT contain any '-' !!!
56
- run "mysql -e 'CREATE DATABASE IF NOT EXISTS #{mysql_database} CHARACTER SET utf8 COLLATE utf8_general_ci;'"
57
-
58
- database_yml = <<-EOF
59
- database: #{mysql_database}
60
- username: #{mysql_user}
61
- password: #{mysql_pwd}
62
- host: localhost
63
- port: #{mysql_port}
64
-
65
- EOF
66
-
67
- # upload the database.yml file
68
- put database_yml, "#{deploy_dir}/database.yml"
69
-
70
- end # task :create_database
71
-
40
+
72
41
  task :finalize do
73
42
  # create symbolic links..
74
43
  run "cd #{webroot_dir} && ln -s #{deploy_dir} #{fetch :host}.#{fetch :domain}"
data/lib/ratchetify.rb CHANGED
@@ -11,7 +11,9 @@ Capistrano::Configuration.instance.load do
11
11
  require 'ratchetify/domain'
12
12
  require 'ratchetify/rails'
13
13
  require 'ratchetify/wordpress'
14
+ require 'ratchetify/php'
14
15
  require 'ratchetify/update'
16
+ require 'ratchetify/db'
15
17
  require 'ratchetify/help' # monkey patched from capistrano
16
18
 
17
19
  # host and domain for the new app
@@ -21,7 +23,7 @@ Capistrano::Configuration.instance.load do
21
23
 
22
24
  # random port used for the reverse proxy
23
25
  set :daemon_port, rand(61000-32768+1)+32768 # random port
24
- set :type, :rails # supported types are: :rails, :wordpress,
26
+ set :type, :rails # supported types are: :rails, :wordpress, :php
25
27
 
26
28
  # internal variables, should not be changed in the cap file
27
29
  set :ruby_version, "2.1.1"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ratchetify
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Kuehl
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-15 00:00:00.000000000 Z
11
+ date: 2014-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capistrano
@@ -56,6 +56,7 @@ files:
56
56
  - bin/rat
57
57
  - lib/ratchetify.rb
58
58
  - lib/ratchetify/base.rb
59
+ - lib/ratchetify/db.rb
59
60
  - lib/ratchetify/domain.rb
60
61
  - lib/ratchetify/help.rb
61
62
  - lib/ratchetify/helpers.rb