Uploaded image for project: 'OASIS Topology and Orchestration Specification for Cloud Applications (TOSCA) TC'
  1. OASIS Topology and Orchestration Specification for Cloud Applications (TOSCA) TC
  2. TOSCA-188

Requirements section should be turned to a map instead of list

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Profile-YAML
    • Labels:
      None
    • Resolution:
      Hide

      Issue was closed since changing the requirements section to a map would prevent us from using a cluster of requirements.

      Show
      Issue was closed since changing the requirements section to a map would prevent us from using a cluster of requirements.

      Description

      Requirements section is currently a list, however since the get_attribute function allows to refer to a requirement by name, it forces the requirements names to be unique. This limitation implicitly forces the section to behave as a map, and I think this should be expressed explicitly by turning the section in to a map, like the current capabilities section.

      current situation:

      software:
      type: tosca.nodes.SoftwareComponent
      properties:...
      attributes:
      ip_address:

      {get_attribute: [ SELF, host, ip_address] }

      #which host???
      requirements:

      1. the get attribute expression is referring to host, however there can be multiple "host"
      2. requirements, and each can have different attribute values.
      • host: server_be
        relationship: tosca.relationships.HostedOn
      • host: server_fe
        relationship: tosca.relationships.HostedOn

      server_be:
      type: tosca.nodes.Compute
      ...

      server_fe:
      type: tosca.nodes.Compute
      ...

      proposed fix:

      software:
      type: tosca.nodes.SoftwareComponent
      properties:...
      attributes:
      ip_address:

      {get_attribute: [ SELF, host_be, ip_address] }

      requirements:

      1. in this case the reference will be mapped uniquely to the one matching requirement name.
        host_be: # names are forced to be unique
        target: server_be
        relationship: tosca.relationships.HostedOn
        host_fe: # names are forced to be unique
        target: server_fe
        relationship: tosca.relationships.HostedOn

      server_be:
      type: tosca.nodes.Compute
      ...

      server_fe:
      type: tosca.nodes.Compute
      ...

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              noa.koffman noa koffman (Inactive)
            • Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: