uhl-cap-recipes 0.1.10 → 0.2.10
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 +7 -0
- data/Rakefile +3 -3
- data/VERSION.yml +1 -1
- data/jenkins-capfile +24 -0
- data/lib/cap_recipes/tasks/play.rb +2 -2
- data/lib/cap_recipes/tasks/springboot.rb +252 -0
- data/uhl-cap-recipes.gemspec +17 -14
- metadata +15 -21
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: b962d0fab79181a8f289c3a3357f59365ea1f24b
|
4
|
+
data.tar.gz: 4116b71959a6d2e8ffe006168e1ba58bc202e68d
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: d3d9841a4dc8bc6e2fa86ae53551a28f3677a9a2043fecb3f1e4c27368ce412bb9ea09136740dc1e631fe116aa2fa20d9d560282db60ae6656c4e3196f4d62a9
|
7
|
+
data.tar.gz: ed0caaad9759f8fd5b10c902d1dd03112235d2611f1e228c041d37c85e85b928004dbe2a11de34fc8a89bf46ee406e14084aed350f3fe102af92f6a815e3db3f
|
data/Rakefile
CHANGED
@@ -24,9 +24,9 @@ begin
|
|
24
24
|
s.authors = ["crazycode"]
|
25
25
|
s.rubyforge_project = 'uhl-cap-recipes'
|
26
26
|
|
27
|
-
s.add_dependency "capistrano"
|
28
|
-
s.add_dependency "json"
|
29
|
-
s.add_dependency "addressable"
|
27
|
+
s.add_dependency "capistrano", '~> 0'
|
28
|
+
s.add_dependency "json", '~> 0'
|
29
|
+
s.add_dependency "addressable", '~> 0'
|
30
30
|
end
|
31
31
|
Jeweler::GemcutterTasks.new
|
32
32
|
rescue LoadError
|
data/VERSION.yml
CHANGED
data/jenkins-capfile
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
load 'deploy' if respond_to?(:namespace) # cap2 differentiator
|
2
|
+
Dir['vendor/plugins/*/recipes/*.rb'].each { |plugin| load(plugin) }
|
3
|
+
|
4
|
+
set :application, "demo"
|
5
|
+
|
6
|
+
set :user, "deploy"
|
7
|
+
set :use_sudo, true
|
8
|
+
|
9
|
+
# set :gateway, 'deploy@119.15.137.30:10222'
|
10
|
+
|
11
|
+
ssh_options[:paranoid] = false
|
12
|
+
default_run_options[:pty] = true
|
13
|
+
default_run_options[:shell] = '/bin/bash'
|
14
|
+
|
15
|
+
# =============================================================================
|
16
|
+
# RECIPE INCLUDES
|
17
|
+
# =============================================================================
|
18
|
+
|
19
|
+
require 'rubygems'
|
20
|
+
# for development
|
21
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
22
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
23
|
+
|
24
|
+
require 'cap_recipes/tasks/springboot'
|
@@ -2,7 +2,7 @@
|
|
2
2
|
Capistrano::Configuration.instance(true).load do |configuration|
|
3
3
|
set :use_sudo, true
|
4
4
|
|
5
|
-
_cset :deploy_to_parent, "/
|
5
|
+
_cset :deploy_to_parent, "/opt"
|
6
6
|
_cset :branch, "master"
|
7
7
|
|
8
8
|
default_run_options[:pty] = true
|
@@ -201,7 +201,7 @@ Capistrano::Configuration.instance(true).load do |configuration|
|
|
201
201
|
[
|
202
202
|
"if [ ! -e #{reeb_config_dir} ]",
|
203
203
|
"then sudo mkdir -p #{reeb_config_dir}",
|
204
|
-
"sudo chown #{user} #{
|
204
|
+
"sudo chown #{user} #{reeb_config_dir}",
|
205
205
|
"cd #{reeb_config_dir}",
|
206
206
|
"git clone #{reeb_config_repository} .",
|
207
207
|
"fi",
|
@@ -0,0 +1,252 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# cap -f /etc/jenkins-capfile -s deploy_to_parent=/opt/ngfsn -s application=switcher -s service_name=spring-switcher -s servers=10.65.216.18,10.65.216.19 -s repository=git@gitlab.vfinance.cn:build/switcher.git springboot:redeploy
|
3
|
+
# cap -f /etc/jenkins-capfile -s deploy_to_parent=/opt/ngfsn -s application=exchange -s service_name=spring-exchange -s servers=10.65.216.18,10.65.216.19 -s repository=git@gitlab.vfinance.cn:build/exchange.git springboot:redeploy
|
4
|
+
# cap -f /etc/jenkins-capfile -s deploy_to_parent=/opt/ngfsn -s application=investor -s service_name=spring-investor -s servers=10.65.216.18,10.65.216.19 -s repository=git@gitlab.vfinance.cn:build/investor.git springboot:redeploy
|
5
|
+
# cap -f /etc/jenkins-capfile -s deploy_to_parent=/opt/ngfsn -s application=issuer -s service_name=spring-issuer -s servers=10.65.216.18,10.65.216.19 -s repository=git@gitlab.vfinance.cn:build/issuer.git springboot:redeploy
|
6
|
+
|
7
|
+
Capistrano::Configuration.instance(true).load do |configuration|
|
8
|
+
set :use_sudo, true
|
9
|
+
|
10
|
+
_cset :deploy_to_parent, "/opt"
|
11
|
+
_cset :branch, "master"
|
12
|
+
|
13
|
+
default_run_options[:pty] = true
|
14
|
+
|
15
|
+
# this is capistrano's default location.
|
16
|
+
# depending on the permissions of the server
|
17
|
+
# you may need to create it and chown it over
|
18
|
+
# to :user (e.g. chown -R robotuser:robotuser /u)
|
19
|
+
set :deploy_to do
|
20
|
+
"#{deploy_to_parent}/deploy"
|
21
|
+
end
|
22
|
+
|
23
|
+
set :deploy_to_gitrepo do
|
24
|
+
"#{deploy_to}/#{application}"
|
25
|
+
end
|
26
|
+
|
27
|
+
set :local_base_dir do
|
28
|
+
"#{`pwd`}".strip
|
29
|
+
end
|
30
|
+
|
31
|
+
set :service_name do
|
32
|
+
"#{application}"
|
33
|
+
end
|
34
|
+
|
35
|
+
set :service_check_name do
|
36
|
+
"#{application}"
|
37
|
+
end
|
38
|
+
|
39
|
+
_cset :_config, Array.new
|
40
|
+
_cset :build_name, "ROOT"
|
41
|
+
_cset :build_path, "not_set_build_path"
|
42
|
+
|
43
|
+
_cset :app_config_dir, "/app/config"
|
44
|
+
_cset :app_config_repository, "git@gitlab.vfinance.cn:configuration/matrix-demo.git"
|
45
|
+
|
46
|
+
_cset :servers, ""
|
47
|
+
|
48
|
+
set :local_git_dir do
|
49
|
+
"/app/tmp/localgit_#{application}"
|
50
|
+
end
|
51
|
+
|
52
|
+
set :local_gitrepo do
|
53
|
+
"#{local_git_dir}/#{application}"
|
54
|
+
end
|
55
|
+
|
56
|
+
role :app, :primary => true do
|
57
|
+
if servers.empty?
|
58
|
+
"1.1.1.1"
|
59
|
+
else
|
60
|
+
servers.split(/[,\s]+/)
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
namespace :springboot do
|
65
|
+
|
66
|
+
desc "start service"
|
67
|
+
task :start do
|
68
|
+
sudo "/etc/init.d/#{service_name} start"
|
69
|
+
# sleep 1
|
70
|
+
# api_status = nil
|
71
|
+
# until api_status
|
72
|
+
# api_status = capture("echo `netstat -tln | grep 8080`")
|
73
|
+
# sleep 60
|
74
|
+
# end
|
75
|
+
# puts "API Started successfully."
|
76
|
+
end
|
77
|
+
|
78
|
+
desc "stop service"
|
79
|
+
task :stop do
|
80
|
+
sudo "/etc/init.d/#{service_name} stop"
|
81
|
+
end
|
82
|
+
|
83
|
+
desc "stop and start service"
|
84
|
+
task :restart do
|
85
|
+
springboot.stop
|
86
|
+
springboot.start
|
87
|
+
end
|
88
|
+
|
89
|
+
desc "deploy, then stop and start service"
|
90
|
+
task :redeploy do
|
91
|
+
springboot.deploy
|
92
|
+
springboot.stop
|
93
|
+
springboot.start
|
94
|
+
end
|
95
|
+
|
96
|
+
desc "setup remote and locate application dir"
|
97
|
+
task :setup do
|
98
|
+
springboot.setup_remote
|
99
|
+
springboot.setup_local
|
100
|
+
end
|
101
|
+
|
102
|
+
desc "setup remote application dir"
|
103
|
+
task :setup_remote do
|
104
|
+
run clone_repository_command()
|
105
|
+
end
|
106
|
+
|
107
|
+
desc "setup locate application dir"
|
108
|
+
task :setup_local do
|
109
|
+
system clone_repository_local_command()
|
110
|
+
end
|
111
|
+
|
112
|
+
desc "just pull current build version, doesn't add tag."
|
113
|
+
task :pull do
|
114
|
+
springboot.setup_local
|
115
|
+
|
116
|
+
system "cd #{local_gitrepo}; git checkout #{branch}; git fetch; git rebase origin/#{branch};"
|
117
|
+
|
118
|
+
unless play_name.empty?
|
119
|
+
puts "name=#{play_name}, war=#{play_path}"
|
120
|
+
system update_repository_local_command(play_name, play_path)
|
121
|
+
else
|
122
|
+
if war_config.nil? or war_config.size == 0
|
123
|
+
raise 'NO war_config'
|
124
|
+
end
|
125
|
+
war_config.each do |config|
|
126
|
+
puts "name=#{config[:name]}, war=#{config[:war]}"
|
127
|
+
system update_repository_local_command(config[:name], config[:war])
|
128
|
+
end
|
129
|
+
end
|
130
|
+
|
131
|
+
build_msg = play_name.empty? ? "all" : play_name
|
132
|
+
system "cd #{local_gitrepo}; git add .; git commit -m 'build for #{build_msg}'"
|
133
|
+
|
134
|
+
# push tags and latest code
|
135
|
+
system "cd #{local_gitrepo}; git push origin #{branch}"
|
136
|
+
if $? != 0
|
137
|
+
raise "git push failed"
|
138
|
+
end
|
139
|
+
|
140
|
+
end
|
141
|
+
|
142
|
+
desc "tag build version. use -s tag=xxx to set tag's name"
|
143
|
+
task :tag do
|
144
|
+
springboot.setup_local
|
145
|
+
system "cd #{local_gitrepo}; git checkout #{branch}; git fetch; git rebase origin/#{branch};"
|
146
|
+
|
147
|
+
tag_name = configuration[:tag] || configuration[:build_version]
|
148
|
+
raise "NO tag. pls use -s tag=xxx set tag_name" if tag_name.nil?
|
149
|
+
|
150
|
+
system "cd #{local_gitrepo}; git tag #{tag_name};"
|
151
|
+
|
152
|
+
system "cd #{local_gitrepo}; git push origin #{branch} --tags"
|
153
|
+
if $? != 0
|
154
|
+
raise "git push --tags failed"
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
desc "deploy. use -s tag=xxx to set tag's name, if NOT set tag, pull the repository's last version."
|
159
|
+
task :deploy do
|
160
|
+
springboot.setup_remote
|
161
|
+
#run springboot.setup_or_update_reeb_config
|
162
|
+
tag_name = configuration[:tag] || configuration[:build_version]
|
163
|
+
unless tag_name.nil?
|
164
|
+
# raise "NO tag. pls use -s tag=xxx set tag_name"
|
165
|
+
run update_repository_remote_command(tag_name)
|
166
|
+
else
|
167
|
+
run pull_repository_remote_command(branch)
|
168
|
+
end
|
169
|
+
run record_git_reversion_command()
|
170
|
+
end
|
171
|
+
|
172
|
+
def self.clone_repository_local_command
|
173
|
+
[
|
174
|
+
"rm -Rf #{local_git_dir}",
|
175
|
+
"mkdir -p #{local_git_dir}",
|
176
|
+
"cd #{local_git_dir}",
|
177
|
+
"git clone #{repository} #{local_gitrepo}"
|
178
|
+
].join("; ")
|
179
|
+
end
|
180
|
+
|
181
|
+
|
182
|
+
def self.update_repository_local_command(name, path)
|
183
|
+
unless path.start_with?('/')
|
184
|
+
play_path = "#{local_base_dir}/#{path}"
|
185
|
+
else
|
186
|
+
play_path = path
|
187
|
+
end
|
188
|
+
[
|
189
|
+
"cd #{local_gitrepo}",
|
190
|
+
"if [ -e #{local_gitrepo}/#{name} ]",
|
191
|
+
"then git rm -rf #{local_gitrepo}/#{name}",
|
192
|
+
"fi",
|
193
|
+
"mkdir -p #{local_gitrepo}/#{name}",
|
194
|
+
"cd #{local_gitrepo}/#{name}",
|
195
|
+
"cp #{play_path}/* . -r"
|
196
|
+
].join("; ")
|
197
|
+
end
|
198
|
+
|
199
|
+
def self.setup_or_update_reeb_config
|
200
|
+
[
|
201
|
+
"if [ ! -e #{reeb_config_dir} ]",
|
202
|
+
"then mkdir -p #{reeb_config_dir}",
|
203
|
+
"chown #{user} #{reeb_config_dir}",
|
204
|
+
"cd #{reeb_config_dir}",
|
205
|
+
"git clone #{reeb_config_repository} .",
|
206
|
+
"fi",
|
207
|
+
"cd #{reeb_config_dir}",
|
208
|
+
"git pull"
|
209
|
+
].join("; ")
|
210
|
+
end
|
211
|
+
|
212
|
+
def self.clone_repository_command
|
213
|
+
[
|
214
|
+
"if [ ! -e #{deploy_to_gitrepo} ]",
|
215
|
+
"then mkdir -p #{deploy_to}",
|
216
|
+
"chown #{user} #{deploy_to}",
|
217
|
+
"cd #{deploy_to}",
|
218
|
+
"git clone #{repository} #{deploy_to_gitrepo}",
|
219
|
+
"fi"
|
220
|
+
].join("; ")
|
221
|
+
end
|
222
|
+
|
223
|
+
def self.update_repository_remote_command(tag_name)
|
224
|
+
[
|
225
|
+
# git reset --hard;git fetch;git reset --merge #{tag_name}
|
226
|
+
"cd #{deploy_to_gitrepo}",
|
227
|
+
"git reset --hard",
|
228
|
+
"git fetch",
|
229
|
+
"git reset --merge #{tag_name}",
|
230
|
+
].join("; ")
|
231
|
+
end
|
232
|
+
|
233
|
+
def self.pull_repository_remote_command(branch)
|
234
|
+
[
|
235
|
+
# git reset --hard;git fetch;git reset --merge #{tag_name}
|
236
|
+
"cd #{deploy_to_gitrepo}",
|
237
|
+
"git reset --hard",
|
238
|
+
"git fetch",
|
239
|
+
"git rebase origin/#{branch}",
|
240
|
+
].join("; ")
|
241
|
+
end
|
242
|
+
|
243
|
+
def self.record_git_reversion_command()
|
244
|
+
[
|
245
|
+
"cd #{deploy_to_gitrepo}",
|
246
|
+
"echo \"$(date +\"%Y-%m-%d %H:%M:%S\") $(git log --pretty -1 | awk '/^commit/{print $2}')\" >> #{deploy_to}/#{application}_reversion",
|
247
|
+
].join("; ")
|
248
|
+
end
|
249
|
+
|
250
|
+
end
|
251
|
+
|
252
|
+
end
|
data/uhl-cap-recipes.gemspec
CHANGED
@@ -2,14 +2,16 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
+
# stub: uhl-cap-recipes 0.2.10 ruby lib
|
5
6
|
|
6
7
|
Gem::Specification.new do |s|
|
7
8
|
s.name = "uhl-cap-recipes"
|
8
|
-
s.version = "0.
|
9
|
+
s.version = "0.2.10"
|
9
10
|
|
10
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
|
+
s.require_paths = ["lib"]
|
11
13
|
s.authors = ["crazycode"]
|
12
|
-
s.date = "
|
14
|
+
s.date = "2016-06-01"
|
13
15
|
s.description = "capistrano recipes for my works"
|
14
16
|
s.email = "crazycode@gmail.com"
|
15
17
|
s.executables = ["cap-recipes"]
|
@@ -31,6 +33,7 @@ Gem::Specification.new do |s|
|
|
31
33
|
"examples/advanced/deploy/experimental.rb",
|
32
34
|
"examples/advanced/deploy/production.rb",
|
33
35
|
"examples/simple/deploy.rb",
|
36
|
+
"jenkins-capfile",
|
34
37
|
"lib/cap_recipes.rb",
|
35
38
|
"lib/cap_recipes/tasks/gitdeploy.rb",
|
36
39
|
"lib/cap_recipes/tasks/gitdeploy/setup.rb",
|
@@ -40,6 +43,7 @@ Gem::Specification.new do |s|
|
|
40
43
|
"lib/cap_recipes/tasks/sdpdeploy/iis.rb",
|
41
44
|
"lib/cap_recipes/tasks/sdpdeploy/sft.rb",
|
42
45
|
"lib/cap_recipes/tasks/sdpdeploy/sfttask.rb",
|
46
|
+
"lib/cap_recipes/tasks/springboot.rb",
|
43
47
|
"lib/cap_recipes/tasks/templates/hudson.erb",
|
44
48
|
"lib/cap_recipes/tasks/templates/mongod.conf.erb",
|
45
49
|
"lib/cap_recipes/tasks/templates/mongodb.init.erb",
|
@@ -60,27 +64,26 @@ Gem::Specification.new do |s|
|
|
60
64
|
"uhl-cap-recipes.gemspec"
|
61
65
|
]
|
62
66
|
s.homepage = "http://github.com/crazycode/uhl-cap-recipes"
|
63
|
-
s.require_paths = ["lib"]
|
64
67
|
s.rubyforge_project = "uhl-cap-recipes"
|
65
|
-
s.rubygems_version = "
|
68
|
+
s.rubygems_version = "2.5.1"
|
66
69
|
s.summary = "Battle-tested capistrano recipes for passenger, delayed_job, and more"
|
67
70
|
|
68
71
|
if s.respond_to? :specification_version then
|
69
|
-
s.specification_version =
|
72
|
+
s.specification_version = 4
|
70
73
|
|
71
74
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
72
|
-
s.add_runtime_dependency(%q<capistrano>, ["
|
73
|
-
s.add_runtime_dependency(%q<json>, ["
|
74
|
-
s.add_runtime_dependency(%q<addressable>, ["
|
75
|
+
s.add_runtime_dependency(%q<capistrano>, ["~> 0"])
|
76
|
+
s.add_runtime_dependency(%q<json>, ["~> 0"])
|
77
|
+
s.add_runtime_dependency(%q<addressable>, ["~> 0"])
|
75
78
|
else
|
76
|
-
s.add_dependency(%q<capistrano>, ["
|
77
|
-
s.add_dependency(%q<json>, ["
|
78
|
-
s.add_dependency(%q<addressable>, ["
|
79
|
+
s.add_dependency(%q<capistrano>, ["~> 0"])
|
80
|
+
s.add_dependency(%q<json>, ["~> 0"])
|
81
|
+
s.add_dependency(%q<addressable>, ["~> 0"])
|
79
82
|
end
|
80
83
|
else
|
81
|
-
s.add_dependency(%q<capistrano>, ["
|
82
|
-
s.add_dependency(%q<json>, ["
|
83
|
-
s.add_dependency(%q<addressable>, ["
|
84
|
+
s.add_dependency(%q<capistrano>, ["~> 0"])
|
85
|
+
s.add_dependency(%q<json>, ["~> 0"])
|
86
|
+
s.add_dependency(%q<addressable>, ["~> 0"])
|
84
87
|
end
|
85
88
|
end
|
86
89
|
|
metadata
CHANGED
@@ -1,62 +1,55 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: uhl-cap-recipes
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.2.10
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- crazycode
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2016-06-01 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: capistrano
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - "~>"
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - "~>"
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: json
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - "~>"
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - "~>"
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: '0'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: addressable
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - "~>"
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '0'
|
54
48
|
type: :runtime
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - "~>"
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '0'
|
62
55
|
description: capistrano recipes for my works
|
@@ -81,6 +74,7 @@ files:
|
|
81
74
|
- examples/advanced/deploy/experimental.rb
|
82
75
|
- examples/advanced/deploy/production.rb
|
83
76
|
- examples/simple/deploy.rb
|
77
|
+
- jenkins-capfile
|
84
78
|
- lib/cap_recipes.rb
|
85
79
|
- lib/cap_recipes/tasks/gitdeploy.rb
|
86
80
|
- lib/cap_recipes/tasks/gitdeploy/setup.rb
|
@@ -90,6 +84,7 @@ files:
|
|
90
84
|
- lib/cap_recipes/tasks/sdpdeploy/iis.rb
|
91
85
|
- lib/cap_recipes/tasks/sdpdeploy/sft.rb
|
92
86
|
- lib/cap_recipes/tasks/sdpdeploy/sfttask.rb
|
87
|
+
- lib/cap_recipes/tasks/springboot.rb
|
93
88
|
- lib/cap_recipes/tasks/templates/hudson.erb
|
94
89
|
- lib/cap_recipes/tasks/templates/mongod.conf.erb
|
95
90
|
- lib/cap_recipes/tasks/templates/mongodb.init.erb
|
@@ -110,26 +105,25 @@ files:
|
|
110
105
|
- uhl-cap-recipes.gemspec
|
111
106
|
homepage: http://github.com/crazycode/uhl-cap-recipes
|
112
107
|
licenses: []
|
108
|
+
metadata: {}
|
113
109
|
post_install_message:
|
114
110
|
rdoc_options: []
|
115
111
|
require_paths:
|
116
112
|
- lib
|
117
113
|
required_ruby_version: !ruby/object:Gem::Requirement
|
118
|
-
none: false
|
119
114
|
requirements:
|
120
|
-
- -
|
115
|
+
- - ">="
|
121
116
|
- !ruby/object:Gem::Version
|
122
117
|
version: '0'
|
123
118
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
124
|
-
none: false
|
125
119
|
requirements:
|
126
|
-
- -
|
120
|
+
- - ">="
|
127
121
|
- !ruby/object:Gem::Version
|
128
122
|
version: '0'
|
129
123
|
requirements: []
|
130
124
|
rubyforge_project: uhl-cap-recipes
|
131
|
-
rubygems_version:
|
125
|
+
rubygems_version: 2.5.1
|
132
126
|
signing_key:
|
133
|
-
specification_version:
|
127
|
+
specification_version: 4
|
134
128
|
summary: Battle-tested capistrano recipes for passenger, delayed_job, and more
|
135
129
|
test_files: []
|