cicd-builder 0.9.23 → 0.9.25

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,102 @@
1
+ # require 'delegate'
2
+ require 'forwardable'
3
+
4
+ module CiCd
5
+ module Builder
6
+ module Repo
7
+
8
+ class Base
9
+ extend ::Forwardable
10
+
11
+ attr_reader :builder
12
+
13
+ def_delegators :@builder, :options, :vars, :logger, :getBuilderVersion, :calcLocalETag
14
+
15
+ # ---------------------------------------------------------------------------------------------------------------
16
+ def initialize(builder)
17
+ @builder = builder
18
+ @vars = vars()
19
+ @logger = logger()
20
+ @options = options()
21
+ end
22
+
23
+ # ---------------------------------------------------------------------------------------------------------------
24
+ def getKey
25
+ key = "#{@vars[:project_name]}/#{@vars[:variant]}/#{@vars[:build_nam]}/#{@vars[:build_nmn]}"
26
+ end
27
+
28
+ # ---------------------------------------------------------------------------------------------------------------
29
+ def tempArtifactFile(name,data)
30
+ io = Tempfile.new(name)
31
+ data[:temp] = true
32
+ io.write(data[:data])
33
+ io.close
34
+ data[:file] = io.path
35
+ end
36
+
37
+ # ---------------------------------------------------------------------------------------------------------------
38
+ def initInventory()
39
+
40
+ hash =
41
+ {
42
+ id: "#{@vars[:project_name]}",
43
+ # In case future generations introduce incompatible features
44
+ gen: "#{@options[:gen]}",
45
+ container: {
46
+ artifacts: %w(assembly metainfo checksum),
47
+ naming: '<product>-<major>.<minor>.<patch>-<branch>-release-<number>-build-<number>.<extension>',
48
+ assembly: {
49
+ extension: 'tar.gz',
50
+ type: 'targz'
51
+ },
52
+ metainfo: {
53
+ extension: 'MANIFEST.json',
54
+ type: 'json'
55
+ },
56
+ checksum: {
57
+ extension: 'checksum',
58
+ type: 'Digest::SHA256'
59
+ },
60
+ variants: {
61
+ :"#{@vars[:variant]}" => {
62
+ latest: {
63
+ build: 0,
64
+ branch: 0,
65
+ version: 0,
66
+ release: 0,
67
+ },
68
+ versions: [ "#{@vars[:build_ver]}" ],
69
+ branches: [ "#{@vars[:build_bra]}" ],
70
+ builds: [
71
+ {
72
+ drawer: @vars[:build_nam],
73
+ build_name: @vars[:build_nmn],
74
+ build_number: @vars[:build_num],
75
+ release: @vars[:release],
76
+ }
77
+ ],
78
+ }
79
+ }
80
+ }
81
+ }
82
+ artifacts = getArtifactsDefinition()
83
+ naming = getNamingDefinition()
84
+
85
+ # By default we use the internal definition ...
86
+ if artifacts
87
+ artifacts.each do |name,artifact|
88
+ hash[:container][name] = artifact
89
+ end
90
+ end
91
+
92
+ # By default we use the internal definition ...
93
+ if naming
94
+ hash[:container][:naming] = naming
95
+ end
96
+ JSON.pretty_generate( hash, { indent: "\t", space: ' '})
97
+ end
98
+
99
+ end
100
+ end
101
+ end
102
+ end
@@ -23,5 +23,15 @@ module CiCd
23
23
  down
24
24
  end
25
25
 
26
- end
26
+ # ---------------------------------------------------------------------------------------------------------------
27
+ def addArtifact(artifacts, script, prefix, opts = {})
28
+ key = "#{@vars[:project_name]}/#{@vars[:variant]}/#{@vars[:build_nam]}/#{script.gsub(%r|^#{prefix}|, '')}"
29
+ # Store the artifact - be sure to inherit possible overrides in pkg name and ext but dictate the drawer!
30
+ artifacts << {
31
+ key: key,
32
+ data: {:file => script}.merge(opts),
33
+ }
34
+ end
35
+
36
+ end
27
37
  end
