vcoworkflows 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d50183ce8d642ade7378ff0c0993cf53daded6c4
4
- data.tar.gz: 31b515782d348804ff9f74c8e9dacdda314a2cf6
3
+ metadata.gz: 8ced3f9cf999f3d9fbbe669c39240be0aac02e6b
4
+ data.tar.gz: 02bbb9a5a8951b80e7bbf01934097b4c327050c4
5
5
  SHA512:
6
- metadata.gz: 2800e407f0acfe52d4e275a57f420739fdc0cdd73aa6e8dd2e48a30a840588f941d279a14c12095c5e78049d4b1b96d25723f9e1b950e55be6b2594eaa99dfa0
7
- data.tar.gz: ff1a54bfcb3afe64467031a57b0c2860e28e6c18655872b76abc73f66b904429b43a34b648286dfccb0a6221b44b89fa664046aff94cf3e7b91aaf8bb33841f1
6
+ metadata.gz: 01b9e9ddc5a548b1628dad6b7f7c548449140670465e60dc492bd934b01fd1ae6fc51bbae2571a6ccfa6cd6129d8ba14ebc43ae5f10cc55bf4ca165840b6c555
7
+ data.tar.gz: b21e531b8bf7cd252dbea6799183a1a16ac455af968794b1dee9c8a0841a3e5679a24370b3bfb85a05247d9621c36b79873b38a93b683175565d34b8a8dde271
data/CHANGELOG.md CHANGED
@@ -1,6 +1,54 @@
1
1
  vcoworkflows CHANGELOG
2
2
  ================
3
3
 
