docman 0.0.99 → 0.0.100
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/lib/application.rb +2 -2
- data/lib/docman/cli.rb +14 -6
- data/lib/docman/deployers/git_deployer.rb +9 -1
- data/lib/docman/docroot_config.rb +55 -1
- data/lib/docman/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e231868676b2f087fe12b8734ae861b205b95ad0
|
4
|
+
data.tar.gz: a87e681d52375023f07f9ef0019fcca151f16664
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b58e55802f3d67a3cd04283688770969c0e68c3af2cdea8fe73e31e5c8e2365f93eecfe1de41d7e06bd280642b5d2f0158e90692683556a1a80694021c2a6e04
|
7
|
+
data.tar.gz: 749fed753ef3466accdddbcbf0d46de7efc59e3462357f31b45855eb1ed9ad6de4442579ae2fed1a84e4f50389498e9b122d2bf5575bed1120d8eb7a7ef2d9f3
|
data/lib/application.rb
CHANGED
@@ -84,7 +84,7 @@ module Docman
|
|
84
84
|
def build(deploy_target_name, state, options = false)
|
85
85
|
with_rescue do
|
86
86
|
@options = options
|
87
|
-
@docroot_config = DocrootConfig.new(@workspace_dir, deploy_target_name, options)
|
87
|
+
@docroot_config = DocrootConfig.new(@workspace_dir, deploy_target_name, options, state)
|
88
88
|
@deploy_target = @docroot_config.deploy_target
|
89
89
|
execute('build', state, nil, options['tag'])
|
90
90
|
end
|
@@ -94,7 +94,7 @@ module Docman
|
|
94
94
|
result = nil
|
95
95
|
with_rescue do
|
96
96
|
@options = options
|
97
|
-
@docroot_config = DocrootConfig.new(@workspace_dir, deploy_target_name, options)
|
97
|
+
@docroot_config = DocrootConfig.new(@workspace_dir, deploy_target_name, options, state)
|
98
98
|
@deploy_target = @docroot_config.deploy_target
|
99
99
|
@docroot_config.states_dependin_on(name, version).keys.each do |state|
|
100
100
|
execute('deploy', state, name)
|
data/lib/docman/cli.rb
CHANGED
@@ -45,13 +45,21 @@ module Docman
|
|
45
45
|
method_option :config, :desc => 'Configuration override JSON'
|
46
46
|
method_option :config_dir, :desc => 'Config directories divided by coma where docman will search for config.yaml'
|
47
47
|
option :tag
|
48
|
-
def build(deploy_target, state)
|
49
|
-
|
50
|
-
if
|
51
|
-
|
48
|
+
def build(deploy_target="git_target", state="")
|
49
|
+
docman_state_var = "DOCMAN_STATE"
|
50
|
+
if ENV.has_key? docman_state_var and ENV[docman_state_var].length > 0
|
51
|
+
state = ENV[docman_state_var]
|
52
|
+
end
|
53
|
+
if state.length > 0
|
54
|
+
get_to_root_dir
|
55
|
+
if options[:force]
|
56
|
+
FileUtils.rm_rf('master') if File.directory? 'master'
|
57
|
+
end
|
58
|
+
Application.instance.build(deploy_target, state, options)
|
59
|
+
say('Complete!', :green)
|
60
|
+
else
|
61
|
+
say("Cant build without state parameter or #{docman_state_var} environment variable.")
|
52
62
|
end
|
53
|
-
Application.instance.build(deploy_target, state, options)
|
54
|
-
say('Complete!', :green)
|
55
63
|
end
|
56
64
|
|
57
65
|
desc 'deploy', 'Deploy to target'
|
@@ -14,7 +14,15 @@ module Docman
|
|
14
14
|
prev_version = File.file?(filepath) ? File.open(filepath) : nil
|
15
15
|
params = self['environment']['tagger']
|
16
16
|
params['prev_version'] = prev_version
|
17
|
-
version =
|
17
|
+
version = ''
|
18
|
+
docman_tag_var = "DOCMAN_TAG"
|
19
|
+
if ENV.has_key? docman_tag_var and ENV[docman_tag_var].length > 0
|
20
|
+
puts "Variable #{docman_tag_var} => #{ENV[docman_tag_var]}"
|
21
|
+
version = ENV[docman_tag_var]
|
22
|
+
else
|
23
|
+
puts "Variable #{docman_tag_var} not found."
|
24
|
+
version = Docman::Taggers::Tagger.create(params, root, self).perform
|
25
|
+
end
|
18
26
|
File.open(filepath, 'w') {|f| f.write(version) }
|
19
27
|
|
20
28
|
filepath = File.join(root['full_build_path'], 'version.properties')
|
@@ -8,7 +8,9 @@ module Docman
|
|
8
8
|
|
9
9
|
attr_reader :structure, :deploy_target, :docroot_dir, :docroot_config_dir, :config_dir, :root, :raw_infos
|
10
10
|
|
11
|
-
def initialize(docroot_dir, deploy_target_name = nil, options = nil)
|
11
|
+
def initialize(docroot_dir, deploy_target_name = nil, options = nil, state = nil)
|
12
|
+
@state = state
|
13
|
+
|
12
14
|
@override = {}
|
13
15
|
if options && options['config']
|
14
16
|
@override = JSON.parse(options['config'])
|
@@ -90,6 +92,8 @@ module Docman
|
|
90
92
|
info.merge! @override['projects'][info['name']]
|
91
93
|
end
|
92
94
|
|
95
|
+
info = override_from_environment(info)
|
96
|
+
|
93
97
|
i = Docman::Info.new(info)
|
94
98
|
@root = i if parent.nil?
|
95
99
|
i['root'] = @root
|
@@ -130,6 +134,8 @@ module Docman
|
|
130
134
|
info.merge! @override['projects'][info['name']]
|
131
135
|
end
|
132
136
|
|
137
|
+
info = override_from_environment(info)
|
138
|
+
|
133
139
|
i = Docman::Info.new(info)
|
134
140
|
@root = i if parent.nil?
|
135
141
|
i['root'] = @root
|
@@ -149,6 +155,54 @@ module Docman
|
|
149
155
|
i
|
150
156
|
end
|
151
157
|
|
158
|
+
def override_from_environment(info)
|
159
|
+
|
160
|
+
docman_config_var = "DOCMAN_CONFIG"
|
161
|
+
if ENV.has_key? docman_config_var and ENV[docman_config_var].length > 0
|
162
|
+
puts "Variable #{docman_config_var} => #{ENV[docman_config_var]}"
|
163
|
+
docman_config_overrides = JSON.parse(ENV[docman_config_var])
|
164
|
+
if docman_config_overrides['projects'] && docman_config_overrides['projects'].key?(info['name'])
|
165
|
+
info.merge! docman_config_overrides['projects'][info['name']]
|
166
|
+
end
|
167
|
+
else
|
168
|
+
puts "Variable #{docman_config_var} not found."
|
169
|
+
end
|
170
|
+
|
171
|
+
docman_repo_var = "DOCMAN_PROJECTS_#{info['name'].upcase}_REPO"
|
172
|
+
if ENV.has_key? docman_repo_var and ENV[docman_repo_var].length > 0
|
173
|
+
puts "Variable #{docman_repo_var} => #{ENV[docman_repo_var]}"
|
174
|
+
info['repo'] = ENV[docman_repo_var]
|
175
|
+
else
|
176
|
+
puts "Variable #{docman_repo_var} not found."
|
177
|
+
end
|
178
|
+
|
179
|
+
docman_order_var = "DOCMAN_PROJECTS_#{info['name'].upcase}_ORDER"
|
180
|
+
if ENV.has_key? docman_order_var and ENV[docman_tag_var].length > 0
|
181
|
+
puts "Variable #{docman_order_var} => #{ENV[docman_order_var]}"
|
182
|
+
info['order'] = ENV[docman_order_var]
|
183
|
+
else
|
184
|
+
puts "Variable #{docman_order_var} not found."
|
185
|
+
end
|
186
|
+
|
187
|
+
docman_version_var = "DOCMAN_PROJECTS_#{info['name'].upcase}_VERSION"
|
188
|
+
if ENV.has_key? docman_version_var and ENV[docman_version_var].length > 0
|
189
|
+
puts "Variable #{docman_version_var} => #{ENV[docman_version_var]}"
|
190
|
+
if @state.nil?
|
191
|
+
info['states'].each do |k,v|
|
192
|
+
info['states'][k]['type'] = "branch"
|
193
|
+
info['states'][k]['version'] = ENV[docman_version_var]
|
194
|
+
end
|
195
|
+
else
|
196
|
+
info['states'][@state]['type'] = "branch"
|
197
|
+
info['states'][@state]['version'] = ENV[docman_version_var]
|
198
|
+
end
|
199
|
+
else
|
200
|
+
puts "Variable #{docman_version_var} not found."
|
201
|
+
end
|
202
|
+
|
203
|
+
info
|
204
|
+
end
|
205
|
+
|
152
206
|
def chain(info)
|
153
207
|
chain = {}
|
154
208
|
chain[info['name']] = info
|
data/lib/docman/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: docman
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.100
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexander Tolstikov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-05-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|