@@ -4,7 +4,7 @@ module CiCd
4
4
  # file = File.expand_path("#{File.dirname(__FILE__)}/../../../VERSION")
5
5
  # lines = File.readlines(file)
6
6
  # version = lines[0]
7
- version = '0.9.23'
7
+ version = '0.9.25'
8
8
  VERSION = version unless const_defined?('VERSION')
9
9
  major, minor, tiny = VERSION.split('.')
10
10
  MAJOR = major unless const_defined?('MAJOR')
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cicd-builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.23
4
+ version: 0.9.25
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christo De Lange
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-18 00:00:00.000000000 Z
11
+ date: 2015-02-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: awesome_print
@@ -17,6 +17,9 @@ dependencies:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
19
  version: 1.2.0
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '1.3'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -24,34 +27,49 @@ dependencies:
24
27
  - - '='
25
28
  - !ruby/object:Gem::Version
26
29
  version: 1.2.0
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '1.3'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: inifile
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - ">="
32
38
  - !ruby/object:Gem::Version
33
- version: 2.0.2
39
+ version: 3.0.0
40
+ - - "<"
41
+ - !ruby/object:Gem::Version
42
+ version: '3.1'
34
43
  type: :runtime
35
44
  prerelease: false
36
45
  version_requirements: !ruby/object:Gem::Requirement
37
46
  requirements:
38
47
  - - ">="
39
48
  - !ruby/object:Gem::Version
40
- version: 2.0.2
49
+ version: 3.0.0
50
+ - - "<"
51
+ - !ruby/object:Gem::Version
52
+ version: '3.1'
41
53
  - !ruby/object:Gem::Dependency
42
54
  name: logging
43
55
  requirement: !ruby/object:Gem::Requirement
44
56
  requirements:
45
57
  - - ">="
46
58
  - !ruby/object:Gem::Version
47
- version: 0.0.0
59
+ version: 1.8.2
60
+ - - "<"
61
+ - !ruby/object:Gem::Version
62
+ version: '1.9'
48
63
  type: :runtime
49
64
  prerelease: false
50
65
  version_requirements: !ruby/object:Gem::Requirement
51
66
  requirements:
52
67
  - - ">="
53
68
  - !ruby/object:Gem::Version
54
- version: 0.0.0
69
+ version: 1.8.2
70
+ - - "<"
71
+ - !ruby/object:Gem::Version
72
+ version: '1.9'
55
73
  - !ruby/object:Gem::Dependency
56
74
  name: json
57
75
  requirement: !ruby/object:Gem::Requirement
@@ -59,6 +77,9 @@ dependencies:
59
77
  - - '='
60
78
  - !ruby/object:Gem::Version
61
79
  version: 1.8.1
80
+ - - "<"
81
+ - !ruby/object:Gem::Version
82
+ version: '1.9'
62
83
  type: :runtime
63
84
  prerelease: false
64
85
  version_requirements: !ruby/object:Gem::Requirement
@@ -66,34 +87,49 @@ dependencies:
66
87
  - - '='
67
88
  - !ruby/object:Gem::Version
68
89
  version: 1.8.1
90
+ - - "<"
91
+ - !ruby/object:Gem::Version
92
+ version: '1.9'
69
93
  - !ruby/object:Gem::Dependency
70
94
  name: chef
71
95
  requirement: !ruby/object:Gem::Requirement
72
96
  requirements:
73
97
  - - ">="
74
98
  - !ruby/object:Gem::Version
75
- version: 11.8.2
99
+ version: 11.18.2
100
+ - - "<"
101
+ - !ruby/object:Gem::Version
102
+ version: '12'
76
103
  type: :runtime
77
104
  prerelease: false
78
105
  version_requirements: !ruby/object:Gem::Requirement
79
106
  requirements:
80
107
  - - ">="
81
108
  - !ruby/object:Gem::Version
82
- version: 11.8.2
109
+ version: 11.18.2
110
+ - - "<"
111
+ - !ruby/object:Gem::Version
112
+ version: '12'
83
113
  - !ruby/object:Gem::Dependency
