cloudify-dsl-parser
cloudify-dsl-parser copied to clipboard
cfy 3.4.1: Blueprint validation fails with "Circular get_property function call detected"
On the Cloudify CLI v3.4.1 (and v3.4.2) The following blueprint fails validation with the error message:
Circular get_property function call detected: the_profile.profile,nested_data -> the_accelerator.ipaddress -> the_accelerator.ipaddress
I believe this is incorrect; to try and see if it's fine I did the following:
-
Removed the line that performs circular dependency checking and then ran the blueprint through the local install workflow: this worked as expected
-
Installed Cfy v4.0a10: validated correctly
The blueprint:
tosca_definitions_version: cloudify_dsl_1_3
imports:
- cfy_3.4.1.types.yaml
node_types:
Accelerator:
derived_from: cloudify.nodes.Root
properties: { ipaddress: { type: string } }
Profile:
derived_from: cloudify.nodes.Root
properties:
profile: { default: {}}
interfaces:
cloudify.interfaces.lifecycle:
create:
implementation: noop.sh
executor: central_deployment_agent
inputs:
task_properties:
default:
profile_data: { get_property: [SELF, profile, nested_data]}
node_templates:
the_accelerator:
type: Accelerator
properties:
ipaddress: '192.168.0.1'
the_profile:
type: Profile
properties:
profile:
template: 'a_template.conf'
nested_data:
some_prop: { concat: ['https://', {get_property: [the_accelerator, ipaddress]}]}
In fact, some further digging into functions.py
shows that there is a tag that probably includes a fix for this. Any plans to release this, or at least backport to 3.4.x?