railman 0.3.7 → 0.4.0
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 735fe5ff7e1e96f88a3de32146bab168201bb86b
|
4
|
+
data.tar.gz: b073a2b956406ff61422a46c2490ba11a8aeaee3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1c8d4f4ee0a216efc6a0d2ea771f0a0cde9ed56124491aa35d68d9beab70d80d01e44e96417dcf915e11c6b32a5312434a855b5184d500e741a54ca3a81cb747
|
7
|
+
data.tar.gz: 2affb17d4dd56ef893a57bca07b05ba3937c12fe88a3afa2a02d95598f66edcb8f25a761bb59b866a8bcd7528b7df391d04f07444f242867e5cb9c09809a7467
|
data/lib/railman/version.rb
CHANGED
data/templates/rails_app/Gemfile
CHANGED
@@ -29,7 +29,7 @@ gem 'sinatra', '1.4.6', :require => false # for sidekiq-web
|
|
29
29
|
gem 'unicorn', '4.8.3' # use unicorn as production server
|
30
30
|
gem 'unicorn-rails', '1.1.0' # use unicorn as local server
|
31
31
|
|
32
|
-
gem '
|
32
|
+
gem 'railman-deployment', '~> 0.2' # capistrano deployment
|
33
33
|
|
34
34
|
gem 'exception_notification', '4.1.2' # exception notification per email
|
35
35
|
|
@@ -1,130 +1,6 @@
|
|
1
|
-
# Capistrano deployment
|
2
|
-
lock '3.4.1'
|
3
|
-
|
4
|
-
require 'securerandom'
|
1
|
+
# Capistrano deployment configuration
|
5
2
|
|
6
3
|
set :application, '<%= @config.app_name %>'
|
7
4
|
set :repo_url, '<%= @repository.origin %>'
|
8
|
-
|
9
|
-
set :rbenv_home, '/home/deploy/.rbenv'
|
10
|
-
set :environment, {path: "#{fetch(:rbenv_home)}/shims:#{fetch(:rbenv_home)}/bin:$PATH", rails_env: 'production'}
|
5
|
+
# append :sync_dirs, 'public/system', 'public/files'
|
11
6
|
set :log_level, :info
|
12
|
-
|
13
|
-
SSHKit.config.command_map[:rake] = "#{fetch(:deploy_to)}/bin/rake"
|
14
|
-
%w(ln service start restart stop status).each do |cmd|
|
15
|
-
SSHKit.config.command_map[cmd.to_sym] = "sudo #{cmd}"
|
16
|
-
end
|
17
|
-
SSHKit.config.command_map[:eye] = "#{fetch(:rbenv_home)}/shims/eye"
|
18
|
-
SSHKit.config.command_map[:su_rm] = "sudo rm"
|
19
|
-
|
20
|
-
desc "Setup rails application for the first time on a server"
|
21
|
-
task :setup do
|
22
|
-
on roles(:all) do
|
23
|
-
with fetch(:environment) do
|
24
|
-
if test "[ -d #{fetch(:deploy_to)} ]"
|
25
|
-
within fetch(:deploy_to) do
|
26
|
-
execute :git, :fetch, 'origin'
|
27
|
-
execute :git, :reset, '--hard origin/master'
|
28
|
-
end
|
29
|
-
else
|
30
|
-
execute :git, :clone, fetch(:repo_url), fetch(:deploy_to)
|
31
|
-
end
|
32
|
-
server_conf_dir = "#{fetch(:deploy_to)}/config/server"
|
33
|
-
execute :ln, "-s -f #{server_conf_dir}/nginx.conf /etc/nginx/conf.d/#{fetch(:application)}.conf"
|
34
|
-
execute :ln, "-s -f #{server_conf_dir}/letsencrypt.conf /etc/nginx/letsencrypt/#{fetch(:application)}.conf"
|
35
|
-
execute :ln, "-s -f #{server_conf_dir}/logrotate.conf /etc/logrotate.d/#{fetch(:application)}"
|
36
|
-
within fetch(:deploy_to) do
|
37
|
-
execute :bundle, :install, "--without development test"
|
38
|
-
execute :mkdir, "-p #{fetch(:deploy_to)}/tmp/pids"
|
39
|
-
if test "[ -f #{fetch(:deploy_to)}/.env ]"
|
40
|
-
execute :rake, 'db:create'
|
41
|
-
if test "[ -f #{fetch(:deploy_to)}/db/#{fetch(:application)}.sql ]"
|
42
|
-
execute :psql, "-d #{fetch(:application)}_production", "-f db/#{fetch(:application)}.sql"
|
43
|
-
end
|
44
|
-
execute :rake, 'db:migrate'
|
45
|
-
execute :rake, 'assets:precompile'
|
46
|
-
execute :eye, :load, 'Eyefile'
|
47
|
-
execute :eye, :start, fetch(:application)
|
48
|
-
execute :service, "nginx restart"
|
49
|
-
else
|
50
|
-
execute :cp, '.env.example.production', '.env'
|
51
|
-
execute "sed -i -e 's/TODO: generate with: rake secret/#{SecureRandom.hex(64)}/g' #{fetch(:deploy_to)}/.env"
|
52
|
-
warn "TODO: Edit .env and modify your database and smtp settings."
|
53
|
-
warn "TODO: Create ssl certificates by running the following command as root: /etc/letsencrypt/generate_letsencrypt.sh"
|
54
|
-
warn "TODO: Run 'cap ENV setup' again!"
|
55
|
-
end
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|
59
|
-
end
|
60
|
-
|
61
|
-
desc "Remove the application completely from the server"
|
62
|
-
task :remove do
|
63
|
-
on roles(:all) do
|
64
|
-
with fetch(:environment) do
|
65
|
-
within fetch(:deploy_to) do
|
66
|
-
execute :eye, :load, 'Eyefile'
|
67
|
-
execute :eye, :stop, fetch(:application)
|
68
|
-
execute :rake, 'db:drop'
|
69
|
-
execute :su_rm, "-rf #{fetch(:deploy_to)}"
|
70
|
-
end if test "[ -d #{fetch(:deploy_to)} ]"
|
71
|
-
execute :su_rm, "-f /etc/nginx/conf.d/#{fetch(:application)}.conf"
|
72
|
-
execute :su_rm, "-f /etc/nginx/letsencrypt/#{fetch(:application)}.conf"
|
73
|
-
execute :su_rm, "-f /etc/logrotate.d/#{fetch(:application)}"
|
74
|
-
execute :service, "nginx restart"
|
75
|
-
end
|
76
|
-
end
|
77
|
-
end
|
78
|
-
|
79
|
-
desc "Deploy rails application"
|
80
|
-
task :deploy do
|
81
|
-
on roles(:all) do
|
82
|
-
with fetch(:environment) do
|
83
|
-
within fetch(:deploy_to) do
|
84
|
-
execute :git, :fetch, 'origin'
|
85
|
-
execute :git, :reset, '--hard origin/master'
|
86
|
-
execute :bundle, :install
|
87
|
-
execute :rake, 'db:migrate'
|
88
|
-
execute :rake, 'assets:precompile'
|
89
|
-
execute :eye, :load, 'Eyefile'
|
90
|
-
execute :eye, :restart, fetch(:application)
|
91
|
-
execute :service, "nginx restart"
|
92
|
-
end
|
93
|
-
end
|
94
|
-
end
|
95
|
-
end
|
96
|
-
|
97
|
-
desc "Copy database from the server to the local machine"
|
98
|
-
task :sync_local do
|
99
|
-
on roles(:all) do
|
100
|
-
within fetch(:deploy_to) do
|
101
|
-
execute :pg_dump, "-U deploy --clean #{fetch(:application)}_production > db/#{fetch(:application)}.sql"
|
102
|
-
download! "#{fetch(:deploy_to)}/db/#{fetch(:application)}.sql", 'db'
|
103
|
-
end
|
104
|
-
end
|
105
|
-
run_locally do
|
106
|
-
execute "psql -d #{fetch(:application)}_development -f db/#{fetch(:application)}.sql"
|
107
|
-
end
|
108
|
-
end
|
109
|
-
|
110
|
-
desc "Recreate server database from db/#{fetch(:application)}.sql"
|
111
|
-
task :reset_server do
|
112
|
-
on roles(:all) do
|
113
|
-
with fetch(:environment) do
|
114
|
-
within fetch(:deploy_to) do
|
115
|
-
execute :eye, :load, 'Eyefile'
|
116
|
-
execute :eye, :stop, fetch(:application)
|
117
|
-
execute :git, :fetch, 'origin'
|
118
|
-
execute :git, :reset, '--hard origin/master'
|
119
|
-
execute :rake, 'db:drop'
|
120
|
-
execute :rake, 'db:create'
|
121
|
-
if test "[ -f #{fetch(:deploy_to)}/db/#{fetch(:application)}.sql ]"
|
122
|
-
execute :psql, "-d #{fetch(:application)}_production", "-f db/#{fetch(:application)}.sql"
|
123
|
-
end
|
124
|
-
execute :rake, 'db:migrate'
|
125
|
-
execute :eye, :start, fetch(:application)
|
126
|
-
execute :service, "nginx restart"
|
127
|
-
end
|
128
|
-
end
|
129
|
-
end
|
130
|
-
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: railman
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Igor Jancev
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-05-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|