84
114
  name: aws-sdk
85
115
  requirement: !ruby/object:Gem::Requirement
86
116
  requirements:
87
117
  - - ">="
88
118
  - !ruby/object:Gem::Version
89
- version: 1.49.0
119
+ version: '2.0'
120
+ - - "<"
121
+ - !ruby/object:Gem::Version
122
+ version: '2.1'
90
123
  type: :runtime
91
124
  prerelease: false
92
125
  version_requirements: !ruby/object:Gem::Requirement
93
126
  requirements:
94
127
  - - ">="
95
128
  - !ruby/object:Gem::Version
96
- version: 1.49.0
129
+ version: '2.0'
130
+ - - "<"
131
+ - !ruby/object:Gem::Version
132
+ version: '2.1'
97
133
  - !ruby/object:Gem::Dependency
98
134
  name: yajl-ruby
99
135
  requirement: !ruby/object:Gem::Requirement
@@ -101,6 +137,9 @@ dependencies:
101
137
  - - ">="
102
138
  - !ruby/object:Gem::Version
103
139
  version: 1.2.1
140
+ - - "<"
141
+ - !ruby/object:Gem::Version
142
+ version: '1.3'
104
143
  type: :runtime
105
144
  prerelease: false
106
145
  version_requirements: !ruby/object:Gem::Requirement
@@ -108,6 +147,9 @@ dependencies:
108
147
  - - ">="
109
148
  - !ruby/object:Gem::Version
110
149
  version: 1.2.1
150
+ - - "<"
151
+ - !ruby/object:Gem::Version
152
+ version: '1.3'
111
153
  - !ruby/object:Gem::Dependency
112
154
  name: git
113
155
  requirement: !ruby/object:Gem::Requirement
@@ -115,6 +157,9 @@ dependencies:
115
157
  - - ">="
116
158
  - !ruby/object:Gem::Version
117
159
  version: 1.2.7
160
+ - - "<"
161
+ - !ruby/object:Gem::Version
162
+ version: '1.3'
118
163
  type: :runtime
119
164
  prerelease: false
120
165
  version_requirements: !ruby/object:Gem::Requirement
@@ -122,48 +167,109 @@ dependencies:
122
167
  - - ">="
123
168
  - !ruby/object:Gem::Version
124
169
  version: 1.2.7
170
+ - - "<"
171
+ - !ruby/object:Gem::Version
172
+ version: '1.3'
173
+ - !ruby/object:Gem::Dependency
174
+ name: semverse
175
+ requirement: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - ">="
178
+ - !ruby/object:Gem::Version
179
+ version: 1.2.1
180
+ - - "<"
181
+ - !ruby/object:Gem::Version
182
+ version: '1.3'
183
+ type: :runtime
184
+ prerelease: false
185
+ version_requirements: !ruby/object:Gem::Requirement
186
+ requirements:
187
+ - - ">="
188
+ - !ruby/object:Gem::Version
189
+ version: 1.2.1
190
+ - - "<"
191
+ - !ruby/object:Gem::Version
192
+ version: '1.3'
193
+ - !ruby/object:Gem::Dependency
194
+ name: artifactory
195
+ requirement: !ruby/object:Gem::Requirement
196
+ requirements:
197
+ - - ">="
198
+ - !ruby/object:Gem::Version
199
+ version: 2.2.1
200
+ - - "<"
201
+ - !ruby/object:Gem::Version
202
+ version: '2.3'
203
+ type: :runtime
204
+ prerelease: false
205
+ version_requirements: !ruby/object:Gem::Requirement
206
+ requirements:
207
+ - - ">="
208
+ - !ruby/object:Gem::Version
209
+ version: 2.2.1
210
+ - - "<"
211
+ - !ruby/object:Gem::Version
212
+ version: '2.3'
125
213
  - !ruby/object:Gem::Dependency
126
214
  name: bundler
127
215
  requirement: !ruby/object:Gem::Requirement
128
216
  requirements:
