power_stencil 0.4.20 → 0.4.21

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: e2582b92f3e64dba5535548383200c900db71ea5
4
- data.tar.gz: 52cd784e7160cf2d580c86a06999e6bab6c8b0d1
3
+ metadata.gz: d9f2fd5c456d432325027c834c89091d95e9010d
4
+ data.tar.gz: 168702ae58d531eea9ae233dfabd1e65b5b66c3e
5
5
  SHA512:
6
- metadata.gz: 8df322c9851a1126691cea6a7c9b2fb66dad309845b63073625ad392319c0d9221eb98f73401a5cbfe4b04bfd654d87c9dc83e281477317b82071938f33bb802
7
- data.tar.gz: 3a141b9153a9d25ef54eaa8a581b64585961a9954508f8cd75631c399e7f73914af2d4e0f1b673ae16c4a7728f033b924210a28d4d3065ea64d25744439c5246
6
+ metadata.gz: 539b17316440f605b8a9771f67ad6c8bd8cfc631cf6e2c262b9a617165fc0b7db408974f46fd301375e76160bd559ef77a72dc411dd3d1297fd671c4bc96f1a1
7
+ data.tar.gz: d44a86392462feefda32b5d1dd19c45c402aff8056dd937540856f5084c0a5e364b7cf8ed59513b34f13cbb85e0fc870e7f08a67cace890a733b403dd1d58f84
data/doc/builds.md CHANGED
@@ -68,9 +68,7 @@ And define its content as:
68
68
  --- !ruby/object:PowerStencil::SystemEntityDefinitions::ProjectEntity
69
69
  :name: inherited_entity
70
70
  :a_specific_property: This one only exists in inherited entity
71
- :extends: !psref
72
- type: :base_entity
73
- name: root_entity
71
+ :extends: !entity base_entity/root_entity
74
72
  :array_root:
75
73
  - value from inherited_entity
76
74
  :hash_root:
@@ -97,9 +95,7 @@ This is what you get:
97
95
  item1: value 1
98
96
  item2: value2 but from inherited
99
97
  item3: value3
100
- :extends: !psref
101
- type: :base_entity
102
- name: root_entity
98
+ :extends: !entity base_entity/root_entity
103
99
  ```
104
100
 
105
101
  You can notice that this second object looks now like a merged entity. Here are the rules of the merge:
@@ -127,9 +123,7 @@ And define its content:
127
123
  ```yaml
128
124
  --- !ruby/object:UniverseCompiler::Entity::Override
129
125
  :overrides:
130
- - !psref
131
- type: :base_entity
132
- name: inherited_entity
126
+ - !entity base_entity/inherited_entity
133
127
  :name: test_override
134
128
  :property_from_overide: foo
135
129
  :scenario: dev_tests
@@ -161,9 +155,7 @@ As expected, without specifying a build scenario nothing changes
161
155
  item2: value2 but from inherited
162
156
  item3: value3
163
157
  :a_specific_property: This one only exists in inherited entity
164
- :extends: !psref
165
- type: :base_entity
166
- name: root_entity
158
+ :extends: !entity base_entity/root_entity
167
159
  ```
168
160
  But if you specify the dev_tests scenario:
169
161
 
@@ -179,9 +171,7 @@ But if you specify the dev_tests scenario:
179
171
  item2: value2 but from inherited
180
172
  item3: overridden value
181
173
  :a_specific_property: This one only exists in inherited entity
182
- :extends: !psref
183
- type: :base_entity
184
- name: root_entity
174
+ :extends: !entity base_entity/root_entity
185
175
  :property_from_overide: foo
186
176
  ```
187
177
 
@@ -230,9 +220,7 @@ PowerStencil::SystemEntityDefinitions::SimpleExec:
230
220
  :type: :simple_exec
231
221
  :fields:
232
222
  :name: example
233
- :post_process: !psref
234
- type: :process_descriptor
235
- name: simple_exec_example.process
223
+ :post_process: !entity process_descriptor/simple_exec_example.process
236
224
 
237
225
  ---
238
226
  PowerStencil::SystemEntityDefinitions::ProcessDescriptor:
data/doc/entities.md CHANGED
@@ -850,9 +850,7 @@ Which translates at persistence level as:
850
850
  $ power_stencil get custom_entity/test_entity --raw
851
851
  --- !ruby/object:MyCustomEntity
852
852
  :name: test_entity
853
- :parent: !psref
854
- type: :custom_entity
855
- name: foo
853
+ :parent: !entity custom_entity/foo
856
854
  ```
857
855
  Here we are referencing an entity of the same type, but of course you can reference any type of entity. Using `has_one` will enforce the type of data you reference. Let's try to mess-up:
858
856
 
@@ -914,12 +912,8 @@ Which translates at persistence level as:
914
912
  ```shell
915
913
  --- !ruby/object:MyCustomEntity
916
914
  :sub_properties:
917
- - !psref
918
- type: :base_entity
919
- name: prop1
920
- - !psref
921
- type: :base_entity
922
- name: prop2
915
+ - !entity base_entity/prop1
916
+ - !entity base_entity/prop2
923
917
  :name: test_entity
924
918
  ```
925
919
  Nice !
@@ -62,19 +62,20 @@ module PowerStencil
62
62
  else
63
63
  # Display entity including data coming from reverse methods
64
64
  h = entity.to_hash
65
- entity.class.fields_constraints.each do |field_name, constraints|
65
+ entity.class.fields_constraints.each do |_, constraints|
66
66
  next unless constraints[:reverse_method]
67
67
 
68
68
  reverse_method_conf = constraints[:reverse_method]
69
69
  val = entity.send(reverse_method_conf[:actual_method])
70
- node = h[entity.class.name][:dynamic_data] ||= {}
71
70
  next if val.nil?
72
71
  next if val.is_a? Array and val.empty?
73
72
 
74
- node[reverse_method_conf[:actual_method]] = if val.is_a? Array
75
- val.map &:as_path
73
+ node = h[entity.class.name][:dynamic_data] ||= {}
74
+ node[reverse_method_conf[:actual_method]] = case val
75
+ when Array
76
+ val.map &:to_reference
76
77
  else
77
- val.as_path
78
+ val.to_reference
78
79
  end
79
80
  end
80
81
  puts h.to_yaml
@@ -1,3 +1,3 @@
1
1
  module PowerStencil
2
- VERSION = '0.4.20'.freeze
2
+ VERSION = '0.4.21'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: power_stencil
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.20
4
+ version: 0.4.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - Laurent Briais
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-10-12 00:00:00.000000000 Z
11
+ date: 2019-10-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -261,7 +261,7 @@ metadata:
261
261
  documentation_uri: https://gitlab.com/tools4devops/power_stencil/blob/master/README.md
262
262
  source_code_uri: https://gitlab.com/tools4devops/power_stencil
263
263
  homepage_uri: https://powerstencil.brizone.org/
264
- post_install_message: "\nThank you for installing PowerStencil 0.4.20 !\nFrom the
264
+ post_install_message: "\nThank you for installing PowerStencil 0.4.21 !\nFrom the
265
265
  command line you can run `power_stencil --help`\nIf your shell is not completing
266
266
  the command:\n If you use rbenv: `rbenv rehash`\n If you use zsh : `rehash`\n\nOfficial
267
267
  Website : https://powerstencil.brizone.org/\nFull documentation here :