Note that creating a subtype of Subnet had no effect. Tried to force the settings into a common subtype as a workaround, but had no luck.
On Mon, Aug 28, 2017 at 2:31 PM, DeWayne Filppi <dewa...@cloudify.co> wrote: > I couldn't use your example. The one I just sent illustrates the problem > and has no openstack dependency. I just forgot to delete the import > statement. > > On Mon, Aug 28, 2017 at 2:24 PM, Tal Liron <t...@cloudify.co> wrote: > >> DeWayne, could please use the example I provided? I prefer to start with >> something without Openstack or any other dependencies so we can isolate >> the >> bug precisely. >> >> On Mon, Aug 28, 2017 at 3:53 PM, DeWayne Filppi <dewa...@cloudify.co> >> wrote: >> >> > OK. Here's the example with no dependencies. Two nodes. >> > >> > tosca_definitions_version: tosca_simple_yaml_1_0 >> > >> > >> > imports: >> > - >> > https://raw.githubusercontent.com/cloudify-cosmo/aria- >> > extension-cloudify/master/plugins/openstack/plugin.yaml >> > - aria-1.0 >> > >> > dsl_definitions: >> > openstack_config: &openstack_config >> > username: dewayne >> > >> > data_types: >> > config: >> > properties: >> > username: >> > type: string >> > default: 'NOT SET' >> > >> > relationship_types: >> > subnet_connected_to_router: >> > derived_from: ConnectsTo >> > interfaces: >> > Configure: >> > add_target: >> > implementation: connect.sh >> > inputs: >> > openstack_config: >> > type: config >> > required: true >> > default: {} >> > >> > node_types: >> > router: >> > derived_from: tosca.nodes.Root >> > >> > subnet: >> > derived_from: tosca.nodes.Root >> > requirements: >> > - router: >> > capability: tosca.capabilities.Node >> > relationship: subnet_connected_to_router >> > >> > topology_template: >> > >> > node_templates: >> > >> > router: >> > type: router >> > >> > subnet: >> > type: subnet >> > requirements: >> > - router: >> > node: router >> > relationship: >> > type: subnet_connected_to_router >> > interfaces: >> > Configure: >> > add_target: >> > inputs: >> > openstack_config: *openstack_config >> > >> > >> > On Mon, Aug 28, 2017 at 1:14 PM, Tal Liron <t...@cloudify.co> wrote: >> > >> > > I'm again confused, DeWayne. Is the error with the example I provided >> > here? >> > > Please let's start with this minimal example to make sure we're on the >> > same >> > > page. If the example validates for you, we can try adding features to >> try >> > > to see what replicates the bug. >> > > >> > > On Mon, Aug 28, 2017 at 1:37 PM, DeWayne Filppi <dewa...@cloudify.co> >> > > wrote: >> > > >> > > > Yeah, except my original example I sent *did* specify the node. >> > > > >> > > > On Mon, Aug 28, 2017 at 10:06 AM, Tal Liron <t...@cloudify.co> >> wrote: >> > > > >> > > > > OK, so unfortunately you still have the bug. To workaround, you >> have >> > to >> > > > > specify the "node" field explicitly for all requirements. Or you >> can >> > > use >> > > > > git master for now. >> > > > > >> > > > > On Mon, Aug 28, 2017 at 11:58 AM, DeWayne Filppi < >> > dewa...@cloudify.co> >> > > > > wrote: >> > > > > >> > > > > > I'm on 0.1.1 >> > > > > > >> > > > > > On Mon, Aug 28, 2017 at 9:48 AM, Tal Liron <t...@cloudify.co> >> > wrote: >> > > > > > >> > > > > > > Hm, are you using a git snapshot or a release? This issue was >> > fixed >> > > > on >> > > > > > git >> > > > > > > but not released yet. >> > > > > > > >> > > > > > > On Fri, Aug 25, 2017 at 7:20 PM, DeWayne Filppi < >> > > dewa...@cloudify.co >> > > > > >> > > > > > > wrote: >> > > > > > > >> > > > > > > > I got this: >> > > > > > > > >> > > > > > > > Validation issues: >> > > > > > > > 5: requirement "my_requirement" of node "my_node2_1" has >> no >> > > > target >> > > > > > node >> > > > > > > > template >> > > > > > > > >> > > > > > > > >> > > > > > > > On Fri, Aug 25, 2017 at 3:42 PM, Tal Liron <t...@cloudify.co >> > >> > > > wrote: >> > > > > > > > >> > > > > > > > > OK. Now we're getting somewhere. I tried to create a more >> > > minimal >> > > > > > > example >> > > > > > > > > to reproduce this, but without success. My example >> correctly >> > > > > assigns >> > > > > > > the >> > > > > > > > > value when I run "aria services show -f". I wonder if >> it's a >> > > bug >> > > > > that >> > > > > > > was >> > > > > > > > > fixed somewhere or if there's something else going on in >> your >> > > > more >> > > > > > > > complex >> > > > > > > > > example. >> > > > > > > > > >> > > > > > > > > Could you try with the attached yaml? >> > > > > > > > > >> > > > > > > > > On Fri, Aug 25, 2017 at 5:33 PM, DeWayne Filppi < >> > > > > dewa...@cloudify.co >> > > > > > > >> > > > > > > > > wrote: >> > > > > > > > > >> > > > > > > > >> Yeah: >> > > > > > > > >> >> > > > > > > > >> Arguments: >> > > > > > > > >> process: {} (map) >> > > > > > > > >> Sub-process configuration. >> > > > > > > > >> script_path: 'connect.sh' (string) >> > > > > > > > >> Relative path to the executable file. >> > > > > > > > >> openstack_config: {'username': 'NOT SET'} >> > > (map) >> > > > > > > > >> >> > > > > > > > >> >> > > > > > > > >> >> > > > > > > > >> On Fri, Aug 25, 2017 at 3:31 PM, Tal Liron < >> t...@cloudify.co >> > > >> > > > > wrote: >> > > > > > > > >> >> > > > > > > > >> > And you're saying that also in "aria services show -f" >> you >> > > see >> > > > > > that >> > > > > > > > it's >> > > > > > > > >> > NOT SET? >> > > > > > > > >> > >> > > > > > > > >> > On Fri, Aug 25, 2017 at 5:29 PM, DeWayne Filppi < >> > > > > > > dewa...@cloudify.co> >> > > > > > > > >> > wrote: >> > > > > > > > >> > >> > > > > > > > >> > > Never mind, figured it out from the code. Here's the >> > > > > simplified >> > > > > > > > >> > template: >> > > > > > > > >> > > >> > > > > > > > >> > > tosca_definitions_version: tosca_simple_yaml_1_0 >> > > > > > > > >> > > >> > > > > > > > >> > > >> > > > > > > > >> > > imports: >> > > > > > > > >> > > - aria-1.0 >> > > > > > > > >> > > >> > > > > > > > >> > > dsl_definitions: >> > > > > > > > >> > > openstack_config: &openstack_config >> > > > > > > > >> > > username: dewayne >> > > > > > > > >> > > >> > > > > > > > >> > > data_types: >> > > > > > > > >> > > config: >> > > > > > > > >> > > properties: >> > > > > > > > >> > > username: >> > > > > > > > >> > > type: string >> > > > > > > > >> > > default: 'NOT SET' >> > > > > > > > >> > > >> > > > > > > > >> > > relationship_types: >> > > > > > > > >> > > subnet_connected_to_router: >> > > > > > > > >> > > derived_from: ConnectsTo >> > > > > > > > >> > > interfaces: >> > > > > > > > >> > > Configure: >> > > > > > > > >> > > add_target: >> > > > > > > > >> > > implementation: connect.sh >> > > > > > > > >> > > inputs: >> > > > > > > > >> > > openstack_config: >> > > > > > > > >> > > type: config >> > > > > > > > >> > > required: true >> > > > > > > > >> > > default: {} >> > > > > > > > >> > > >> > > > > > > > >> > > node_types: >> > > > > > > > >> > > router: >> > > > > > > > >> > > derived_from: tosca.nodes.Root >> > > > > > > > >> > > >> > > > > > > > >> > > subnet: >> > > > > > > > >> > > derived_from: tosca.nodes.Root >> > > > > > > > >> > > requirements: >> > > > > > > > >> > > - router: >> > > > > > > > >> > > capability: tosca.capabilities.Node >> > > > > > > > >> > > node: router >> > > > > > > > >> > > relationship: subnet_connected_to_router >> > > > > > > > >> > > >> > > > > > > > >> > > topology_template: >> > > > > > > > >> > > >> > > > > > > > >> > > node_templates: >> > > > > > > > >> > > >> > > > > > > > >> > > router: >> > > > > > > > >> > > type: router >> > > > > > > > >> > > >> > > > > > > > >> > > subnet: >> > > > > > > > >> > > type: subnet >> > > > > > > > >> > > requirements: >> > > > > > > > >> > > - router: >> > > > > > > > >> > > node: router >> > > > > > > > >> > > relationship: >> > > > > > > > >> > > type: subnet_connected_to_router >> > > > > > > > >> > > interfaces: >> > > > > > > > >> > > Configure: >> > > > > > > > >> > > add_target: >> > > > > > > > >> > > inputs: >> > > > > > > > >> > > openstack_config: >> > *openstack_config >> > > > > > > > >> > > >> > > > > > > > >> > > >> > > > > > > > >> > > There is a script in the same directory referred to >> > > > > > "connect.sh": >> > > > > > > > >> > > >> > > > > > > > >> > > #!/bin/sh >> > > > > > > > >> > > >> > > > > > > > >> > > ctx logger info "HERE $openstack_config" >> > > > > > > > >> > > >> > > > > > > > >> > > >> > > > > > > > >> > > When "install" is run, the output of the log >> statement >> > is >> > > > "NOT >> > > > > > > SET" >> > > > > > > > >> (the >> > > > > > > > >> > > default). Even though I have overridden it (should >> be >> > > > > > "dewayne"). >> > > > > > > > >> > > >> > > > > > > > >> > > >> > > > > > > > >> > > >> > > > > > > > >> > > On Fri, Aug 25, 2017 at 3:06 PM, DeWayne Filppi < >> > > > > > > > dewa...@cloudify.co> >> > > > > > > > >> > > wrote: >> > > > > > > > >> > > >> > > > > > > > >> > > > For the simplified example I need to provide a >> shell >> > > > script >> > > > > or >> > > > > > > > >> python >> > > > > > > > >> > > > script that dumps the inputs passed to the >> operation >> > > impl. >> > > > > > Not >> > > > > > > > sure >> > > > > > > > >> > how >> > > > > > > > >> > > > that's done in ARIA. IOW, I don't know how to >> refer >> > to >> > > > > > inputs, >> > > > > > > > and >> > > > > > > > >> > don't >> > > > > > > > >> > > > see any example. >> > > > > > > > >> > > > >> > > > > > > > >> > > > On Fri, Aug 25, 2017 at 2:17 PM, Tal Liron < >> > > > t...@cloudify.co >> > > > > > >> > > > > > > > wrote: >> > > > > > > > >> > > > >> > > > > > > > >> > > >> That you supply where? Override where? What is the >> > > error? >> > > > > > Sorry >> > > > > > > > >> > DeWayne, >> > > > > > > > >> > > >> very hard for me to follow your explanation. We >> > really >> > > > > need a >> > > > > > > > >> complete >> > > > > > > > >> > > >> simple example here and the exact errors that you >> > get. >> > > > > > > > >> > > >> >> > > > > > > > >> > > >> On Fri, Aug 25, 2017 at 4:06 PM, DeWayne Filppi < >> > > > > > > > >> dewa...@cloudify.co> >> > > > > > > > >> > > >> wrote: >> > > > > > > > >> > > >> >> > > > > > > > >> > > >> > Yes, in my case the relationship bewteen the >> subnet >> > > and >> > > > > > > router >> > > > > > > > >> > > >> (add_target) >> > > > > > > > >> > > >> > is executed properly. The problem is that the >> > > > > > > > >> "openstack_config" >> > > > > > > > >> > > input >> > > > > > > > >> > > >> > that I supply is not passed as an input. When I >> > run >> > > > > 'aria >> > > > > > > > >> service >> > > > > > > > >> > > show >> > > > > > > > >> > > >> > -f', it is clear that my override is ignore and >> > > default >> > > > > > (all >> > > > > > > > >> empty >> > > > > > > > >> > > >> strings) >> > > > > > > > >> > > >> > is used. >> > > > > > > > >> > > >> > >> > > > > > > > >> > > >> > On Fri, Aug 25, 2017 at 2:02 PM, Tal Liron < >> > > > > > t...@cloudify.co> >> > > > > > > > >> wrote: >> > > > > > > > >> > > >> > >> > > > > > > > >> > > >> > > Is my attempt not what you meant? Was your >> error >> > > > > > different? >> > > > > > > > >> > > >> > > >> > > > > > > > >> > > >> > > On Fri, Aug 25, 2017 at 4:01 PM, DeWayne >> Filppi < >> > > > > > > > >> > > dewa...@cloudify.co> >> > > > > > > > >> > > >> > > wrote: >> > > > > > > > >> > > >> > > >> > > > > > > > >> > > >> > > > OK. You want something not tied to >> Openstack, >> > > > > probably >> > > > > > > > with >> > > > > > > > >> > just >> > > > > > > > >> > > >> two >> > > > > > > > >> > > >> > > > nodes. Will do. >> > > > > > > > >> > > >> > > > >> > > > > > > > >> > > >> > > > On Fri, Aug 25, 2017 at 1:55 PM, Tal Liron < >> > > > > > > > t...@cloudify.co> >> > > > > > > > >> > > wrote: >> > > > > > > > >> > > >> > > > >> > > > > > > > >> > > >> > > > > DeWayne, this is still not very minimal, >> and >> > I >> > > > > don't >> > > > > > > > >> > understand >> > > > > > > > >> > > >> what >> > > > > > > > >> > > >> > > > "dies" >> > > > > > > > >> > > >> > > > > means. Could you please provide the error? >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > Here's my stab at a minimal example, >> please >> > let >> > > > me >> > > > > > know >> > > > > > > > if >> > > > > > > > >> > it's >> > > > > > > > >> > > >> what >> > > > > > > > >> > > >> > > you >> > > > > > > > >> > > >> > > > > got: >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > tosca_definitions_version: >> > > tosca_simple_yaml_1_0 >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > relationship_types: >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > MyRelationship: >> > > > > > > > >> > > >> > > > > interfaces: >> > > > > > > > >> > > >> > > > > Configure: >> > > > > > > > >> > > >> > > > > add_target: >> > > > > > > > >> > > >> > > > > inputs: >> > > > > > > > >> > > >> > > > > my_input: >> > > > > > > > >> > > >> > > > > type: string >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > node_types: >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > MyNode: >> > > > > > > > >> > > >> > > > > requirements: >> > > > > > > > >> > > >> > > > > - my_requirement: >> > > > > > > > >> > > >> > > > > capability: >> > > > tosca.capabilities.Container >> > > > > > > > >> > > >> > > > > relationship: MyRelationship >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > topology_template: >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > node_templates: >> > > > > > > > >> > > >> > > > > my_node: >> > > > > > > > >> > > >> > > > > type: MyNode >> > > > > > > > >> > > >> > > > > requirements: >> > > > > > > > >> > > >> > > > > - my_requirement: >> > > > > > > > >> > > >> > > > > relationship: >> > > > > > > > >> > > >> > > > > interfaces: >> > > > > > > > >> > > >> > > > > Configure: >> > > > > > > > >> > > >> > > > > add_target: >> > > > > > > > >> > > >> > > > > inputs: >> > > > > > > > >> > > >> > > > > my_input: test >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > The above gave me this exception: >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > AttributeError: 'NoneType' object has no >> > > > attribute >> > > > > > > > '_name' >> > > > > > > > >> > > >> > > > > File "/home/emblemparade/ariatosca/ >> > > > > > > > >> aria/parser/consumption/ >> > > > > > > > >> > > >> > > > consumer.py", >> > > > > > > > >> > > >> > > > > line 73, in consume >> > > > > > > > >> > > >> > > > > consumer.consume() >> > > > > > > > >> > > >> > > > > File "/home/emblemparade/ariatosca/ >> > > > > > > > >> aria/parser/consumption/ >> > > > > > > > >> > > >> > > > modeling.py", >> > > > > > > > >> > > >> > > > > line 36, in consume >> > > > > > > > >> > > >> > > > > self.context.presentation. >> > > > > > > presenter._get_model(self. >> > > > > > > > >> > > context) >> > > > > > > > >> > > >> > > > > File "/home/emblemparade/ariatosca/ >> > > > > > > > >> aria/utils/caching.py", >> > > > > > > > >> > > line >> > > > > > > > >> > > >> > 84, >> > > > > > > > >> > > >> > > in >> > > > > > > > >> > > >> > > > > __call__ >> > > > > > > > >> > > >> > > > > return_value = self.func(*args, >> **kwargs) >> > > > > > > > >> > > >> > > > > File >> > > > > > > > >> > > >> > > > > "/home/emblemparade/ariatosca/ >> > > > > > > extensions/aria_extension_ >> > > > > > > > >> > > >> > > > > tosca/simple_v1_0/presenter.py", >> > > > > > > > >> > > >> > > > > line 82, in _get_model >> > > > > > > > >> > > >> > > > > return create_service_template_model( >> > > > context) >> > > > > > > > >> > > >> > > > > File >> > > > > > > > >> > > >> > > > > "/home/emblemparade/ariatosca/ >> > > > > > > extensions/aria_extension_ >> > > > > > > > >> > > >> > > > > tosca/simple_v1_0/modeling/__init__.py", >> > > > > > > > >> > > >> > > > > line 123, in create_service_template_model >> > > > > > > > >> > > >> > > > > fix_node_template_model(context, >> model, >> > > > > > > > node_template) >> > > > > > > > >> > > >> > > > > File >> > > > > > > > >> > > >> > > > > "/home/emblemparade/ariatosca/ >> > > > > > > extensions/aria_extension_ >> > > > > > > > >> > > >> > > > > tosca/simple_v1_0/modeling/__init__.py", >> > > > > > > > >> > > >> > > > > line 209, in fix_node_template_model >> > > > > > > > >> > > >> > > > > requirement)) >> > > > > > > > >> > > >> > > > > File >> > > > > > > > >> > > >> > > > > "/home/emblemparade/ariatosca/ >> > > > > > > extensions/aria_extension_ >> > > > > > > > >> > > >> > > > > tosca/simple_v1_0/modeling/__init__.py", >> > > > > > > > >> > > >> > > > > line 293, in create_requirement_template_ >> > model >> > > > > > > > >> > > >> > > > > create_relationship_template_ >> > > model(context, >> > > > > > > > >> > > service_template, >> > > > > > > > >> > > >> > > > > relationship) >> > > > > > > > >> > > >> > > > > File >> > > > > > > > >> > > >> > > > > "/home/emblemparade/ariatosca/ >> > > > > > > extensions/aria_extension_ >> > > > > > > > >> > > >> > > > > tosca/simple_v1_0/modeling/__init__.py", >> > > > > > > > >> > > >> > > > > line 318, in create_relationship_template_ >> > > model >> > > > > > > > >> > > >> > > > > relationship.interfaces) >> > > > > > > > >> > > >> > > > > File >> > > > > > > > >> > > >> > > > > "/home/emblemparade/ariatosca/ >> > > > > > > extensions/aria_extension_ >> > > > > > > > >> > > >> > > > > tosca/simple_v1_0/modeling/__init__.py", >> > > > > > > > >> > > >> > > > > line 621, in create_interface_template_ >> > models >> > > > > > > > >> > > >> > > > > interface = create_interface_template_ >> > > > > > > model(context, >> > > > > > > > >> > > >> > > > service_template, >> > > > > > > > >> > > >> > > > > interface) >> > > > > > > > >> > > >> > > > > File >> > > > > > > > >> > > >> > > > > "/home/emblemparade/ariatosca/ >> > > > > > > extensions/aria_extension_ >> > > > > > > > >> > > >> > > > > tosca/simple_v1_0/modeling/__init__.py", >> > > > > > > > >> > > >> > > > > line 354, in >> create_interface_template_model >> > > > > > > > >> > > >> > > > > interface_type = >> > > > > > > > >> > > >> > > > > service_template.interface_ >> > > types.get_descendant( >> > > > > > > > >> > > >> > interface_type._name) >> > > > > > > > >> > > >> > > > > Validation issues: >> > > > > > > > >> > > >> > > > > 0: 'NoneType' object has no attribute >> > '_name' >> > > > > > > > >> > > >> > > > > AttributeError: 'NoneType' object >> has no >> > > > > > attribute >> > > > > > > > >> > '_name' >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > On Fri, Aug 25, 2017 at 3:28 PM, DeWayne >> > > Filppi < >> > > > > > > > >> > > >> dewa...@cloudify.co >> > > > > > > > >> > > >> > > >> > > > > > > > >> > > >> > > > > wrote: >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > > tosca_definitions_version: >> > > > tosca_simple_yaml_1_0 >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > > imports: >> > > > > > > > >> > > >> > > > > > - >> > > > > > > > >> > > >> > > > > > https://raw.githubusercontent. >> > > > > > > com/cloudify-cosmo/aria- >> > > > > > > > >> > > >> > > > > > extension-cloudify/master/ >> > > > > > > > plugins/openstack/plugin.yaml >> > > > > > > > >> > > >> > > > > > - aria-1.0 >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > > dsl_definitions: >> > > > > > > > >> > > >> > > > > > openstack_config: &openstack_config >> > > > > > > > >> > > >> > > > > > username: >> > > > > > > > >> > > >> > > > > > password: >> > > > > > > > >> > > >> > > > > > tenant_name: >> > > > > > > > >> > > >> > > > > > auth_url: >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > > topology_template: >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > > node_templates: >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > > router: >> > > > > > > > >> > > >> > > > > > type: aria.openstack.nodes.Router >> > > > > > > > >> > > >> > > > > > properties: >> > > > > > > > >> > > >> > > > > > external_network: gateway_net >> > > > > > > > >> > > >> > > > > > create_if_missing: true >> > > > > > > > >> > > >> > > > > > resource_id: aria_helloworld_rtr >> > > > > > > > >> > > >> > > > > > interfaces: >> > > > > > > > >> > > >> > > > > > Standard: >> > > > > > > > >> > > >> > > > > > create: >> > > > > > > > >> > > >> > > > > > inputs: >> > > > > > > > >> > > >> > > > > > openstack_config: >> > > > *openstack_config >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > > network: >> > > > > > > > >> > > >> > > > > > type: aria.openstack.nodes.Network >> > > > > > > > >> > > >> > > > > > properties: >> > > > > > > > >> > > >> > > > > > resource_id: >> > aria_helloworld_network >> > > > > > > > >> > > >> > > > > > create_if_missing: true >> > > > > > > > >> > > >> > > > > > interfaces: >> > > > > > > > >> > > >> > > > > > Standard: >> > > > > > > > >> > > >> > > > > > create: >> > > > > > > > >> > > >> > > > > > inputs: >> > > > > > > > >> > > >> > > > > > openstack_config: >> > > > *openstack_config >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > > subnet: >> > > > > > > > >> > > >> > > > > > type: aria.openstack.nodes.Subnet >> > > > > > > > >> > > >> > > > > > properties: >> > > > > > > > >> > > >> > > > > > resource_id: >> aria_helloworld_subnet >> > > > > > > > >> > > >> > > > > > create_if_missing: true >> > > > > > > > >> > > >> > > > > > interfaces: >> > > > > > > > >> > > >> > > > > > Standard: >> > > > > > > > >> > > >> > > > > > create: >> > > > > > > > >> > > >> > > > > > inputs: >> > > > > > > > >> > > >> > > > > > openstack_config: >> > > > *openstack_config >> > > > > > > > >> > > >> > > > > > requirements: >> > > > > > > > >> > > >> > > > > > - router: >> > > > > > > > >> > > >> > > > > > node: router >> > > > > > > > >> > > >> > > > > > relationship: >> > > > > > > > >> > > >> > > > > > type: >> aria.openstack.subnet_ >> > > > > > > > >> > connected_to_router >> > > > > > > > >> > > >> > > > > > interfaces: >> > > > > > > > >> > > >> > > > > > Configure: >> > > > > > > > >> > > >> > > > > > add_target: >> > > > > > > > >> > > >> > > > > > inputs: >> > > > > > > > >> > > >> > > > > > openstack_config: >> > > > > > > > *openstack_config >> > > > > > > > >> > > >> > > > > > - network: network >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > > Dies in add_target of >> > > > subnet_connected_to_router >> > > > > > > > because >> > > > > > > > >> > > default >> > > > > > > > >> > > >> > > > (empty) >> > > > > > > > >> > > >> > > > > > openstack_config input being used rather >> > than >> > > > the >> > > > > > > > >> > override. I >> > > > > > > > >> > > >> > didn't >> > > > > > > > >> > > >> > > > put >> > > > > > > > >> > > >> > > > > > the "implementation" line in because >> doing >> > so >> > > > has >> > > > > > no >> > > > > > > > >> effect. >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > > On Fri, Aug 25, 2017 at 1:03 PM, Tal >> Liron >> > < >> > > > > > > > >> t...@cloudify.co >> > > > > > > > >> > > >> > > > > > > > >> > > >> > wrote: >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > > > Could you create a minimal YAML file >> that >> > > > > > > > demonstrates >> > > > > > > > >> > this >> > > > > > > > >> > > >> > problem >> > > > > > > > >> > > >> > > > so >> > > > > > > > >> > > >> > > > > we >> > > > > > > > >> > > >> > > > > > > can reproduce it? It could be a bug. >> > > > > > > > >> > > >> > > > > > > >> > > > > > > > >> > > >> > > > > > > On Fri, Aug 25, 2017 at 2:48 PM, >> DeWayne >> > > > > Filppi < >> > > > > > > > >> > > >> > > dewa...@cloudify.co >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > > > > wrote: >> > > > > > > > >> > > >> > > > > > > >> > > > > > > > >> > > >> > > > > > > > I don't know if this is a clue or >> not, >> > > but >> > > > I >> > > > > > > > modified >> > > > > > > > >> > the >> > > > > > > > >> > > >> > > > > > > > relationship: >> aria.openstack.subnet_ >> > > > > > > > >> > connected_to_router, >> > > > > > > > >> > > >> in >> > > > > > > > >> > > >> > the >> > > > > > > > >> > > >> > > > > aria >> > > > > > > > >> > > >> > > > > > > > openstack plugin.yaml to require the >> > > > > > > > >> 'openstack_config' >> > > > > > > > >> > > >> input >> > > > > > > > >> > > >> > for >> > > > > > > > >> > > >> > > > the >> > > > > > > > >> > > >> > > > > > > > Configure.add_target operation (and >> got >> > > rid >> > > > > of >> > > > > > > the >> > > > > > > > >> > > default). >> > > > > > > > >> > > >> > > > > > Afterwards, >> > > > > > > > >> > > >> > > > > > > > any attempt to validate this: >> > > > > > > > >> > > >> > > > > > > > >> > > > > > > > >> > > >> > > > > > > > subnet: >> > > > > > > > >> > > >> > > > > > > > type: >> aria.openstack.nodes.Subnet >> > > > > > > > >> > > >> > > > > > > > properties: >> > > > > > > > >> > > >> > > > > > > > resource_id: >> > > aria_helloworld_subnet >> > > > > > > > >> > > >> > > > > > > > create_if_missing: true >> > > > > > > > >> > > >> > > > > > > > interfaces: >> > > > > > > > >> > > >> > > > > > > > Standard: >> > > > > > > > >> > > >> > > > > > > > create: >> > > > > > > > >> > > >> > > > > > > > inputs: >> > > > > > > > >> > > >> > > > > > > > openstack_config: { >> > > > get_input: >> > > > > > > > >> > > >> openstack_config } >> > > > > > > > >> > > >> > > > > > > > requirements: >> > > > > > > > >> > > >> > > > > > > > - router: >> > > > > > > > >> > > >> > > > > > > > node: router >> > > > > > > > >> > > >> > > > > > > > relationship: >> > > > > > > > >> > > >> > > > > > > > type: >> > > > > > > aria.openstack.subnet_connecte >> > > > > > > > >> > > >> d_to_router >> > > > > > > > >> > > >> > > > > > > > interfaces: >> > > > > > > > >> > > >> > > > > > > > Configure: >> > > > > > > > >> > > >> > > > > > > > add_target: >> > > > > > > > >> > > >> > > > > > > > inputs: >> > > > > > > > >> > > >> > > > > > > > >> > openstack_config: { >> > > > > > > > get_input: >> > > > > > > > >> > > >> > > > > openstack_config } >> > > > > > > > >> > > >> > > > > > > > >> > > > > > > > >> > > >> > > > > > > > Fails with the error : Validation >> > issues: >> > > > > > > > >> > > >> > > > > > > > 4: interface definition >> "Configure" >> > > does >> > > > > not >> > > > > > > > >> assign a >> > > > > > > > >> > > >> value >> > > > > > > > >> > > >> > to >> > > > > > > > >> > > >> > > a >> > > > > > > > >> > > >> > > > > > > required >> > > > > > > > >> > > >> > > > > > > > operation input >> > > > "add_target.openstack_config" >> > > > > > in >> > > > > > > > >> > > >> "relationship" >> > > > > > > > >> > > >> > > > > > > > >> > > > > > > > >> > > >> > > > > > > > Which is further confirmation that >> the >> > > > input >> > > > > > > isn't >> > > > > > > > >> seen, >> > > > > > > > >> > > and >> > > > > > > > >> > > >> > > > normally >> > > > > > > > >> > > >> > > > > > the >> > > > > > > > >> > > >> > > > > > > > default gets used (empty strings). >> I >> > > don't >> > > > > see >> > > > > > > > >> examples >> > > > > > > > >> > > >> > anywhere >> > > > > > > > >> > > >> > > > > that >> > > > > > > > >> > > >> > > > > > > show >> > > > > > > > >> > > >> > > > > > > > how to properly override the >> interface >> > > > > inside a >> > > > > > > > >> > > relationship >> > > > > > > > >> > > >> > > > inside a >> > > > > > > > >> > > >> > > > > > > > requirement. >> > > > > > > > >> > > >> > > > > > > > >> > > > > > > > >> > > >> > > > > > > > >> > > > > > > > >> > > >> > > > > > > > On Fri, Aug 25, 2017 at 10:57 AM, >> Tal >> > > > Liron < >> > > > > > > > >> > > >> t...@cloudify.co> >> > > > > > > > >> > > >> > > > wrote: >> > > > > > > > >> > > >> > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > "implementation" is a required >> field >> > in >> > > > the >> > > > > > > TOSCA >> > > > > > > > >> > spec, >> > > > > > > > >> > > so >> > > > > > > > >> > > >> > you >> > > > > > > > >> > > >> > > > must >> > > > > > > > >> > > >> > > > > > > > specify >> > > > > > > > >> > > >> > > > > > > > > it even if it is the same. >> > > > > > > > >> > > >> > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > On Fri, Aug 25, 2017 at 12:47 PM, >> > > DeWayne >> > > > > > > Filppi >> > > > > > > > < >> > > > > > > > >> > > >> > > > > > dewa...@cloudify.co> >> > > > > > > > >> > > >> > > > > > > > > wrote: >> > > > > > > > >> > > >> > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > It appears that this issue *was* >> > > fixed >> > > > by >> > > > > > > > >> repeating >> > > > > > > > >> > > the >> > > > > > > > >> > > >> > > > > > > implementation >> > > > > > > > >> > > >> > > > > > > > > key >> > > > > > > > >> > > >> > > > > > > > > > in the add_target block. >> > > Intuitively, >> > > > I >> > > > > > > would >> > > > > > > > >> > expect >> > > > > > > > >> > > >> that >> > > > > > > > >> > > >> > > > > fields I >> > > > > > > > >> > > >> > > > > > > > > didn't >> > > > > > > > >> > > >> > > > > > > > > > override would be untouched, but >> > > > > apparently >> > > > > > > > not. >> > > > > > > > >> > > >> > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > On Thu, Aug 24, 2017 at 4:59 PM, >> > Tal >> > > > > Liron >> > > > > > < >> > > > > > > > >> > > >> > t...@cloudify.co> >> > > > > > > > >> > > >> > > > > > wrote: >> > > > > > > > >> > > >> > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > Did you read the wiki? ARIA >> will >> > > send >> > > > > > those >> > > > > > > > >> > > specially >> > > > > > > > >> > > >> > > > formatted >> > > > > > > > >> > > >> > > > > > > > > > > dependencies as arguments to >> the >> > > > > > @operation >> > > > > > > > >> > > function. >> > > > > > > > >> > > >> > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > It would help to see your >> > complete >> > > > > > example, >> > > > > > > > as >> > > > > > > > >> I >> > > > > > > > >> > > don't >> > > > > > > > >> > > >> > know >> > > > > > > > >> > > >> > > > > what >> > > > > > > > >> > > >> > > > > > > > you're >> > > > > > > > >> > > >> > > > > > > > > > > doing and not doing anymore. >> > Could >> > > > you >> > > > > > > throw >> > > > > > > > it >> > > > > > > > >> > > into a >> > > > > > > > >> > > >> > > GitHub >> > > > > > > > >> > > >> > > > > > repo >> > > > > > > > >> > > >> > > > > > > > > > perhaps? >> > > > > > > > >> > > >> > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > On Thu, Aug 24, 2017 at 6:53 >> PM, >> > > > > DeWayne >> > > > > > > > >> Filppi < >> > > > > > > > >> > > >> > > > > > > dewa...@cloudify.co >> > > > > > > > >> > > >> > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > wrote: >> > > > > > > > >> > > >> > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > 'dependencies' is a child of >> > > > > > > implementation >> > > > > > > > >> in >> > > > > > > > >> > the >> > > > > > > > >> > > >> > spec. >> > > > > > > > >> > > >> > > > I >> > > > > > > > >> > > >> > > > > > > don't >> > > > > > > > >> > > >> > > > > > > > > > think >> > > > > > > > >> > > >> > > > > > > > > > > > it's going to do anything >> for >> > me >> > > > > > > anyway. I >> > > > > > > > >> just >> > > > > > > > >> > > >> want >> > > > > > > > >> > > >> > to >> > > > > > > > >> > > >> > > > pass >> > > > > > > > >> > > >> > > > > > > > > > > > openstack_config to the >> > > add_target >> > > > > > > > operation >> > > > > > > > >> as >> > > > > > > > >> > > >> inputs. >> > > > > > > > >> > > >> > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > On Thu, Aug 24, 2017 at 4:28 >> > PM, >> > > > Tal >> > > > > > > Liron >> > > > > > > > < >> > > > > > > > >> > > >> > > > t...@cloudify.co> >> > > > > > > > >> > > >> > > > > > > > wrote: >> > > > > > > > >> > > >> > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > What is the error? >> > > > > > > > >> > > >> > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > On Thu, Aug 24, 2017 at >> 6:22 >> > > PM, >> > > > > > > DeWayne >> > > > > > > > >> > Filppi >> > > > > > > > >> > > < >> > > > > > > > >> > > >> > > > > > > > > dewa...@cloudify.co >> > > > > > > > >> > > >> > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > wrote: >> > > > > > > > >> > > >> > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > actually "dependencies" >> > fails >> > > > > > > > validation. >> > > > > > > > >> > > >> > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > On Thu, Aug 24, 2017 at >> > 4:08 >> > > > PM, >> > > > > > Tal >> > > > > > > > >> Liron < >> > > > > > > > >> > > >> > > > > > t...@cloudify.co> >> > > > > > > > >> > > >> > > > > > > > > > wrote: >> > > > > > > > >> > > >> > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > Oops, sorry, this is >> the >> > > > > syntax: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > interfaces: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > Configure: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > add_target: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > primary: >> > my_script.sh >> > > > > > > > >> > > >> > > > > > > > > > > > > > > dependencies: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > - >> > "openstack_config >> > > > > { >> > > > > > > > >> get_input: >> > > > > > > > >> > > >> > > > > > openstack_config >> > > > > > > > >> > > >> > > > > > > > }" >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > On Thu, Aug 24, 2017 >> at >> > > 6:00 >> > > > > PM, >> > > > > > > Tal >> > > > > > > > >> > Liron < >> > > > > > > > >> > > >> > > > > > > t...@cloudify.co> >> > > > > > > > >> > > >> > > > > > > > > > > wrote: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > A few syntax >> problems: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > 1. It looks like you >> > > don't >> > > > > have >> > > > > > > any >> > > > > > > > >> > > >> operation >> > > > > > > > >> > > >> > > > > > > > implementation, >> > > > > > > > >> > > >> > > > > > > > > > > which >> > > > > > > > >> > > >> > > > > > > > > > > > > is >> > > > > > > > >> > > >> > > > > > > > > > > > > > a >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > required field. >> (What >> > do >> > > > you >> > > > > > > expect >> > > > > > > > >> the >> > > > > > > > >> > > >> inputs >> > > > > > > > >> > > >> > to >> > > > > > > > >> > > >> > > > be >> > > > > > > > >> > > >> > > > > > sent >> > > > > > > > >> > > >> > > > > > > > > to?) >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > 2. Also, you are not >> > > naming >> > > > > the >> > > > > > > > >> input. >> > > > > > > > >> > It >> > > > > > > > >> > > >> > should >> > > > > > > > >> > > >> > > be >> > > > > > > > >> > > >> > > > > > > > "inputs: >> > > > > > > > >> > > >> > > > > > > > > { >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > my_input_name: { >> > > get_input: >> > > > > > > > >> > > >> openstack_config } >> > > > > > > > >> > > >> > }" >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > 3. But #2 won't work >> > > > because >> > > > > > you >> > > > > > > > >> can't >> > > > > > > > >> > > just >> > > > > > > > >> > > >> add >> > > > > > > > >> > > >> > > > > inputs >> > > > > > > > >> > > >> > > > > > in >> > > > > > > > >> > > >> > > > > > > > > this >> > > > > > > > >> > > >> > > > > > > > > > > > case, >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > because they are not >> > > > declared >> > > > > > at >> > > > > > > > the >> > > > > > > > >> > > >> interface >> > > > > > > > >> > > >> > > > type. >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > Assuming you do >> have an >> > > > > > > > >> implementation, >> > > > > > > > >> > > you >> > > > > > > > >> > > >> > could >> > > > > > > > >> > > >> > > > you >> > > > > > > > >> > > >> > > > > > try >> > > > > > > > >> > > >> > > > > > > > > > passing >> > > > > > > > >> > > >> > > > > > > > > > > > it >> > > > > > > > >> > > >> > > > > > > > > > > > > > > using >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > execution >> > configuration: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > >> > > https://cwiki.apache.org/ >> > > > > > > > >> > > >> > > > > confluence/display/ARIATOSCA/ >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > >> Execution+Configuration >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > Try something like >> > this: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > interfaces: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > Configure: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > add_target: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > primary: >> > > my_script.sh >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > dependencies: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > - >> > > > openstack_config: { >> > > > > > > > >> get_input: >> > > > > > > > >> > > >> > > > > > > openstack_config } >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > On Thu, Aug 24, >> 2017 at >> > > > 5:49 >> > > > > > PM, >> > > > > > > > >> DeWayne >> > > > > > > > >> > > >> > Filppi < >> > > > > > > > >> > > >> > > > > > > > > > > > dewa...@cloudify.co >> > > > > > > > >> > > >> > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > wrote: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> In the ARIA usage >> of >> > the >> > > > > > > plugin, I >> > > > > > > > >> need >> > > > > > > > >> > > to >> > > > > > > > >> > > >> > pass >> > > > > > > > >> > > >> > > > > > > > > > openstack_config >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> explicitly >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> to every operation. >> > > Since >> > > > > the >> > > > > > > > >> > > >> relationships >> > > > > > > > >> > > >> > are >> > > > > > > > >> > > >> > > > > > > implicit, >> > > > > > > > >> > > >> > > > > > > > > how >> > > > > > > > >> > > >> > > > > > > > > > > do >> > > > > > > > >> > > >> > > > > > > > > > > > I >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> accomplish this? >> > > > Currently >> > > > > I >> > > > > > > get >> > > > > > > > >> > errors >> > > > > > > > >> > > >> when >> > > > > > > > >> > > >> > > > trying >> > > > > > > > >> > > >> > > > > > to >> > > > > > > > >> > > >> > > > > > > > > > connect >> > > > > > > > >> > > >> > > > > > > > > > > a >> > > > > > > > >> > > >> > > > > > > > > > > > > > subnet >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> to >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> a router. I've >> tried >> > > > > > > overriding >> > > > > > > > >> the >> > > > > > > > >> > > >> > > relationship >> > > > > > > > >> > > >> > > > > > like >> > > > > > > > >> > > >> > > > > > > > so: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> subnet: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> type: >> > > > > > > > >> aria.openstack.nodes.Subnet >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> properties: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> >> resource_id: >> > > > > > > > >> > > aria_helloworld_subnet >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> >> > > create_if_missing: >> > > > > > true >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> interfaces: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> Standard: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> create: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> inputs: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> >> > > > > > openstack_config: >> > > > > > > { >> > > > > > > > >> > > >> get_input: >> > > > > > > > >> > > >> > > > > > > > > openstack_config >> > > > > > > > >> > > >> > > > > > > > > > } >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> requirements: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> - router: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> node: >> > router >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> >> > > relationship: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> type: >> > > > > > > > >> > > aria.openstack.subnet_ >> > > > > > > > >> > > >> > > > > > > > > connected_to_router >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> >> > > interfaces: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> >> > > Configure: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> >> > > > > add_target: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> >> > > > inputs: >> > > > > { >> > > > > > > > >> > get_input: >> > > > > > > > >> > > >> > > > > > > openstack_config >> > > > > > > > >> > > >> > > > > > > > } >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> - network: >> > > network >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> Note the router >> > > > requirement. >> > > > > > > Does >> > > > > > > > >> this >> > > > > > > > >> > > >> syntax >> > > > > > > > >> > > >> > > > look >> > > > > > > > >> > > >> > > > > > > > correct? >> > > > > > > > >> > > >> > > > > > > > > > > > > Spoiler: >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> openstack_config >> never >> > > > makes >> > > > > > it >> > > > > > > to >> > > > > > > > >> the >> > > > > > > > >> > > >> plugin. >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> DeWayne >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > > >> > > > > > > > >> > > >> > > > > > > > >> > > > > > > > >> > > >> > > > > > > >> > > > > > > > >> > > >> > > > > > >> > > > > > > > >> > > >> > > > > >> > > > > > > > >> > > >> > > > >> > > > > > > > >> > > >> > > >> > > > > > > > >> > > >> > >> > > > > > > > >> > > >> >> > > > > > > > >> > > > >> > > > > > > > >> > > > >> > > > > > > > >> > > >> > > > > > > > >> > >> > > > > > > > >> >> > > > > > > > > >> > > > > > > > > >> > > > > > > > >> > > > > > > >> > > > > > >> > > > > >> > > > >> > > >> > >> > >