dtc_rake 0.2.0 → 1.0.0.pre.beta.1
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/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: []
|