129
- - - "~>"
217
+ - - ">="
130
218
  - !ruby/object:Gem::Version
131
219
  version: '1.6'
220
+ - - "<"
221
+ - !ruby/object:Gem::Version
222
+ version: '1.7'
132
223
  type: :development
133
224
  prerelease: false
134
225
  version_requirements: !ruby/object:Gem::Requirement
135
226
  requirements:
136
- - - "~>"
227
+ - - ">="
137
228
  - !ruby/object:Gem::Version
138
229
  version: '1.6'
230
+ - - "<"
231
+ - !ruby/object:Gem::Version
232
+ version: '1.7'
139
233
  - !ruby/object:Gem::Dependency
140
234
  name: rake
141
235
  requirement: !ruby/object:Gem::Requirement
142
236
  requirements:
143
- - - "~>"
237
+ - - ">="
144
238
  - !ruby/object:Gem::Version
145
239
  version: '10.3'
240
+ - - "<"
241
+ - !ruby/object:Gem::Version
242
+ version: '11'
146
243
  type: :development
147
244
  prerelease: false
148
245
  version_requirements: !ruby/object:Gem::Requirement
149
246
  requirements:
150
- - - "~>"
247
+ - - ">="
151
248
  - !ruby/object:Gem::Version
152
249
  version: '10.3'
250
+ - - "<"
251
+ - !ruby/object:Gem::Version
252
+ version: '11'
153
253
  - !ruby/object:Gem::Dependency
154
254
  name: rubygems-tasks
155
255
  requirement: !ruby/object:Gem::Requirement
156
256
  requirements:
157
- - - "~>"
257
+ - - ">="
158
258
  - !ruby/object:Gem::Version
159
259
  version: '0.2'
260
+ - - "<"
261
+ - !ruby/object:Gem::Version
262
+ version: '1.1'
160
263
  type: :development
161
264
  prerelease: false
162
265
  version_requirements: !ruby/object:Gem::Requirement
163
266
  requirements:
164
- - - "~>"
267
+ - - ">="
165
268
  - !ruby/object:Gem::Version
166
269
  version: '0.2'
270
+ - - "<"
271
+ - !ruby/object:Gem::Version
272
+ version: '1.1'
167
273
  - !ruby/object:Gem::Dependency
168
274
  name: cucumber
169
275
  requirement: !ruby/object:Gem::Requirement
@@ -171,6 +277,9 @@ dependencies:
171
277
  - - ">="
172
278
  - !ruby/object:Gem::Version
173
279
  version: 0.10.7
280
+ - - "<"
281
+ - !ruby/object:Gem::Version
282
+ version: '0.11'
174
283
  type: :development
175
284
  prerelease: false
176
285
  version_requirements: !ruby/object:Gem::Requirement
@@ -178,6 +287,9 @@ dependencies:
178
287
  - - ">="
179
288
  - !ruby/object:Gem::Version
180
289
  version: 0.10.7
290
+ - - "<"
291
+ - !ruby/object:Gem::Version
292
+ version: '0.11'
181
293
  description: Jenkins builder task for CI/CD
182
294
  email: rubygems@dldinternet.com
183
295
  executables: []
@@ -189,6 +301,7 @@ files:
189
301
  - ".ruby-version"
190
302
  - ChangeLog.md
191
303
  - Gemfile
304
+ - Gemfile.lock
192
305
  - LICENSE
193
306
  - LICENSE.txt
194
307
  - README.md
@@ -207,6 +320,9 @@ files:
207
320
  - lib/cicd/builder/mixlib/errors.rb
208
321
  - lib/cicd/builder/mixlib/options.rb
209
322
  - lib/cicd/builder/mixlib/repo.rb
323
+ - lib/cicd/builder/mixlib/repo/S3.rb
324
+ - lib/cicd/builder/mixlib/repo/artifactory.rb
325
+ - lib/cicd/builder/mixlib/repo/base.rb
210
326
  - lib/cicd/builder/mixlib/utils.rb
211
327
  - lib/cicd/builder/version.rb
212
328
  homepage: https://rubygems.org/gems/cicd-builder