mio-config 2.9.0 → 2.10.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 61b9c58271e6a76d72c7c7c5dc406c0c6fcda909
4
- data.tar.gz: 81ff2c15326544960e24520d9867fcb52bbc873c
3
+ metadata.gz: d1308045c8215a36a9bdc6e4bf48814c7d6e106c
4
+ data.tar.gz: 6ce46bd3210f83ad1aae98cdc30bbbea234599db
5
5
  SHA512:
6
- metadata.gz: 2fbafc6990f8dab8315b2156f960514a71b84996981f41f69e6c9603e3186f3d9ff81e475e16d8811a1f6156d4bf4191d15705ab8596498d9d13aa05f337a0f2
7
- data.tar.gz: f0b8e1faed33b694da9c55539cd0422092a50b1afef0e24914fe7a2ddea6c73403bb8b3304e14252292db0154e28a1a878dd38929a1322c2c259ad97d91b7c89
6
+ metadata.gz: 095e1e0f82f81ce4e89242d33b33482eb3f340f66c37ccaa4317cf1e0a76016e0c6f27272575821b95313c83b8c0a95720b402d965b9d4e2079cf82fa714ff85
7
+ data.tar.gz: dab75e68bda7f74fa933dfd66472c3170629d9e344ffd9a5be4c8ab2c38430cd4827f985344295c2e32cf1767099cb5da91df6ea5a3c1197ef8b1c3e41d189a5
data/lib/mio/model.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  class Mio
2
2
  class Model
3
+ attr_reader :args
3
4
  class << self
4
5
  attr_accessor :fields, :resource_name
5
6
  def set_resource r
@@ -6,7 +6,10 @@ class Mio
6
6
  field :key, String, 'AWS API Key with access to S3'
7
7
  field :secret, String, 'AWS secret'
8
8
  field :bucket, String, 'AWS bucket name'
9
+ field :variant, String, 'Variant name'
10
+ field :metadataDefinition, String, 'Metadata definition id'
9
11
  field :visibility, Array, 'Ids of the accounts which may see the import action', [4]
12
+ field :sourceJsonVariable, String, 'Json Variable to grab metadata from'
10
13
 
11
14
  field :enable, Symbol, ':true or :false', :true
12
15
  field :start, Symbol, ':true or :false', :true
@@ -21,6 +24,18 @@ class Mio
21
24
  }
22
25
  end
23
26
 
27
+ def metadata_definition_id metadata_definition_name
28
+ r = 'metadataDefinitions'
29
+ metadata_definitions = @client.find_all(r)
30
+
31
+ md = metadata_definitions[r].find{|md| md['name'] == metadata_definition_name}
32
+ if md.nil?
33
+ raise Mio::Model::NoSuchResource, 'No such metadata definition[' + metadata_definition_name + ']'
34
+ end
35
+
36
+ md['id']
37
+ end
38
+
24
39
  def config_hash
25
40
  {
26
41
  "source-file": {
@@ -61,6 +76,21 @@ class Mio
61
76
  "value": "IMPORT",
62
77
  "isExpression": false
63
78
  }
79
+ },
80
+ "variant-and-metadata-definition": {
81
+ "variant": {
82
+ "value": @args.variant,
83
+ "isExpression": false
84
+ },
85
+ "metadata": {
86
+ "metadata-definition": {
87
+ "id": metadata_definition_id(@args.metadataDefinition)
88
+ },
89
+ "source-json-variable": {
90
+ "value": @args.sourceJsonVariable,
91
+ "isExpression": false
92
+ }
93
+ }
64
94
  }
65
95
  }
66
96
  end
@@ -21,10 +21,10 @@ class Mio
21
21
  end
22
22
 
23
23
  def go
24
- unless look_up
24
+ @object = look_up
25
+ unless @object
25
26
  @object = create
26
27
  else
27
- @object = look_up
28
28
  set_start :stop
29
29
  end
30
30
  template_path = "#{self.class.resource_name}/#{@object['id']}/body"
@@ -43,10 +43,10 @@ class Mio
43
43
  raise Mio::Model::EmptyField, 'Field definitions to Mio::Model::MetadataDefinition must contain at least one definition'
44
44
  end
45
45
 
46
- unless look_up
46
+ @object = look_up
47
+ unless @object
47
48
  @object = create
48
49
  else
49
- @object = look_up
50
50
  set_start :stop
51
51
  end
52
52
  definition_path = "#{self.class.resource_name}/#{@object['id']}/definition"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mio-config
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.9.0
4
+ version: 2.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - jspc