dtc_rake 0.2.0 → 1.0.0.pre.beta.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +85 -27
- data/Rakefile +5 -0
- data/VERSION +1 -0
- data/dtc_rake.gemspec +2 -1
- data/lib/dtc_rake/config.rb +321 -28
- data/lib/dtc_rake/product.rb +18 -16
- data/lib/dtc_rake/ui.rb +16 -7
- data/lib/dtc_rake/version.rb +1 -1
- data/lib/tasks/appbox.rake +13 -4
- data/lib/tasks/upload_all.rake +2 -1
- data/lib/tasks/upload_descriptor.rake +4 -4
- data/lib/tasks/upload_readme.rake +47 -0
- data/lib/tasks/version.rake +17 -0
- metadata +58 -41
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b53d460f92926167b414acdc1707cb901d4df886
|
4
|
+
data.tar.gz: 3a3e4e80069f41e0e1f587306e40043317888be8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 30ab3c705160b028ffe6608776194bf49363c7d3ab7c671b1d6f3b0499dbd1dd2ed536a7ccccb6dd0697642b098f97e13b9f343318f9d38034a479a4e71c81d4
|
7
|
+
data.tar.gz: a240141486d2011d7a1292cc326dc34bdcd5744fb1685b5a996df3da75a02d8044fca10dfa1a8f5e1c12ddaac50312260e32293ee25a753c7c8da26c7da0c5e6
|
data/README.md
CHANGED
@@ -7,18 +7,16 @@ Rake tasks for building apps produced by DTC.DEV team.
|
|
7
7
|
Add this line to your application's `Gemfile`:
|
8
8
|
|
9
9
|
```ruby
|
10
|
-
gem "dtc_rake"
|
10
|
+
gem "dtc_rake"
|
11
11
|
```
|
12
12
|
|
13
13
|
And then execute:
|
14
14
|
|
15
15
|
$ bundle
|
16
16
|
|
17
|
-
Or
|
17
|
+
Or install it yourself as:
|
18
18
|
|
19
|
-
$
|
20
|
-
$ cd dtc.rake/dtc_rake
|
21
|
-
$ rake install
|
19
|
+
$ gem install dtc_rake
|
22
20
|
|
23
21
|
# Quick Start
|
24
22
|
|
@@ -28,14 +26,14 @@ For a quick start just add to your appbox project's `Rakefile`:
|
|
28
26
|
require "dtc_rake"
|
29
27
|
|
30
28
|
DtcRake.configure do |config|
|
31
|
-
config.
|
29
|
+
config.product_code = "<product_code>"
|
30
|
+
config.product_name = "<product_name>"
|
32
31
|
config.appbox_territory_code = "<territory_code>"
|
33
|
-
config.appbox_meta_artifact_code = "<meta_artifact_code>"
|
34
32
|
config.appbox_location_code = "<folder_code>"
|
35
33
|
end
|
36
34
|
```
|
37
35
|
|
38
|
-
*Note: The appbox project name should be `<vendor>_<app>-appbox
|
36
|
+
*Note: The appbox project name should be `<vendor>_<app>-appbox`. If not, you must specify `config.vendor` and `config.app` within `DtcRake.configure` in `Rakefile`.*
|
39
37
|
|
40
38
|
All shared tasks will be found and loaded automatically, you can verify it with `rake -T` command.
|
41
39
|
|
@@ -61,7 +59,6 @@ rake upload:cmd DTC_RAKE_PASSWD=/path/to/12-345-6
|
|
61
59
|
|
62
60
|
The following example shows all configuration options:
|
63
61
|
|
64
|
-
|
65
62
|
```ruby
|
66
63
|
require "dtc_rake"
|
67
64
|
|
@@ -70,7 +67,7 @@ DtcRake.configure do |config|
|
|
70
67
|
config.app = "<app_code>"
|
71
68
|
|
72
69
|
# Code of appbox artifact. Guessed from vendor, app and version in uuApp
|
73
|
-
# deployment descriptor if not set.
|
70
|
+
# deployment descriptor if not set. Since 0.2.0.
|
74
71
|
config.appbox_artifact_code = "<artifact_code>"
|
75
72
|
|
76
73
|
# Code of appbox location (folder or organization unit). Required.
|
@@ -86,9 +83,10 @@ DtcRake.configure do |config|
|
|
86
83
|
# If not set, appbox is created with empty content.
|
87
84
|
# Relative path is relative to root_dir.
|
88
85
|
config.appbox_uarchive = "<uarchive_path>"
|
89
|
-
|
90
|
-
#
|
91
|
-
|
86
|
+
|
87
|
+
# Appbox version. Read from VERSION file located in the same directory
|
88
|
+
# as Rakefile if not set.
|
89
|
+
config.appbox_version = "1.2.3-dev"
|
92
90
|
|
93
91
|
# Print messages in colors. Default value: true.
|
94
92
|
config.colorize = true
|
@@ -97,17 +95,64 @@ DtcRake.configure do |config|
|
|
97
95
|
# Relative path is relative to root_dir.
|
98
96
|
config.output_dir = "target"
|
99
97
|
|
98
|
+
# Code of product the appbox belongs to. Required.
|
99
|
+
config.product_code = "UU-CLOUDG01-C3"
|
100
|
+
|
101
|
+
# Name of product the appbox belongs to. Required.
|
102
|
+
config.product_name = "uuCloudg01C3"
|
103
|
+
|
100
104
|
# Appbox project root folder. Default value: current working directory.
|
101
105
|
config.root_dir = Dir.pwd
|
102
106
|
|
103
|
-
# Upload
|
104
|
-
config.
|
107
|
+
# Upload README.md or README.txt to appbox artifact. Default value: false.
|
108
|
+
config.upload_readme = true
|
109
|
+
|
110
|
+
# Upload uuCloud deployment descriptor to appbox artifact. Default value: false.
|
111
|
+
config.upload_uucloud_descriptor = true
|
112
|
+
|
113
|
+
# Path to uuCloud deployment descriptor. Default value: uucloud_descriptor.json.
|
114
|
+
config.uucloud_descriptor_path = "<uucloud_descriptor_path>"
|
105
115
|
|
106
116
|
# Code of vendor. Guessed from root_dir name if not set.
|
107
117
|
config.vendor = "<vendor_code>"
|
118
|
+
|
119
|
+
# List of files (or glob patterns) determining which files get updated by
|
120
|
+
# version:sync task. Default: none.
|
121
|
+
config.version_sync_files = ["../uu_c3/lib/uu_c3/version.rb"]
|
108
122
|
end
|
109
123
|
```
|
110
124
|
|
125
|
+
`VERSION` file contents example:
|
126
|
+
|
127
|
+
```
|
128
|
+
1.2.3-dev
|
129
|
+
```
|
130
|
+
|
131
|
+
*Note: Leading and trailing whitespace (incl. line breaks) does not matter - it gets stripped/trimmed. Only the version itself is important.*
|
132
|
+
|
133
|
+
### Environment Variables
|
134
|
+
|
135
|
+
Configuration can also be specified in environment variables. Environment variables take precedence over configuration in `Rakefile`.
|
136
|
+
|
137
|
+
```
|
138
|
+
DTC_RAKE_APP=<app_code>
|
139
|
+
DTC_RAKE_APPBOX_ARTIFACT_CODE=<artifact_code>
|
140
|
+
DTC_RAKE_APPBOX_LOCATION_CODE=<folder_code>
|
141
|
+
DTC_RAKE_APPBOX_META_ARTIFACT_CODE=<meta_artifact_code>
|
142
|
+
DTC_RAKE_APPBOX_TERRITORY_CODE=<territory_code>
|
143
|
+
DTC_RAKE_APPBOX_UARCHIVE=<uarchive_path>
|
144
|
+
DTC_RAKE_APPBOX_VERSION=1.2.3-dev
|
145
|
+
DTC_RAKE_COLORIZE=false
|
146
|
+
DTC_RAKE_OUTPUT_DIR=target
|
147
|
+
DTC_RAKE_PRODUCT_CODE=UU-CLOUDG01-C3
|
148
|
+
DTC_RAKE_PRODUCT_NAME=uuCloudg01C3
|
149
|
+
DTC_RAKE_ROOT_DIR=<root_dir>
|
150
|
+
DTC_RAKE_UPLOAD_README=true
|
151
|
+
DTC_RAKE_UPLOAD_UUCLOUD_DESCRIPTOR=true
|
152
|
+
DTC_RAKE_UUCLOUD_DESCRIPTOR_PATH=<uucloud_descriptor_path>
|
153
|
+
DTC_RAKE_VENDOR=<vendor_code>
|
154
|
+
```
|
155
|
+
|
111
156
|
## Explanation of Provided Tasks
|
112
157
|
|
113
158
|
### appbox
|
@@ -136,7 +181,7 @@ Builds pack with command server. Available if project `<vendor>_<app>-cmd` exist
|
|
136
181
|
|
137
182
|
### build:dockerfiles
|
138
183
|
|
139
|
-
Builds pack with `Dockerfile`s. Available if project
|
184
|
+
Builds pack with `Dockerfile`s. Available if project `docker` exists.
|
140
185
|
|
141
186
|
### build:gem
|
142
187
|
|
@@ -148,7 +193,7 @@ Builds pack with visual use cases. Available if project `<vendor>_<app>-vuc` exi
|
|
148
193
|
|
149
194
|
### build:yardoc
|
150
195
|
|
151
|
-
Builds
|
196
|
+
Builds pack with command client yardoc. Available if project `<vendor>_<app>` exists.
|
152
197
|
|
153
198
|
### upload:all
|
154
199
|
|
@@ -162,13 +207,13 @@ Requires `DTC_RAKE_PASSWD` to be set.
|
|
162
207
|
|
163
208
|
### upload:descriptor
|
164
209
|
|
165
|
-
Uploads uuApp deployment descriptor to appbox artifact. Available if `config.
|
210
|
+
Uploads uuApp deployment descriptor to appbox artifact. Available if `config.upload_uucloud_descriptor` is set to `true`.
|
166
211
|
|
167
212
|
Requires `DTC_RAKE_PASSWD` to be set.
|
168
213
|
|
169
214
|
### upload:dockerfiles
|
170
215
|
|
171
|
-
Uploads pack with `Dockerfile`s to appbox artifact. Available if project
|
216
|
+
Uploads pack with `Dockerfile`s to appbox artifact. Available if project `docker` exists.
|
172
217
|
|
173
218
|
Requires `DTC_RAKE_PASSWD` to be set.
|
174
219
|
|
@@ -186,10 +231,30 @@ Requires `DTC_RAKE_PASSWD` to be set.
|
|
186
231
|
|
187
232
|
### upload:yardoc
|
188
233
|
|
189
|
-
Uploads
|
234
|
+
Uploads pack with command client yardoc to appbox artifact. Available if project `<vendor>_<app>` exists.
|
190
235
|
|
191
236
|
Requires `DTC_RAKE_PASSWD` to be set.
|
192
237
|
|
238
|
+
### version
|
239
|
+
|
240
|
+
Shows the current version stored in `VERSION` file located in the same directory as `Rakefile`.
|
241
|
+
|
242
|
+
### version:bump:major
|
243
|
+
|
244
|
+
Bumps the major version. Updates `VERSION` file located in the same directory as `Rakefile` and files specified in `config.version_files`.
|
245
|
+
|
246
|
+
### version:bump:minor
|
247
|
+
|
248
|
+
Bumps the minor version. Updates `VERSION` file located in the same directory as `Rakefile` and files specified in `config.version_files`.
|
249
|
+
|
250
|
+
### version:bump:patch
|
251
|
+
|
252
|
+
Bumps the patch version. Updates `VERSION` file located in the same directory as `Rakefile` and files specified in `config.version_files`.
|
253
|
+
|
254
|
+
### version:set
|
255
|
+
|
256
|
+
Sets the version. The version may contain *prerelease* and/or *build metadata* parts (see [Semantic Versioning](http://semver.org)). Updates `VERSION` file located in the same directory as `Rakefile` and files specified in `config.version_files`.
|
257
|
+
|
193
258
|
# How-to
|
194
259
|
|
195
260
|
## How to Add Custom Task
|
@@ -218,13 +283,6 @@ require "dtc_rake"
|
|
218
283
|
|
219
284
|
with
|
220
285
|
|
221
|
-
```ruby
|
222
|
-
require "dtc_rake/tasks"
|
223
|
-
DtcRake::Tasks.load_tasks(exclude: ["upload_dockerfiles.rake"])
|
224
|
-
```
|
225
|
-
|
226
|
-
To remove check that is used also as dependency for e.g. `upload:all`, it is needed to remove it also from prerequisites of task. Example how to remove `upload:dockerfiles` and do not call it when building all packs.
|
227
|
-
|
228
286
|
```ruby
|
229
287
|
require "dtc_rake/tasks"
|
230
288
|
DtcRake::Tasks.load_tasks(exclude: ["upload_dockerfiles.rake"])
|
data/Rakefile
CHANGED
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
1.0.0-beta.1
|
data/dtc_rake.gemspec
CHANGED
@@ -22,7 +22,8 @@ Gem::Specification.new do |spec|
|
|
22
22
|
spec.add_runtime_dependency "rainbow", "~> 2.1.0"
|
23
23
|
spec.add_runtime_dependency "uu_os", "~> 0.19"
|
24
24
|
spec.add_runtime_dependency "uu_os_commons", "~> 1.5"
|
25
|
+
spec.add_runtime_dependency "rake-version", "~> 1.0"
|
25
26
|
|
26
27
|
spec.add_development_dependency "bundler", "~> 1.13", ">= 1.13.3"
|
27
|
-
spec.add_development_dependency "rake", "~>
|
28
|
+
spec.add_development_dependency "rake", "~> 11.0"
|
28
29
|
end
|
data/lib/dtc_rake/config.rb
CHANGED
@@ -3,7 +3,9 @@ require "pathname"
|
|
3
3
|
|
4
4
|
module DtcRake
|
5
5
|
def configure(&block)
|
6
|
-
|
6
|
+
config = Config.instance
|
7
|
+
yield config
|
8
|
+
config.validate!
|
7
9
|
end
|
8
10
|
module_function :configure
|
9
11
|
|
@@ -11,19 +13,21 @@ module DtcRake
|
|
11
13
|
include Singleton
|
12
14
|
|
13
15
|
def initialize
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
16
|
+
self.root_dir = Dir.pwd
|
17
|
+
self.output_dir = "target"
|
18
|
+
self.colorize = true
|
19
|
+
self.upload_readme = false
|
20
|
+
self.appbox_meta_artifact_code = "UU.OS/RUNTIME/APP_BOX"
|
21
|
+
self.upload_uucloud_descriptor = false
|
22
|
+
self.version_files = []
|
19
23
|
guess_vendor_and_app
|
20
24
|
end
|
21
25
|
|
22
26
|
# Code of application. Guessed from root_dir name if not set.
|
23
27
|
attr_accessor :app
|
24
28
|
|
25
|
-
# Code of appbox artifact. Guessed from
|
26
|
-
#
|
29
|
+
# Code of appbox artifact. Guessed from product_code and appbox_version
|
30
|
+
# if not set.
|
27
31
|
attr_accessor :appbox_artifact_code
|
28
32
|
|
29
33
|
# Code of appbox location (folder or organization unit). Required.
|
@@ -40,8 +44,9 @@ module DtcRake
|
|
40
44
|
# Relative path is relative to root_dir.
|
41
45
|
attr_accessor :appbox_uarchive
|
42
46
|
|
43
|
-
#
|
44
|
-
|
47
|
+
# Appbox version. Read from VERSION file located in the same directory
|
48
|
+
# as Rakefile if not set.
|
49
|
+
attr_accessor :appbox_version
|
45
50
|
|
46
51
|
# Print messages in colors. Default value: true.
|
47
52
|
attr_accessor :colorize
|
@@ -50,45 +55,302 @@ module DtcRake
|
|
50
55
|
# Relative path is relative to root_dir.
|
51
56
|
attr_accessor :output_dir
|
52
57
|
|
58
|
+
# Code of product the appbox belongs to. Required.
|
59
|
+
attr_accessor :product_code
|
60
|
+
|
61
|
+
# Name of product the appbox belongs to. Required.
|
62
|
+
attr_accessor :product_name
|
63
|
+
|
53
64
|
# Appbox project root folder. Default value: current working directory.
|
54
65
|
attr_accessor :root_dir
|
55
66
|
|
67
|
+
# Upload README.md or README.txt to appbox artifact. Default value: false.
|
68
|
+
attr_accessor :upload_readme
|
69
|
+
|
56
70
|
# Upload uuApp deployment descriptor to appbox artifact. Default value: false.
|
57
|
-
attr_accessor :
|
71
|
+
attr_accessor :upload_uucloud_descriptor
|
72
|
+
|
73
|
+
# Path to uuApp deployment descriptor. Default value: uucloud_descriptor.json.
|
74
|
+
attr_accessor :uucloud_descriptor_path
|
58
75
|
|
59
76
|
# Code of vendor. Guessed from root_dir name if not set.
|
60
77
|
attr_accessor :vendor
|
61
78
|
|
79
|
+
# List of files (or glob patterns) determining which files get updated by
|
80
|
+
# version:* tasks. Default: none.
|
81
|
+
attr_accessor :version_files
|
82
|
+
|
83
|
+
def validate!
|
84
|
+
%w(appbox_location_code appbox_territory_code product_code product_name).each do |param|
|
85
|
+
if instance_variable_get("@#{param}").nil?
|
86
|
+
_error "Required parameter #{param} is not set. Set it within DtcRake.configure in your Rakefile."
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
62
91
|
def app=(name)
|
63
92
|
@app = name.downcase unless name.nil?
|
64
93
|
end
|
65
94
|
|
95
|
+
def appbox_artifact_code
|
96
|
+
return @appbox_artifact_code if @appbox_artifact_code
|
97
|
+
|
98
|
+
@appbox_artifact_code = ENV["DTC_RAKE_APPBOX_ARTIFACT_CODE"]
|
99
|
+
|
100
|
+
if @appbox_artifact_code.nil?
|
101
|
+
default_code = "#{product_code}/APPBOX-#{appbox_version}"
|
102
|
+
@appbox_artifact_code = default_code
|
103
|
+
end
|
104
|
+
|
105
|
+
@appbox_artifact_code
|
106
|
+
end
|
107
|
+
|
108
|
+
def appbox_artifact_code=(code)
|
109
|
+
env = ENV["DTC_RAKE_APPBOX_ARTIFACT_CODE"]
|
110
|
+
# environment variable takes precedence
|
111
|
+
@appbox_artifact_code = env.nil? ? code : env
|
112
|
+
@appbox_artifact_code
|
113
|
+
end
|
114
|
+
|
115
|
+
def appbox_location_code
|
116
|
+
return @appbox_location_code if @appbox_location_code
|
117
|
+
|
118
|
+
@appbox_location_code = ENV["DTC_RAKE_APPBOX_LOCATION_CODE"]
|
119
|
+
@appbox_location_code
|
120
|
+
end
|
121
|
+
|
122
|
+
def appbox_location_code=(code)
|
123
|
+
env = ENV["DTC_RAKE_APPBOX_LOCATION_CODE"]
|
124
|
+
# environment variable takes precedence
|
125
|
+
@appbox_location_code = env.nil? ? code : env
|
126
|
+
@appbox_location_code
|
127
|
+
end
|
128
|
+
|
129
|
+
def appbox_meta_artifact_code
|
130
|
+
return @appbox_meta_artifact_code if @appbox_meta_artifact_code
|
131
|
+
|
132
|
+
@appbox_meta_artifact_code = ENV["DTC_RAKE_APPBOX_META_ARTIFACT_CODE"]
|
133
|
+
@appbox_meta_artifact_code
|
134
|
+
end
|
135
|
+
|
136
|
+
def appbox_meta_artifact_code=(code)
|
137
|
+
env = ENV["DTC_RAKE_APPBOX_META_ARTIFACT_CODE"]
|
138
|
+
# environment variable takes precedence
|
139
|
+
@appbox_meta_artifact_code = env.nil? ? code : env
|
140
|
+
@appbox_meta_artifact_code
|
141
|
+
end
|
142
|
+
|
143
|
+
def appbox_territory_code
|
144
|
+
return @appbox_territory_code if @appbox_territory_code
|
145
|
+
|
146
|
+
@appbox_territory_code = ENV["DTC_RAKE_APPBOX_TERRITORY_CODE"]
|
147
|
+
@appbox_territory_code
|
148
|
+
end
|
149
|
+
|
150
|
+
def appbox_territory_code=(code)
|
151
|
+
env = ENV["DTC_RAKE_APPBOX_TERRITORY_CODE"]
|
152
|
+
# environment variable takes precedence
|
153
|
+
@appbox_territory_code = env.nil? ? code : env
|
154
|
+
@appbox_territory_code
|
155
|
+
end
|
156
|
+
|
157
|
+
def appbox_uarchive
|
158
|
+
return @appbox_uarchive if @appbox_uarchive
|
159
|
+
|
160
|
+
@appbox_uarchive = ENV["DTC_RAKE_APPBOX_UARCHIVE"]
|
161
|
+
@appbox_uarchive
|
162
|
+
end
|
163
|
+
|
66
164
|
def appbox_uarchive=(path)
|
165
|
+
env = ENV["DTC_RAKE_APPBOX_UARCHIVE"]
|
166
|
+
# environment variable takes precedence
|
167
|
+
path = env unless env.nil?
|
168
|
+
|
67
169
|
unless path.nil?
|
68
|
-
path = File.join(root_dir, path) if Pathname.new(path).relative?
|
69
170
|
# File.expand_path converts path to absolute and expands "~" to real user home path
|
70
|
-
|
171
|
+
path = File.expand_path(path)
|
172
|
+
|
173
|
+
if Pathname.new(path).relative?
|
174
|
+
@appbox_uarchive = File.join(root_dir, path)
|
175
|
+
else
|
176
|
+
@appbox_uarchive = path
|
177
|
+
end
|
71
178
|
end
|
72
179
|
end
|
73
180
|
|
74
|
-
def
|
75
|
-
return @
|
181
|
+
def appbox_version
|
182
|
+
return @appbox_version if @appbox_version
|
76
183
|
|
77
|
-
|
184
|
+
@appbox_version = ENV["DTC_RAKE_APPBOX_VERSION"]
|
78
185
|
|
79
|
-
|
80
|
-
|
81
|
-
|
186
|
+
if @appbox_version.nil?
|
187
|
+
version_file = File.join(root_dir, 'VERSION')
|
188
|
+
unless File.file?(version_file)
|
189
|
+
_error "Unknown appbox version. Set it in #{version_file} file or DTC_RAKE_APPBOX_VERSION environment variable."
|
82
190
|
end
|
83
|
-
|
191
|
+
version = File.binread(version_file).strip
|
192
|
+
@appbox_version = version
|
193
|
+
end
|
194
|
+
end
|
195
|
+
|
196
|
+
def appbox_version=(code)
|
197
|
+
env = ENV["DTC_RAKE_APPBOX_VERSION"]
|
198
|
+
# environment variable takes precedence
|
199
|
+
@appbox_version = env.nil? ? code : env
|
200
|
+
@appbox_version
|
201
|
+
end
|
202
|
+
|
203
|
+
def colorize
|
204
|
+
return @colorize if @colorize
|
205
|
+
|
206
|
+
env = ENV["DTC_RAKE_COLORIZE"]
|
207
|
+
unless env.nil?
|
208
|
+
@colorize = to_bool(env)
|
84
209
|
end
|
210
|
+
@colorize
|
211
|
+
end
|
212
|
+
|
213
|
+
def colorize=(flag)
|
214
|
+
env = ENV["DTC_RAKE_COLORIZE"]
|
215
|
+
# environment variable takes precedence
|
216
|
+
if env.nil?
|
217
|
+
@colorize = flag
|
218
|
+
else
|
219
|
+
@colorize = to_bool(env)
|
220
|
+
end
|
221
|
+
@colorize
|
222
|
+
end
|
223
|
+
|
224
|
+
def output_dir
|
225
|
+
return @output_dir if @output_dir
|
226
|
+
|
227
|
+
@output_dir = ENV["DTC_RAKE_OUTPUT_DIR"]
|
228
|
+
@output_dir
|
85
229
|
end
|
86
230
|
|
87
231
|
def output_dir=(path)
|
232
|
+
env = ENV["DTC_RAKE_OUTPUT_DIR"]
|
233
|
+
# environment variable takes precedence
|
234
|
+
path = env unless env.nil?
|
235
|
+
|
236
|
+
unless path.nil?
|
237
|
+
# File.expand_path converts path to absolute and expands "~" to real user home path
|
238
|
+
path = File.expand_path(path)
|
239
|
+
|
240
|
+
if Pathname.new(path).relative?
|
241
|
+
@output_dir = File.join(root_dir, path)
|
242
|
+
else
|
243
|
+
@output_dir = path
|
244
|
+
end
|
245
|
+
end
|
246
|
+
end
|
247
|
+
|
248
|
+
def product_code
|
249
|
+
return @product_code if @product_code
|
250
|
+
|
251
|
+
@product_code = ENV["DTC_RAKE_PRODUCT_CODE"]
|
252
|
+
@product_code
|
253
|
+
end
|
254
|
+
|
255
|
+
def product_code=(code)
|
256
|
+
env = ENV["DTC_RAKE_PRODUCT_CODE"]
|
257
|
+
# environment variable takes precedence
|
258
|
+
@product_code = env.nil? ? code : env
|
259
|
+
@product_code
|
260
|
+
end
|
261
|
+
|
262
|
+
def product_name
|
263
|
+
return @product_name if @product_name
|
264
|
+
|
265
|
+
@product_name = ENV["DTC_RAKE_PRODUCT_NAME"]
|
266
|
+
@product_name
|
267
|
+
end
|
268
|
+
|
269
|
+
def product_name=(name)
|
270
|
+
env = ENV["DTC_RAKE_PRODUCT_NAME"]
|
271
|
+
# environment variable takes precedence
|
272
|
+
@product_name = env.nil? ? name : env
|
273
|
+
@product_name
|
274
|
+
end
|
275
|
+
|
276
|
+
def root_dir
|
277
|
+
return @root_dir if @root_dir
|
278
|
+
|
279
|
+
@root_dir = ENV["DTC_RAKE_ROOT_DIR"]
|
280
|
+
@root_dir = Dir.pwd if @root_dir.nil?
|
281
|
+
|
282
|
+
@root_dir
|
283
|
+
end
|
284
|
+
|
285
|
+
def root_dir=(path)
|
286
|
+
env = ENV["DTC_RAKE_ROOT_DIR"]
|
287
|
+
# environment variable takes precedence
|
288
|
+
path = env unless env.nil?
|
289
|
+
|
88
290
|
unless path.nil?
|
89
|
-
path = File.join(root_dir, path) if Pathname.new(path).relative?
|
90
291
|
# File.expand_path converts path to absolute and expands "~" to real user home path
|
91
|
-
|
292
|
+
# If the path is relative, it gets evaluated against to current working directory (Dir.pwd)
|
293
|
+
@root_dir = File.expand_path(path)
|
294
|
+
end
|
295
|
+
end
|
296
|
+
|
297
|
+
def upload_readme
|
298
|
+
return @upload_readme if @upload_readme
|
299
|
+
|
300
|
+
@upload_readme = to_bool(ENV["DTC_RAKE_UPLOAD_README"])
|
301
|
+
@upload_readme
|
302
|
+
end
|
303
|
+
|
304
|
+
def upload_readme=(flag)
|
305
|
+
env = ENV["DTC_RAKE_UPLOAD_README"]
|
306
|
+
# environment variable takes precedence
|
307
|
+
if env.nil?
|
308
|
+
@upload_readme = flag
|
309
|
+
else
|
310
|
+
@upload_readme = to_bool(env)
|
311
|
+
end
|
312
|
+
@upload_readme
|
313
|
+
end
|
314
|
+
|
315
|
+
def upload_uucloud_descriptor
|
316
|
+
return @upload_uucloud_descriptor if @upload_uucloud_descriptor
|
317
|
+
|
318
|
+
@upload_uucloud_descriptor = to_bool(ENV["DTC_RAKE_UPLOAD_UUCLOUD_DESCRIPTOR"])
|
319
|
+
@upload_uucloud_descriptor
|
320
|
+
end
|
321
|
+
|
322
|
+
def upload_uucloud_descriptor=(flag)
|
323
|
+
env = ENV["DTC_RAKE_UPLOAD_UUCLOUD_DESCRIPTOR"]
|
324
|
+
# environment variable takes precedence
|
325
|
+
if env.nil?
|
326
|
+
@upload_uucloud_descriptor = flag
|
327
|
+
else
|
328
|
+
@upload_uucloud_descriptor = to_bool(env)
|
329
|
+
end
|
330
|
+
@upload_uucloud_descriptor
|
331
|
+
end
|
332
|
+
|
333
|
+
def uucloud_descriptor_path
|
334
|
+
return @uucloud_descriptor_path if @uucloud_descriptor_path
|
335
|
+
|
336
|
+
env = ENV["DTC_RAKE_UUCLOUD_DESCRIPTOR_PATH"]
|
337
|
+
if env.nil?
|
338
|
+
default_file_path = File.expand_path(File.join(root_dir, "uucloud_descriptor.json"))
|
339
|
+
|
340
|
+
Dir.chdir(root_dir) do
|
341
|
+
unless File.file?(default_file_path)
|
342
|
+
_error "uuCloud deployment descriptor not found. Please create file #{default_file_path} or configure its path in Rakefile." \
|
343
|
+
" Or you can configure its path in DTC_RAKE_UUCLOUD_DESCRIPTOR_PATH environment variable."
|
344
|
+
end
|
345
|
+
@uucloud_descriptor_path = default_file_path
|
346
|
+
end
|
347
|
+
else
|
348
|
+
env = File.expand_path(env)
|
349
|
+
unless File.file?(env)
|
350
|
+
_error "uuCloud deployment descriptor not found. Please create file #{env} or configure its path in" \
|
351
|
+
" DTC_RAKE_UUCLOUD_DESCRIPTOR_PATH environment variable."
|
352
|
+
end
|
353
|
+
@uucloud_descriptor_path = env
|
92
354
|
end
|
93
355
|
end
|
94
356
|
|
@@ -96,17 +358,48 @@ module DtcRake
|
|
96
358
|
@vendor = name.downcase unless name.nil?
|
97
359
|
end
|
98
360
|
|
361
|
+
def version_files=(list)
|
362
|
+
if list.nil?
|
363
|
+
@version_files = []
|
364
|
+
elsif list.is_a?(Array)
|
365
|
+
@version_files = list
|
366
|
+
else
|
367
|
+
_error "Invalid version_files value - #{list} (#{list})." \
|
368
|
+
" Use an array of strings (representing file names or glob patterns)."
|
369
|
+
end
|
370
|
+
end
|
371
|
+
|
99
372
|
private
|
100
373
|
|
374
|
+
def to_bool(value)
|
375
|
+
(value =~ /^true|1|yes$/i) == 0
|
376
|
+
end
|
377
|
+
|
101
378
|
def guess_vendor_and_app
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
379
|
+
env_vendor = ENV["DTC_RAKE_VENDOR"]
|
380
|
+
env_app = ENV["DTC_RAKE_APP"]
|
381
|
+
|
382
|
+
if env_vendor.nil? || env_app.nil?
|
383
|
+
base_name = File.basename(root_dir)
|
384
|
+
if /([^_]+)_([^-]+)-appbox/ =~ base_name
|
385
|
+
@vendor = env_vendor.nil? ? $1 : env_vendor
|
386
|
+
@app = env_app.nil? ? $2 : env_app
|
387
|
+
else
|
388
|
+
_error "Appbox root folder (#{base_name}) does not match naming convention <vendor>_<app>-appbox." \
|
389
|
+
" Either change the folder name or configure 'vendor' and 'app' within DtcRake.configure in Rakefile." \
|
390
|
+
" Or you can set DTC_RAKE_VENDOR and DTC_RAKE_APP environment variables to specify those."
|
391
|
+
end
|
106
392
|
else
|
107
|
-
|
108
|
-
|
393
|
+
@vendor = env_vendor
|
394
|
+
@app = env_app
|
109
395
|
end
|
110
396
|
end
|
397
|
+
|
398
|
+
def _error(msg)
|
399
|
+
# this avoids cycle between dtc_rake/config and dtc_rake/ui
|
400
|
+
require "dtc_rake/ui"
|
401
|
+
self.class.send(:include, DtcRake::UI) unless self.class.include?(DtcRake::UI)
|
402
|
+
error(msg)
|
403
|
+
end
|
111
404
|
end
|
112
405
|
end
|
data/lib/dtc_rake/product.rb
CHANGED
@@ -40,55 +40,51 @@ module DtcRake
|
|
40
40
|
@has_dockerfiles = File.directory?(@dockerfiles_project)
|
41
41
|
end
|
42
42
|
|
43
|
-
def
|
44
|
-
return @
|
43
|
+
def uucloud_descriptor
|
44
|
+
return @uucloud_descriptor if @uucloud_descriptor
|
45
45
|
|
46
|
-
|
47
|
-
|
46
|
+
# TODO: Use app.json instead of uucloud_descriptor.json for appbox metadata
|
47
|
+
File.open(Config.instance.uucloud_descriptor_path, "r") do |f|
|
48
|
+
@uucloud_descriptor = JSON.parse(f.read, symbolize_names: true)
|
48
49
|
end
|
49
50
|
end
|
50
51
|
|
51
52
|
def version
|
52
|
-
|
53
|
+
config = Config.instance
|
54
|
+
config.appbox_version
|
53
55
|
end
|
54
56
|
|
55
57
|
def appbox_uri
|
56
58
|
return @appbox_uri if @appbox_uri
|
57
59
|
|
58
60
|
config = Config.instance
|
59
|
-
|
60
|
-
appbox_artifact_code = config.appbox_artifact_code || "#{config.vendor.upcase}.#{config.app.upcase}_#{version}"
|
61
|
-
appbox_uri = UU::OS::UESURI.create(territory_code: config.appbox_territory_code, artifact_code: appbox_artifact_code)
|
61
|
+
appbox_uri = UU::OS::UESURI.create(territory_code: config.appbox_territory_code, artifact_code: config.appbox_artifact_code)
|
62
62
|
@appbox_uri = appbox_uri
|
63
63
|
end
|
64
64
|
|
65
65
|
def gem_file_name
|
66
66
|
return @gem_file_name if defined? @gem_file_name
|
67
67
|
config = Config.instance
|
68
|
-
# TODO Read version from version.rb or allow to override it from within the Rakefile
|
69
68
|
# the actual gem version differs - e.g. uu_operation_registry-1.3.0.pre.BETA.1.gem (NOT uu_operation_registry-1.3.0-BETA.1.gem)
|
70
|
-
gem_version = version.sub(/-(ALPHA|BETA|RC)/) { |
|
69
|
+
gem_version = version.sub(/-(dev|ALPHA|BETA|RC)/) { |_| ".pre.#{$1}" }
|
71
70
|
@gem_file_name = "#{config.vendor}_#{config.app}-#{gem_version}.gem"
|
72
71
|
end
|
73
72
|
|
74
73
|
def cmd_file_name
|
75
74
|
return @cmd_file_name if defined? @cmd_file_name
|
76
75
|
config = Config.instance
|
77
|
-
# TODO Read version from version.rb or allow to override it from within the Rakefile
|
78
76
|
@cmd_file_name = "#{config.vendor}_#{config.app}-cmd-#{version}.war"
|
79
77
|
end
|
80
78
|
|
81
79
|
def vuc_file_name
|
82
80
|
return @vuc_file_name if defined? @vuc_file_name
|
83
81
|
config = Config.instance
|
84
|
-
# TODO Read version from version.rb or allow to override it from within the Rakefile
|
85
82
|
@vuc_file_name = "#{config.vendor}_#{config.app}-vuc-#{version}.war"
|
86
83
|
end
|
87
84
|
|
88
85
|
def dockerfiles_file_name
|
89
86
|
return @dockerfiles_file_name if defined? @dockerfiles_file_name
|
90
87
|
config = Config.instance
|
91
|
-
# TODO Read version from version.rb or allow to override it from within the Rakefile
|
92
88
|
@dockerfiles_file_name = "#{config.vendor}_#{config.app}-dockerfiles-#{version}.zip"
|
93
89
|
end
|
94
90
|
|
@@ -128,10 +124,16 @@ module DtcRake
|
|
128
124
|
@yardoc_attachment_code = "#{config.vendor.upcase}.#{config.app.upcase}/YARDOC-PACK"
|
129
125
|
end
|
130
126
|
|
131
|
-
def
|
132
|
-
return @
|
127
|
+
def uucloud_descriptor_attachment_code
|
128
|
+
return @uucloud_descriptor_attachment_code if defined? @uucloud_descriptor_attachment_code
|
129
|
+
config = Config.instance
|
130
|
+
@uucloud_descriptor_attachment_code = "#{config.vendor.upcase}.#{config.app.upcase}/UUAPP-DEPLOY"
|
131
|
+
end
|
132
|
+
|
133
|
+
def readme_attachment_code
|
134
|
+
return @readme_attachment_code if defined? @readme_attachment_code
|
133
135
|
config = Config.instance
|
134
|
-
@
|
136
|
+
@readme_attachment_code = "#{config.vendor.upcase}.#{config.app.upcase}/README"
|
135
137
|
end
|
136
138
|
end
|
137
139
|
end
|
data/lib/dtc_rake/ui.rb
CHANGED
@@ -1,37 +1,45 @@
|
|
1
1
|
module DtcRake
|
2
2
|
module UI
|
3
3
|
def error(msg)
|
4
|
-
|
4
|
+
if DtcRake::UI.colorize?
|
5
|
+
msg = Rainbow(msg).red
|
6
|
+
end
|
5
7
|
abort msg
|
6
8
|
end
|
7
9
|
module_function :error
|
8
10
|
|
9
11
|
def announce(msg)
|
10
|
-
|
12
|
+
if DtcRake::UI.colorize?
|
13
|
+
msg = Rainbow(msg).aqua
|
14
|
+
end
|
11
15
|
puts msg
|
12
16
|
end
|
13
17
|
module_function :announce
|
14
18
|
|
15
19
|
def success(msg)
|
16
|
-
|
20
|
+
if DtcRake::UI.colorize?
|
21
|
+
msg = Rainbow(msg).green
|
22
|
+
end
|
17
23
|
puts msg
|
18
24
|
end
|
19
25
|
module_function :success
|
20
26
|
|
21
27
|
def warning(msg)
|
22
|
-
|
28
|
+
if DtcRake::UI.colorize?
|
29
|
+
msg = Rainbow(msg).yellow
|
30
|
+
end
|
23
31
|
puts msg
|
24
32
|
end
|
25
33
|
module_function :warning
|
26
34
|
|
27
35
|
def info(msg)
|
28
|
-
|
36
|
+
if DtcRake::UI.colorize?
|
37
|
+
msg = Rainbow(msg).white
|
38
|
+
end
|
29
39
|
puts msg
|
30
40
|
end
|
31
41
|
module_function :info
|
32
42
|
|
33
|
-
private
|
34
|
-
|
35
43
|
def colorize?
|
36
44
|
return @colorize if defined? @colorize
|
37
45
|
|
@@ -45,5 +53,6 @@ module DtcRake
|
|
45
53
|
end
|
46
54
|
@colorize = colorize
|
47
55
|
end
|
56
|
+
module_function :colorize?
|
48
57
|
end
|
49
58
|
end
|
data/lib/dtc_rake/version.rb
CHANGED
data/lib/tasks/appbox.rake
CHANGED
@@ -5,6 +5,8 @@ require "dtc_rake/product"
|
|
5
5
|
require "dtc_rake/ui"
|
6
6
|
|
7
7
|
require "uu/os/security/session"
|
8
|
+
require "uu/os/uesuri"
|
9
|
+
require "uu/os/search"
|
8
10
|
require "uu/os/artifact"
|
9
11
|
require "uu/os/sheet"
|
10
12
|
require "uu/os/rest/binary_value"
|
@@ -24,7 +26,7 @@ def create_appbox(attrs)
|
|
24
26
|
config = DtcRake::Config.instance
|
25
27
|
product = DtcRake::Product.instance
|
26
28
|
credentials = attrs[:credentials]
|
27
|
-
version = attrs.fetch(:version,
|
29
|
+
version = attrs.fetch(:version, config.appbox_version)
|
28
30
|
icon = attrs.fetch(:icon, %q(ues:#{system}:#{ues_v5.core_v1.codetable_v1.base_v1.CodeTable_Icons}:#{ART_364}))
|
29
31
|
|
30
32
|
error("Specify appbox location code - set it in DtcRake.configure block (attribute appbox_location_code) in your Rakefile") unless config.appbox_location_code
|
@@ -37,8 +39,15 @@ def create_appbox(attrs)
|
|
37
39
|
UU::OS::Security::Session.login(credentials)
|
38
40
|
|
39
41
|
config = DtcRake::Config.instance
|
40
|
-
art_name = "#{
|
41
|
-
art_code = config.appbox_artifact_code
|
42
|
+
art_name = "#{config.product_name} #{version} AppBox"
|
43
|
+
art_code = config.appbox_artifact_code
|
44
|
+
|
45
|
+
art_uri = UU::OS::UESURI.create(territory_code: config.appbox_territory_code, artifact_code: art_code)
|
46
|
+
if UU::OS::Search.exists(art_uri)
|
47
|
+
info "Appbox #{art_uri} already exists"
|
48
|
+
return
|
49
|
+
end
|
50
|
+
|
42
51
|
announce "Creating appbox #{art_code} in territory #{config.appbox_territory_code}"
|
43
52
|
|
44
53
|
appbox_uri = UU::OS::Artifact.create(location,
|
@@ -86,5 +95,5 @@ task :appbox do
|
|
86
95
|
credentials: ENV["DTC_RAKE_PASSWD"],
|
87
96
|
version: ENV["VERSION"] || DtcRake::Product.instance.version
|
88
97
|
)
|
89
|
-
success "Appbox #{art_uri} created"
|
98
|
+
success "Appbox #{art_uri} created" unless art_uri.nil?
|
90
99
|
end
|
data/lib/tasks/upload_all.rake
CHANGED
@@ -14,7 +14,8 @@ end
|
|
14
14
|
deps << :cmd if product.has_cmd
|
15
15
|
deps << :vuc if product.has_vuc
|
16
16
|
deps << :dockerfiles if product.has_dockerfiles
|
17
|
-
deps << :descriptor if config.
|
17
|
+
deps << :descriptor if config.upload_uucloud_descriptor
|
18
|
+
deps << :readme if config.upload_readme
|
18
19
|
|
19
20
|
namespace :upload do
|
20
21
|
desc "Uploads all packs to appbox artifact; requires path to password file"
|
@@ -9,10 +9,10 @@ include DtcRake::UI
|
|
9
9
|
product = DtcRake::Product.instance
|
10
10
|
config = DtcRake::Config.instance
|
11
11
|
|
12
|
-
if config.
|
12
|
+
if config.upload_uucloud_descriptor
|
13
13
|
namespace :upload do
|
14
14
|
desc <<-DESC.gsub(/^ {4}/, '')
|
15
|
-
Uploads
|
15
|
+
Uploads uuCloud deployment descriptor to appbox artifact; requires path to password file.
|
16
16
|
|
17
17
|
rake upload:descriptor DTC_RAKE_PASSWD=12-345-6
|
18
18
|
("~/.uu/12-345-6" will be used)
|
@@ -23,11 +23,11 @@ if config.upload_app_descriptor
|
|
23
23
|
task :descriptor do
|
24
24
|
error("Specify password file in env variable DTC_RAKE_PASSWD, e.g. rake upload:descriptor DTC_RAKE_PASSWD=12-345-6") unless ENV["DTC_RAKE_PASSWD"]
|
25
25
|
|
26
|
-
the_file = config.
|
26
|
+
the_file = config.uucloud_descriptor_path
|
27
27
|
error("File #{the_file} does not exist") unless File.file?(the_file)
|
28
28
|
|
29
29
|
art_uri = product.appbox_uri
|
30
|
-
attch_code = product.
|
30
|
+
attch_code = product.uucloud_descriptor_attachment_code
|
31
31
|
announce "Uploading #{the_file} to #{art_uri}:#{attch_code}..."
|
32
32
|
attch_uri = DtcRake.upload_pack(
|
33
33
|
file: the_file,
|
@@ -0,0 +1,47 @@
|
|
1
|
+
require "rake"
|
2
|
+
require "fileutils"
|
3
|
+
require "dtc_rake/config"
|
4
|
+
require "dtc_rake/product"
|
5
|
+
require "dtc_rake/ui"
|
6
|
+
require "dtc_rake/util"
|
7
|
+
|
8
|
+
include DtcRake::UI
|
9
|
+
product = DtcRake::Product.instance
|
10
|
+
config = DtcRake::Config.instance
|
11
|
+
|
12
|
+
if config.upload_readme
|
13
|
+
namespace :upload do
|
14
|
+
desc <<-DESC.gsub(/^ {4}/, '')
|
15
|
+
Uploads README.md or README.txt to appbox artifact; requires path to password file.
|
16
|
+
|
17
|
+
rake upload:readme DTC_RAKE_PASSWD=12-345-6
|
18
|
+
("~/.uu/12-345-6" will be used)
|
19
|
+
|
20
|
+
rake upload:readme DTC_RAKE_PASSWD=/path/to/12-345-6
|
21
|
+
(password file from the specified path will be used)
|
22
|
+
DESC
|
23
|
+
task :readme do
|
24
|
+
error("Specify password file in env variable DTC_RAKE_PASSWD, e.g. rake upload:readme DTC_RAKE_PASSWD=12-345-6") unless ENV["DTC_RAKE_PASSWD"]
|
25
|
+
|
26
|
+
readme_dir = File.expand_path(File.join(config.root_dir, ".."))
|
27
|
+
readme = File.join(readme_dir, "README.md")
|
28
|
+
unless File.file?(readme)
|
29
|
+
readme = File.join(readme_dir, "README.txt")
|
30
|
+
unless File.file?(readme)
|
31
|
+
error("Neither README.md nor README.txt found in #{readme_dir}")
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
art_uri = product.appbox_uri
|
36
|
+
attch_code = product.readme_attachment_code
|
37
|
+
announce "Uploading #{readme} to #{art_uri}:#{attch_code}..."
|
38
|
+
attch_uri = DtcRake.upload_pack(
|
39
|
+
file: readme,
|
40
|
+
appbox_uri: art_uri,
|
41
|
+
attachment_code: attch_code,
|
42
|
+
credentials: ENV["DTC_RAKE_PASSWD"]
|
43
|
+
)
|
44
|
+
success "File #{readme} uploaded to #{attch_uri}"
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
begin
|
2
|
+
require "rake-version"
|
3
|
+
rescue LoadError => e
|
4
|
+
abort "WARNING: Failed to load rake-version gem - cause: #{e.message}.\n" \
|
5
|
+
"\tYou won't be able to manipulate with version via Rake tasks until you resolve the problem."
|
6
|
+
end
|
7
|
+
|
8
|
+
require "rake"
|
9
|
+
require "dtc_rake/config"
|
10
|
+
require "dtc_rake/ui"
|
11
|
+
|
12
|
+
include DtcRake::UI
|
13
|
+
config = DtcRake::Config.instance
|
14
|
+
|
15
|
+
RakeVersion::Tasks.new do |v|
|
16
|
+
v.copy *config.version_files, all: true
|
17
|
+
end
|
metadata
CHANGED
@@ -1,116 +1,131 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dtc_rake
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0.pre.beta.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jan Sibil
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-08-
|
11
|
+
date: 2017-08-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name: json
|
15
14
|
requirement: !ruby/object:Gem::Requirement
|
16
15
|
requirements:
|
17
|
-
- -
|
16
|
+
- - ~>
|
18
17
|
- !ruby/object:Gem::Version
|
19
18
|
version: 1.8.3
|
20
|
-
|
19
|
+
name: json
|
21
20
|
prerelease: false
|
21
|
+
type: :runtime
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - ~>
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 1.8.3
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name: rainbow
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
30
29
|
requirements:
|
31
|
-
- -
|
30
|
+
- - ~>
|
32
31
|
- !ruby/object:Gem::Version
|
33
32
|
version: 2.1.0
|
34
|
-
|
33
|
+
name: rainbow
|
35
34
|
prerelease: false
|
35
|
+
type: :runtime
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ~>
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: 2.1.0
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name: uu_os
|
43
42
|
requirement: !ruby/object:Gem::Requirement
|
44
43
|
requirements:
|
45
|
-
- -
|
44
|
+
- - ~>
|
46
45
|
- !ruby/object:Gem::Version
|
47
46
|
version: '0.19'
|
48
|
-
|
47
|
+
name: uu_os
|
49
48
|
prerelease: false
|
49
|
+
type: :runtime
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ~>
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0.19'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name: uu_os_commons
|
57
56
|
requirement: !ruby/object:Gem::Requirement
|
58
57
|
requirements:
|
59
|
-
- -
|
58
|
+
- - ~>
|
60
59
|
- !ruby/object:Gem::Version
|
61
60
|
version: '1.5'
|
62
|
-
|
61
|
+
name: uu_os_commons
|
63
62
|
prerelease: false
|
63
|
+
type: :runtime
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ~>
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '1.5'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name: bundler
|
71
70
|
requirement: !ruby/object:Gem::Requirement
|
72
71
|
requirements:
|
73
|
-
- -
|
72
|
+
- - ~>
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: '1.0'
|
75
|
+
name: rake-version
|
76
|
+
prerelease: false
|
77
|
+
type: :runtime
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ~>
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '1.0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
requirement: !ruby/object:Gem::Requirement
|
85
|
+
requirements:
|
86
|
+
- - ~>
|
74
87
|
- !ruby/object:Gem::Version
|
75
88
|
version: '1.13'
|
76
|
-
- -
|
89
|
+
- - '>='
|
77
90
|
- !ruby/object:Gem::Version
|
78
91
|
version: 1.13.3
|
79
|
-
|
92
|
+
name: bundler
|
80
93
|
prerelease: false
|
94
|
+
type: :development
|
81
95
|
version_requirements: !ruby/object:Gem::Requirement
|
82
96
|
requirements:
|
83
|
-
- -
|
97
|
+
- - ~>
|
84
98
|
- !ruby/object:Gem::Version
|
85
99
|
version: '1.13'
|
86
|
-
- -
|
100
|
+
- - '>='
|
87
101
|
- !ruby/object:Gem::Version
|
88
102
|
version: 1.13.3
|
89
103
|
- !ruby/object:Gem::Dependency
|
90
|
-
name: rake
|
91
104
|
requirement: !ruby/object:Gem::Requirement
|
92
105
|
requirements:
|
93
|
-
- -
|
106
|
+
- - ~>
|
94
107
|
- !ruby/object:Gem::Version
|
95
|
-
version: '
|
96
|
-
|
108
|
+
version: '11.0'
|
109
|
+
name: rake
|
97
110
|
prerelease: false
|
111
|
+
type: :development
|
98
112
|
version_requirements: !ruby/object:Gem::Requirement
|
99
113
|
requirements:
|
100
|
-
- -
|
114
|
+
- - ~>
|
101
115
|
- !ruby/object:Gem::Version
|
102
|
-
version: '
|
103
|
-
description:
|
116
|
+
version: '11.0'
|
117
|
+
description:
|
104
118
|
email:
|
105
119
|
- 21-1@plus4u.net
|
106
120
|
executables: []
|
107
121
|
extensions: []
|
108
122
|
extra_rdoc_files: []
|
109
123
|
files:
|
110
|
-
-
|
124
|
+
- .gitignore
|
111
125
|
- Gemfile
|
112
126
|
- README.md
|
113
127
|
- Rakefile
|
128
|
+
- VERSION
|
114
129
|
- bin/console
|
115
130
|
- bin/setup
|
116
131
|
- dtc_rake.gemspec
|
@@ -133,29 +148,31 @@ files:
|
|
133
148
|
- lib/tasks/upload_descriptor.rake
|
134
149
|
- lib/tasks/upload_dockerfiles.rake
|
135
150
|
- lib/tasks/upload_gem.rake
|
151
|
+
- lib/tasks/upload_readme.rake
|
136
152
|
- lib/tasks/upload_vuc.rake
|
137
153
|
- lib/tasks/upload_yardoc.rake
|
138
|
-
|
154
|
+
- lib/tasks/version.rake
|
155
|
+
homepage:
|
139
156
|
licenses: []
|
140
157
|
metadata: {}
|
141
|
-
post_install_message:
|
158
|
+
post_install_message:
|
142
159
|
rdoc_options: []
|
143
160
|
require_paths:
|
144
161
|
- lib
|
145
162
|
required_ruby_version: !ruby/object:Gem::Requirement
|
146
163
|
requirements:
|
147
|
-
- -
|
164
|
+
- - '>='
|
148
165
|
- !ruby/object:Gem::Version
|
149
166
|
version: '0'
|
150
167
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
151
168
|
requirements:
|
152
|
-
- -
|
169
|
+
- - '>'
|
153
170
|
- !ruby/object:Gem::Version
|
154
|
-
version:
|
171
|
+
version: 1.3.1
|
155
172
|
requirements: []
|
156
|
-
rubyforge_project:
|
157
|
-
rubygems_version: 2.4.
|
158
|
-
signing_key:
|
173
|
+
rubyforge_project:
|
174
|
+
rubygems_version: 2.4.8
|
175
|
+
signing_key:
|
159
176
|
specification_version: 4
|
160
177
|
summary: Rake tasks for building apps produced by DTC.DEV team.
|
161
178
|
test_files: []
|