vpsb 1.0.6 → 1.0.7
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 +4 -4
- data/Gemfile.lock +1 -1
- data/lib/vpsb/resources/deploy_rb.rb +167 -0
- data/lib/vpsb/tasks/deploy_config.rb +3 -1
- data/lib/vpsb/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6bf97c87cc07a64a0b0d5495f4f99d9f96750ffa
|
4
|
+
data.tar.gz: e5cce2265df8e1aed3c7726c1a8c209a2fcddabc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0219ac8c35c73edd2ad964c96f2531a03c02381902d9e8ace34bf0cf0d175a827b761904e706af4f24dcfb5be89c55a336ac792c32dacd1a0b355ae91fb62424
|
7
|
+
data.tar.gz: 6960ab47cdb01d902e2b18e1676601efa04e92eb497e9d7615f483cd913cc3d5ffbec06e1fb8285f6a716c312ca0d19225b18806e83efeaf97117eba7ddcd877
|
data/Gemfile.lock
CHANGED
@@ -0,0 +1,167 @@
|
|
1
|
+
module Vpsb
|
2
|
+
module Resources
|
3
|
+
class DeployRb < BaseResource
|
4
|
+
res :deploy_rb
|
5
|
+
|
6
|
+
def call(data)
|
7
|
+
template(data)
|
8
|
+
end
|
9
|
+
|
10
|
+
private
|
11
|
+
|
12
|
+
def template(data)
|
13
|
+
application = '#{application}'
|
14
|
+
deploy_to = '#{deploy_to}'
|
15
|
+
command = '#{command}'
|
16
|
+
<<-EOF
|
17
|
+
# config valid only for Capistrano 3.1
|
18
|
+
# set :rsync_options, %w[--recursive --delete --delete-excluded --exclude .git*]
|
19
|
+
lock '3.1.0'
|
20
|
+
application = 'rails'
|
21
|
+
set :user, 'deploy'
|
22
|
+
|
23
|
+
set :application, application
|
24
|
+
set :repo_url, "."
|
25
|
+
# set :repository, '.'
|
26
|
+
set :branch, ENV["REVISION"] || ENV["BRANCH_NAME"] || "master"
|
27
|
+
set :deploy_to, "/opt/www/#{application}"
|
28
|
+
set :scm, :rsync
|
29
|
+
|
30
|
+
set :rsync_cache, false
|
31
|
+
set :rsync_stage, "tmp/repository"
|
32
|
+
# set :rsync_cache, ""
|
33
|
+
|
34
|
+
# set :deploy_via, :copy
|
35
|
+
|
36
|
+
set :use_sudo, false
|
37
|
+
stage = :production
|
38
|
+
|
39
|
+
# Default branch is :master
|
40
|
+
# ask :branch, proc { `git rev-parse --abbrev-ref HEAD`.chomp }
|
41
|
+
|
42
|
+
# Default value for :scm is :git
|
43
|
+
# set :scm, :git
|
44
|
+
|
45
|
+
# Default value for :format is :pretty
|
46
|
+
# set :format, :pretty
|
47
|
+
|
48
|
+
# Default value for :log_level is :debug
|
49
|
+
set :log_level, :debug
|
50
|
+
|
51
|
+
# Default value for :pty is false
|
52
|
+
# set :pty, true
|
53
|
+
set :default_shell, "/bin/bash -l"
|
54
|
+
|
55
|
+
# Default value for :linked_files is []
|
56
|
+
# set :linked_files, %w{config/database.yml}
|
57
|
+
|
58
|
+
# Default value for linked_dirs is []
|
59
|
+
set :linked_dirs, %w{bin log tmp/pids tmp/cache tmp/sockets vendor/bundle public/system}
|
60
|
+
|
61
|
+
# Default value for default_env is {}
|
62
|
+
# set :default_env, { path: "/opt/ruby/bin:$PATH" }
|
63
|
+
|
64
|
+
# Default value for keep_releases is 5
|
65
|
+
set :keep_releases, 5
|
66
|
+
|
67
|
+
set :rvm_ruby_version, '2.1.2'
|
68
|
+
set :rvm_type, :user
|
69
|
+
set :rvm_ruby_string, "2.1.2@#{application}"
|
70
|
+
|
71
|
+
namespace :unicorn do
|
72
|
+
%w{start stop restart reload upgrade}.each do |command|
|
73
|
+
desc "#{command} unicorn"
|
74
|
+
task command.to_sym do
|
75
|
+
on roles(:app), pty: true, shell: true do
|
76
|
+
within shared_path do
|
77
|
+
execute :sudo, :service, "unicorn_#{application}", command
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
namespace :nginx do
|
85
|
+
%w{restart reload}.each do |command|
|
86
|
+
desc "#{command} nginx"
|
87
|
+
task command.to_sym do
|
88
|
+
on roles(:app), pty: true, shell: true do
|
89
|
+
within shared_path do
|
90
|
+
execute :sudo, :service, :nginx, command
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
96
|
+
|
97
|
+
namespace :db do
|
98
|
+
desc "Create database"
|
99
|
+
task :create do
|
100
|
+
on roles(:db) do
|
101
|
+
within release_path do
|
102
|
+
execute :rake, "db:create"
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|
106
|
+
end
|
107
|
+
|
108
|
+
namespace :es do
|
109
|
+
%w{
|
110
|
+
create_indexes
|
111
|
+
delete_indexes
|
112
|
+
recreate_indexes
|
113
|
+
insert_dicts_plants_data
|
114
|
+
insert_dicts_precinct_data
|
115
|
+
insert_dicts_agri_pack_data
|
116
|
+
}.each do |command|
|
117
|
+
desc "Elasticsearch #{command} task"
|
118
|
+
task command.to_sym do
|
119
|
+
on roles(:app) do
|
120
|
+
within release_path do
|
121
|
+
execute :rake, "es:#{command}"
|
122
|
+
end
|
123
|
+
end
|
124
|
+
end
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
namespace :deploy do
|
129
|
+
before 'deploy:migrate', 'db:create'
|
130
|
+
before 'deploy', 'deploy:rsync'
|
131
|
+
|
132
|
+
task :rsync do
|
133
|
+
on roles(:app), in: :sequence, pty: true, shell: true do
|
134
|
+
`rsync -avz -e ssh "./" deploy@#{data.get(:do_host_ip)}:#{deploy_to}/shared/deploy`
|
135
|
+
end
|
136
|
+
end
|
137
|
+
|
138
|
+
desc "First deploy setup unicorn and nginx"
|
139
|
+
task :init_env do
|
140
|
+
on roles(:app), in: :sequence, wait: 5, pty: true, shell: true do
|
141
|
+
Rake::Task['unicorn:start'].invoke
|
142
|
+
Rake::Task['nginx:restart'].invoke
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
before :production, :warn do
|
147
|
+
info 'Deploying to production, hold tight!'
|
148
|
+
stage = :production
|
149
|
+
end
|
150
|
+
|
151
|
+
after :finishing, 'deploy:cleanup'
|
152
|
+
|
153
|
+
desc 'Restart application'
|
154
|
+
task :restart do
|
155
|
+
on roles(:app), in: :sequence, wait: 5 do
|
156
|
+
Rake::Task['unicorn:upgrade'].invoke
|
157
|
+
# Rake::Task['nginx:restart'].invoke
|
158
|
+
end
|
159
|
+
end
|
160
|
+
|
161
|
+
after :publishing, :restart
|
162
|
+
end
|
163
|
+
EOF
|
164
|
+
end
|
165
|
+
end
|
166
|
+
end
|
167
|
+
end
|
@@ -4,13 +4,15 @@ module Vpsb
|
|
4
4
|
include AskSupport
|
5
5
|
|
6
6
|
PATH = 'bootstrap_rails_app_in_do/config/deploy/production.rb'
|
7
|
+
DEPLOY_RB_PATH = 'bootstrap_rails_app_in_do/config/deploy.rb'
|
7
8
|
|
8
|
-
prepare_squence :deploy_config
|
9
|
+
prepare_squence :deploy_config, :deploy_rb
|
9
10
|
|
10
11
|
def call
|
11
12
|
prepare
|
12
13
|
|
13
14
|
Vpsb::Helpers::FileReplace.replace_text(PATH, core.get(:deploy_config))
|
15
|
+
Vpsb::Helpers::FileReplace.replace_text(DEPLOY_RB_PATH, core.get(:deploy_rb))
|
14
16
|
end
|
15
17
|
end
|
16
18
|
end
|
data/lib/vpsb/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vpsb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pawel Niemczyk
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-06-
|
11
|
+
date: 2014-06-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -251,6 +251,7 @@ files:
|
|
251
251
|
- lib/vpsb/resources/deploy_config.rb
|
252
252
|
- lib/vpsb/resources/deploy_keychain.rb
|
253
253
|
- lib/vpsb/resources/deploy_pass.rb
|
254
|
+
- lib/vpsb/resources/deploy_rb.rb
|
254
255
|
- lib/vpsb/resources/deploy_ssh_keys.rb
|
255
256
|
- lib/vpsb/resources/deploy_to_known_hosts.rb
|
256
257
|
- lib/vpsb/resources/do_api_key.rb
|