4
+ ## 0.1.3
5
+
6
+ ### Third Time's the Charm
7
+
8
+ General cleanup and spit-polish. There are still a few rough spots that'll take some elbow grease, but at least all the parts are in the tin.
9
+
10
+ - Update gem spec and documentation to reflect the repo being transferred to [activenetwork-automation](https://github.com/activenetwork-automation)
11
+ - Set a minimum Ruby version (`>= 2.0`) for the gem (fixes [#9](https://github.com/activenetwork-automation/vcoworkflows/issues/9))
12
+ - Fix Coveralls integration for CI ([#7](https://github.com/activenetwork-automation/vcoworkflows/issues/7))
13
+ - Deprecate `Workflow#set_parameter` and `Workflow#get_parameter`, as they're not very Ruby-ish, and if we're going to do things, we might as well do things right. I think this might be more right-ish than before. Anyway, they're deprecated in favor of:
14
+ - `Workflow#parameter` - Set an input parameter using name and value:
15
+ ```ruby
16
+ workflow.parameter('foo', 'bar')
17
+ ```
18
+
19
+ - `Workflow#parameter=` - Set an input parameter using a WorkflowParameter object:
20
+ ```ruby
21
+ workflow.parameter = VcoWorkflows::WorkflowParameter.new('my_parameter',
22
+ 'string',
23
+ value: 'foo')
24
+ ```
25
+
26
+ - `Workflow#parameter?` - Determine if an input parameter is set.
27
+ ```ruby
28
+ workflow.parameter? 'foo'
29
+ ```
30
+
31
+ - Add `Workflow#parameters=` to set all input parameters using a hash, instead of having to set parameter values individually. Basically, `Workflow` will do the work instead of making you do it.
32
+ ```ruby
33
+ input_parameters = { 'name' => 'a string value',
34
+ 'version' => '2',
35
+ 'words' => %w(fe fi fo fum) }
36
+ workflow.parameters = input_parameters
37
+ ```
38
+
39
+ - Added `Guardfile` to aid in development. See what you break as you break it! `rspec`, `rubocop` and `yard` will do their things, until you make them stop.
40
+ - Speaking of `rspec`, replaced lots of repetitive typing with a loop, because I'm *smart* like that.
41
+ - More fixes and updates to documentation.
42
+ - Pull my username out of some of the examples. *Embarrasing...* At least I didn't commit any passwords (yet).
43
+
44
+ ## 0.1.2
45
+
46
+ - Fix lots of documentation typos
47
+
48
+ ## 0.1.1
49
+
50
+ - Releases are scary.
51
+
4
52
  ## 0.1.0
5
53
 
6
54
  * Initial setup of gem framework.
data/Guardfile ADDED
@@ -0,0 +1,41 @@
1
+ notification :growl, sticky:true
2
+
3
+ # Note: The cmd option is now required due to the increasing number of ways
4
+ # rspec may be run, below are examples of the most common uses.
5
+ # * bundler: 'bundle exec rspec'
6
+ # * bundler binstubs: 'bin/rspec'
7
+ # * spring: 'bin/rspec' (This will use spring if running and you have
8
+ # installed the spring binstubs per the docs)
9
+ # * zeus: 'zeus rspec' (requires the server to be started separately)
10
+ # * 'just' rspec: 'rspec'
11
+
12
+ guard :rspec, cmd: "bundle exec rspec" do
13
+ require "guard/rspec/dsl"
14
+ dsl = Guard::RSpec::Dsl.new(self)
15
+
16
+ # Feel free to open issues for suggestions and improvements
17
+
18
+ # RSpec files
19
+ rspec = dsl.rspec
20
+ watch(rspec.spec_helper) { rspec.spec_dir }
21
+ watch(rspec.spec_support) { rspec.spec_dir }
22
+ watch(rspec.spec_files)
23
+
24
+ # Ruby files
25
+ ruby = dsl.ruby
26
+ dsl.watch_spec_files_for(ruby.lib_files)
27
+ end
28
+
29
+ guard :rubocop do
30
+ watch(%r{.+\.rb$})
31
+ watch(%r{bin/.+\.rb$})
32
+ watch(%r{lib/vcoworkflows/.+\.rb$})
33
+ watch(%r{spec/.+\.rb$})
34
+ watch(%r{spec/vcoworkflows/.+_spec\.rb$})
35
+ watch(%r{(?:.+/)?\.rubocop\.yml$}) { |m| File.direname(m[0]) }
36
+ end
37
+
38
+ guard 'yard' do
39
+ watch(%r{bin/.+\.rb})
40
+ watch(%r{lib/.+\.rb})
41
+ end
data/README.md CHANGED
@@ -1,14 +1,14 @@
1
1
  # Vcoworkflows
2
2
 
3
- [![Build Status](https://travis-ci.org/ActiveSCM/vcoworkflows.svg?branch=master)][travis]
4
- [![Dependency Status](https://gemnasium.com/ActiveSCM/vcoworkflows.svg)][gemnasium]
5
- [![Coverage Status](https://coveralls.io/repos/ActiveSCM/vcoworkflows/badge.png?branch=master)][coveralls]
6
- [![Inline docs](http://inch-ci.org/github/ActiveSCM/vcoworkflows.png?branch=master)][inch]
3
+ [![Build Status](https://travis-ci.org/activenetwork-automation/vcoworkflows.svg?branch=master)][travis]
4
+ [![Dependency Status](https://gemnasium.com/activenetwork-automation/vcoworkflows.svg)][gemnasium]
5
+ [![Coverage Status](https://coveralls.io/repos/activenetwork-automation/vcoworkflows/badge.png?branch=master)][coveralls]
6
+ [![Inline docs](http://inch-ci.org/github/activenetwork-automation/vcoworkflows.png?branch=master)][inch]
7
7
 
8
- [travis]: http://travis-ci.org/ActiveSCM/vcoworkflows
9
- [gemnasium]: https://gemnasium.com/ActiveSCM/vcoworkflows
10
- [coveralls]: https://coveralls.io/r/ActiveSCM/vcoworkflows
11
- [inch]: http://inch-ci.org/github/ActiveSCM/vcoworkflows
8
+ [travis]: http://travis-ci.org/activenetwork-automation/vcoworkflows
9
+ [gemnasium]: https://gemnasium.com/activenetwork-automation/vcoworkflows
10
+ [coveralls]: https://coveralls.io/r/activenetwork-automation/vcoworkflows
11
+ [inch]: http://inch-ci.org/github/activenetwork-automation/vcoworkflows
12
12
 
13
13
  `vcoworkflows` provides a Ruby API for finding and executing vCenter
14
14
  Orchestrator workflows. You can search for a workflow either by name or
@@ -96,12 +96,25 @@ required), then send call `execute`. This will return an execution ID from
96
96
  vCenter Orchestrator, which identifies the run you have requested. The
97
97
  execution ID is also preserved in the `Workflow` object for simplicity.
98
98
 
99
+ Setting parameters individually:
100
+
101
+ ```ruby
102
+ workflow.parameter('name', 'a string value')
103
+ worfklow.parameter('version', 2)
104
+ workflow.parameter('words', %w(fe fi fo fum))
105
+ ```
106
+
107
+ Setting parameters via a hash:
108
+
109
+ ```ruby
110
+ workflow.parameters = { 'name' => 'a string value',
111
+ 'version' => '2',
112
+ 'words' => %w(fe fi fo fum) }
113
+ ```
114
+
115
+ Then execute:
116
+
99
117
  ```ruby
100
- input_parameters = { 'name' => 'a string value',
101
- 'version' => '2',
102
- 'words' => %w(fe fi fo fum) }
103
- # ...
104
- input_parameters.each { |k, v| workflow.set_parameter(k, v) }
105
118
  workflow.execute
106
119
  ```
107
120
 
@@ -228,7 +241,7 @@ Workflow ID: 6e04a460-4a45-4e16-9603-db2922c24462
228
241
  State: completed
229
242
  Start Date: 2014-12-19 13:43:46 -0800
230
243
  End Date: 2014-12-19 13:55:24 -0800
231
- Started By: user@example.com
244
+ Started By: jdoe@example.com
232
245
 
233
246
  Input Parameters:
234
247
  coreCount = 2
@@ -252,15 +265,37 @@ Output Parameters:
252
265
  requestNumber = 326.0
253
266
  requestCompletionDetails = Request succeeded. Created vm00378.
254
267
 
255
- 2014-12-19 13:43:46 -0800 info: gruiz-ade: Workflow 'Request Component' has started
256
- 2014-12-19 13:43:59 -0800 info: gruiz-ade: Workflow is paused; Workflow 'Request Component' has paused while waiting on signal
257
- 2014-12-19 13:55:23 -0800 info: gruiz-ade: Workflow 'Request Component' has resumed
258
- 2014-12-19 13:55:24 -0800 info: gruiz-ade: Workflow 'Request Component' has completed
268
+ 2014-12-19 13:43:46 -0800 info: jdoe: Workflow 'Request Component' has started
269
+ 2014-12-19 13:43:59 -0800 info: jdoe: Workflow is paused; Workflow 'Request Component' has paused while waiting on signal
270
+ 2014-12-19 13:55:23 -0800 info: jdoe: Workflow 'Request Component' has resumed
271
+ 2014-12-19 13:55:24 -0800 info: jdoe: Workflow 'Request Component' has completed
259
272
  ```
260
273
 
274
+ ## Current limitations
275
+
276
+ ### General vCO REST API functionality
277
+
278
+ This gem is very specifically targeted at operation of workflows within vCO.
279
+ As such, anything that was not necessary or required to be able to operate
280
+ workflows has not yet been included.
281
+
282
+ ### Cancellation / Termination of running workflows
283
+
284
+ There is currently no facility to cancel a running workflow. This will be
285
+ added at some point in the future.
286
+
287
+ ### Parameter Types
288
+
289
+ Currently, there is no included support for complex parameter types (i.e.,
290
+ anything other than Strings, Numerics, or Arrays of same). This is not to say
291
+ they cannot be used, but you will need to marshall vCO object parameters into an
292
+ appropriately-constructed `Hash` to pass as the parameter value, such that when
293
+ the values are converted to JSON for the actual REST call, they are properly
294
+ constructed for vCO.
295
+
261
296
  ## Contributing
262
297
 
263
- 1. Fork it ( https://github.com/ActiveSCM/vcoworkflows/fork )
298
+ 1. Fork it ( https://github.com/activenetwork-automation/vcoworkflows/fork )
264
299
  2. Create your feature branch (`git checkout -b my-new-feature`)
265
300
  3. Commit your changes (`git commit -am 'Add some feature'`)
266
301
  4. Push to the branch (`git push origin my-new-feature`)
@@ -271,7 +306,7 @@ Output Parameters:
271
306
  - [Gregory Ruiz-Ade](https://github.com/gkra)
272
307
 
273
308
  ```
274
- Copyright 2014 Active Network, LLC
309
+ Copyright 2014 ACTIVE Network, LLC
275
310
 
276
311
  Licensed under the Apache License, Version 2.0 (the "License");
277
312
  you may not use this file except in compliance with the License.
data/example.rb CHANGED
@@ -25,9 +25,10 @@ workflow = VcoWorkflows::Workflow.new(workflow_name,
25
25
  verify_ssl: false)
26
26
 
27
27
  # Set the parameters in the workflow
28
- input_parameters.each { |k, v| workflow.set_parameter(k, v) }
28
+ workflow.parameters = input_parameters
29
29
 
30
- # Execute the workflow.
30
+ # Execute the workflow. This will also save the execution id in our
31
+ # workflow object.
31
32
  workflow.execute
32
33
 
33
34
  # We're going to wait around until the execution is done, so we'll check
@@ -1,5 +1,5 @@
1
1
  # VcoWorkflows
2
2
  module VcoWorkflows
3
3
  # Gem Version
4
- VERSION = '0.1.2'
4
+ VERSION = '0.1.3'
5
5
  end
@@ -30,15 +30,18 @@ module VcoWorkflows
30
30
  attr_reader :description
31
31
 
32
32
  # Workflow Input Parameters
33
- # @return [VcoWorkflows::WorkflowParameter{}] Hash of WorkflowParameter objects, keyed by name
33
+ # @return [Hash<VcoWorkflows::WorkflowParameter>] Hash of
34
+ # WorkflowParameter objects, keyed by name
34
35
  attr_reader :input_parameters
35
36
 
36
37
  # Workflow Output Parameters
37
- # @return [VcoWorkflows::WorkflowParameter{}] Hash of WorkflowParameter objects, keyed by name
38
+ # @return [Hash<VcoWorkflows::WorkflowParameter>] Hash of
39
+ # WorkflowParameter objects, keyed by name
38
40
  attr_reader :output_parameters
39
41
 
40
42
  # Workflow Service
41
- # @return [VcoWorkflows::WorkflowService] The WorkflowService currently being used to interface with vCO
43
+ # @return [VcoWorkflows::WorkflowService] The WorkflowService
44
+ # currently being used to interface with vCO
42
45
  attr_accessor :service
43
46
 
44
47
  # Workflow execution ID
@@ -101,7 +104,8 @@ module VcoWorkflows
101
104
  end
102
105
  workflow_data = JSON.parse(workflow_json)
103
106
 
104
- # Set up the attributes if they exist in the data json, otherwise nil them
107
+ # Set up the attributes if they exist in the data json,
108
+ # otherwise nil them
105
109
  @id = workflow_data.key?('id') ? workflow_data['id'] : nil
106
110
  @name = workflow_data.key?('name') ? workflow_data['name'] : nil
107
111
  @version = workflow_data.key?('version') ? workflow_data['version'] : nil
@@ -156,7 +160,7 @@ module VcoWorkflows
156
160
  # rubocop:disable MethodLength, LineLength
157
161
 
158
162
  # Parse json parameters and return a nice hash
159
- # @param [Array] parameter_data JSON document of parameters as defined
163
+ # @param [Array<Hash>] parameter_data Array of parameter data hashes
160
164
  # by vCO
161
165
  # @return [Hash]
162
166
  def self.parse_parameters(parameter_data = [])
@@ -192,7 +196,7 @@ module VcoWorkflows
192
196
  # rubocop:disable LineLength
193
197
 
194
198
  # Process exceptions raised in parse_parameters by bravely ignoring them
195
- # and forging ahead blindly!
199
+ # and forging ahead blindly!
196
200
  # @param [Exception] error
197
201
  def self.parse_failure(error)
198
202
  $stderr.puts "\nWhoops!"
@@ -206,7 +210,8 @@ module VcoWorkflows
206
210
  # rubocop:disable LineLength
207
211
 
208
212
  # Get an array of the names of all the required input parameters
209
- # @return [Hash] Hash of WorkflowParameter input parameters which are required for this workflow
213
+ # @return [Hash] Hash of WorkflowParameter input parameters which
214
+ # are required for this workflow
210
215
  def required_parameters
211
216
  required = {}
212
217
  @input_parameters.each_value { |v| required[v.name] = v if v.required? }
@@ -214,40 +219,70 @@ module VcoWorkflows
214
219
  end
215
220
  # rubocop:enable LineLength
216
221
 
217
- # Get the value of a specific input parameter
218
- # @param [String] parameter_name Name of the parameter whose value to get
219
- # @return [VcoWorkflows::WorkflowParameter]
220
- def parameter(parameter_name)
221
- @input_parameters[parameter_name]
222
- end
223
-
224
- # rubocop:disable LineLength
222
+ # rubocop:disable LineLength, MethodLength
225
223
 
226
- # Set a parameter to a value
227
- # @param [String] parameter_name name of the parameter to set
228
- # @param [Object] value value to set
229
- def set_parameter(parameter_name, value)
224
+ # Get the parameter object named. If a value is provided, set the value
225
+ # and return the parameter object.
226
+ #
227
+ # To get a parameter value, use parameter(parameter_name).value
228
+ #
229
+ # @param [String] parameter_name Name of the parameter to get
230
+ # @param [Object, nil] parameter_value Optional value for parameter.
231
+ # @return [VcoWorkflows::WorkflowParameter] The resulting WorkflowParameter
232
+ def parameter(parameter_name, parameter_value = nil)
230
233
  if @input_parameters.key?(parameter_name)
231
- @input_parameters[parameter_name].set value
234
+ @input_parameters[parameter_name].set parameter_value
232
235
  else
233
236
  $stderr.puts "\nAttempted to set a value for a non-existent WorkflowParameter!"
234
237
  $stderr.puts "It appears that there is no parameter \"#{parameter}\"."
235
238
  $stderr.puts "Valid parameter names are: #{@input_parameters.keys.join(', ')}"
236
239
  $stderr.puts ''
237
240
  fail(IOError, ERR[:no_such_parameter])
238
- end
241
+ end unless parameter_value.nil?
242
+ @input_parameters[parameter_name]
243
+ end
244
+ # rubocop:enable LineLength, MethodLength
245
+
246
+ # Set a parameter with a WorkflowParameter object
247
+ # @param [VcoWorkflows::WorkflowParameter] wfparameter New parameter
248
+ def parameter=(wfparameter)
249
+ @input_parameters[wfparameter.name] = wfparameter
250
+ end
251
+
252
+ # Determine whether a parameter has been set
253
+ # @param [String] parameter_name Name of the parameter to check
254
+ # @return [Boolean]
255
+ def parameter?(parameter_name)
256
+ parameter(parameter_name).set?
257
+ end
258
+
259
+ # Set all input parameters using the given hash
260
+ # @param [Hash] parameter_hash input parameter values keyed by
261
+ # input_parameter name
262
+ def parameters=(parameter_hash)
263
+ parameter_hash.each { |name, value| parameter(name, value) }
239
264
  end
240
- # rubocop:enable LineLength
241
265
 
242
266
  # rubocop:disable LineLength
243
267
 
268
+ # Set a parameter to a value.
269
+ # @deprecated Use {#parameter} instead
270
+ # @param [String] parameter_name name of the parameter to set
271
+ # @param [Object] value value to set
272
+ # @return [VcoWorkflows::WorkflowParameter] The resulting WorkflowParameter
273
+ def set_parameter(parameter_name, value)
274
+ parameter(parameter_name, value)
275
+ end
276
+
244
277
  # Get the value for an input parameter
245
- # @param [String] parameter_name Name of the input parameter whose value to get
278
+ # @deprecated Use {#parameter} to retrieve the
279
+ # {VcoWorkflows::WorkflowParameter} object, instead
280
+ # @param [String] parameter_name Name of the input parameter
281
+ # whose value to get
246
282
  # @return [Object]
247
283
  def get_parameter(parameter_name)
248
- @input_parameters[parameter_name].value
284
+ parameter(parameter_name).value
249
285
  end
250
- # rubocop:enable LineLength
251
286
 
252
287
  # rubocop:disable LineLength
253
288
 
@@ -14,6 +14,20 @@ describe VcoWorkflows::Workflow, 'Workflow' do
14
14
  @param_string_json = '''{"type":"string","name":"stringparam","scope":"local","value":{"string":{"value":"squirrel!"}}}'''
15
15
  @param_array_json = '''{"type":"Array/string","name":"arrayparam","scope":"local","value":{"array":{"elements":[{"string":{"value":"a"}},{"string":{"value":"b"}},{"string":{"value":"c"}}]}}}'''
16
16
 
17
+ @target_parameters = {
18
+ 'coreCount' => 2,
19
+ 'ramMB' => 2048,
20
+ 'businessUnit' => 'aw',
21
+ 'reservation' => 'nonprodlinux',
22
+ 'environment' => 'dev1',
23
+ 'image' => 'centos-6.6-x86_64-20141203-1',
24
+ 'component' => 'api',
25
+ 'onBehalfOf' => 'svcacct@example.com',
26
+ 'location' => 'us_east',
27
+ 'runlist' => %w(role[loc_uswest] role[base] role[api]),
28
+ 'machineCount' => 1
29
+ }
30
+
17
31
  # Mock the WorkflowService
18
32
  @service = double('service')
19
33
  allow(@service).to receive(:get_workflow_for_id) { @workflow_json }
@@ -87,32 +101,43 @@ describe VcoWorkflows::Workflow, 'Workflow' do
87
101
  expect(wf.required_parameters.size).to eq(required_param_count)
88
102
  end
89
103
 
90
- it 'should set and return a parameter value' do
104
+ it 'should set a parameter value' do
91
105
  wf = VcoWorkflows::Workflow.new(@workflow_name, service: @service)
92
106
 
93
- expect(wf.set_parameter('coreCount', 4)).to eq(4)
107
+ # Set the value and check the returned parameter
108
+ expect(wf.parameter('coreCount', 4).value).to eq(4)
109
+
110
+ # Check the parameter value
111
+ expect(wf.parameter('coreCount').value).to eq(4)
112
+
113
+ # Check the parameter by reaching through input_parameters
94
114
  expect(wf.input_parameters['coreCount'].value).to eq(4)
95
- expect(wf.get_parameter('coreCount')).to eql(4)
115
+ end
116
+
117
+ it 'should set all parameters by hash' do
118
+ wf = VcoWorkflows::Workflow.new(@workflow_name, service: @service)
119
+ wf.parameters = @target_parameters
120
+
121
+ @target_parameters.each_key do |param_name|
122
+ expect(wf.parameter(param_name).value).to eql(@target_parameters[param_name])
123
+ end
124
+ end
125
+
126
+ it 'should set a parameter by object' do
127
+ wf = VcoWorkflows::Workflow.new(@workflow_name, service: @service)
128
+ wfparam = VcoWorkflows::WorkflowParameter.new('coreCount', 'string', value: 2)
129
+ wf.parameter = wfparam
130
+
131
+ expect(wf.parameter('coreCount')).to_not eq(nil)
132
+ expect(wf.parameter('coreCount').type).to eql('string')
133
+ expect(wf.parameter('coreCount').value).to eq(2)
96
134
  end
97
135
 
98
136
  it 'should execute' do
99
137
  allow(@service).to receive(:execute_workflow) { @execution_id }
100
- target_parameters = {
101
- 'coreCount' => 2,
102
- 'ramMB' => 2048,
103
- 'businessUnit' => 'aw',
104
- 'reservation' => 'nonprodlinux',
105
- 'environment' => 'dev1',
106
- 'image' => 'centos-6.6-x86_64-20141203-1',
107
- 'component' => 'api',
108
- 'onBehalfOf' => 'svcacct@example.com',
109
- 'location' => 'us_east',
110
- 'runlist' => %w(role[loc_uswest] role[base] role[api]),
111
- 'machineCount' => 1
112
- }
113
138
 
114
139
  wf = VcoWorkflows::Workflow.new(@workflow_name, service: @service)
115
- target_parameters.each { |k, v| wf.set_parameter(k, v) }
140
+ wf.parameters = @target_parameters
116
141
 
117
142
  expect(wf.execute).to eql(@execution_id)
118
143
  end
data/vcoworkflows.gemspec CHANGED
@@ -11,22 +11,25 @@ Gem::Specification.new do |spec|
11
11
  spec.email = 'gregory.ruiz-ade@activenetwork.com'
12
12
  spec.summary = 'vCO Workflows REST API Wrapper'
13
13
  spec.description = 'Ruby implementation of vCenter Orchestrator REST API'
14
- spec.homepage = ''
14
+ spec.homepage = 'https://github.com/activenetwork-automation/vcoworkflows'
15
15
  spec.license = 'Apache 2.0'
16
16
 
17
17
  spec.files = `git ls-files -z`.split("\x0")
18
18
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
19
19
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
20
20
  spec.require_paths = ['lib']
21
+ spec.required_ruby_version = '>= 2.0'
21
22
 
22
23
  spec.add_development_dependency 'bundler', '~> 1.7'
23
24
  spec.add_development_dependency 'rake', '~> 10.0'
24
25
  spec.add_development_dependency 'rubocop', '>= 0.27.0'
25
26
  spec.add_development_dependency 'aruba', '>= 0.6'
26
27
  spec.add_development_dependency 'rspec', '>= 3.0'
27
- spec.add_development_dependency 'coveralls', '= 0.7.1'
28
+ spec.add_development_dependency 'coveralls', '~> 0.7.1'
28
29
  spec.add_development_dependency 'guard', '>= 2.10.0'
29
30
  spec.add_development_dependency 'guard-rubocop', '>= 1.1.0'
31
+ spec.add_development_dependency 'guard-rspec', '~> 4.5.0'
32
+ spec.add_development_dependency 'guard-yard', '~> 2.1.4'
30
33
  # growl functionality in Guardfile depends on growl-notify
31
34
  spec.add_development_dependency 'growl', '>= 1.0'
32
35
  spec.add_development_dependency 'yard', '>= 0.8'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vcoworkflows
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gregory Ruiz-ade
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-03 00:00:00.000000000 Z
11
+ date: 2015-02-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -84,14 +84,14 @@ dependencies:
84
84
  name: coveralls
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - '='
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
89
  version: 0.7.1
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - '='
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: 0.7.1
97
97
  - !ruby/object:Gem::Dependency
@@ -122,6 +122,34 @@ dependencies:
122
122
  - - ">="
123
123
  - !ruby/object:Gem::Version
124
124
  version: 1.1.0
125
+ - !ruby/object:Gem::Dependency
126
+ name: guard-rspec
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: 4.5.0
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: 4.5.0
139
+ - !ruby/object:Gem::Dependency
140
+ name: guard-yard
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: 2.1.4
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: 2.1.4
125
153
  - !ruby/object:Gem::Dependency
126
154
  name: growl
127
155
  requirement: !ruby/object:Gem::Requirement
@@ -191,6 +219,7 @@ files:
191
219
  - ".travis.yml"
192
220
  - CHANGELOG.md
193
221
  - Gemfile
222
+ - Guardfile
194
223
  - LICENSE.txt
195
224
  - README.md
196
225
  - Rakefile
@@ -219,7 +248,7 @@ files:
219
248
  - spec/vcoworkflows/workflowservice_spec.rb
220
249
  - spec/vcoworkflows/workflowtoken_spec.rb
221
250
  - vcoworkflows.gemspec
222
- homepage: ''
251
+ homepage: https://github.com/activenetwork-automation/vcoworkflows
223
252
  licenses:
224
253
  - Apache 2.0
225
254
  metadata: {}
@@ -231,7 +260,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
231
260
  requirements:
232
261
  - - ">="
233
262
  - !ruby/object:Gem::Version
234
- version: '0'
263
+ version: '2.0'
235
264
  required_rubygems_version: !ruby/object:Gem::Requirement
236
265
  requirements:
237
266
  - - ">="