Skip to content

artifacts-pruning-managed-rules-multiple-different

Variable Service Template

The variability of the following variable service template shall be resolved.

tosca_definitions_version: tosca_variability_1_0_rc_3
artifact_types:
    first.artifact.type:
        derived_from: tosca.artifacts.Root
    second.artifact.type:
        derived_from: tosca.artifacts.Root
node_types:
    application:
        derived_from: tosca.nodes.Root
    host:
        derived_from: tosca.nodes.Root
        metadata:
            vintner_abstract: 'true'
topology_template:
    variability:
        technology_rules:
            - component: application
              technology: ansible
              artifact: first.artifact.type
              hosting:
                  - host
              weight: 1
            - component: application
              technology: terraform
              artifact: first.artifact.type
              hosting:
                  - host
              weight: 0
    node_templates:
        application:
            type: application
            persistent: true
            artifacts:
                - first_artifact_type:
                      type: first.artifact.type
                      file: first_artifact_file
                - second_artifact_type:
                      type: second.artifact.type
                      file: second_artifact_file
            requirements:
                - host: host
        host:
            type: host

Variability-Resolved Service Template

The following variability-resolved service template is expected.

tosca_definitions_version: tosca_simple_yaml_1_3
artifact_types:
    first.artifact.type:
        derived_from: tosca.artifacts.Root
    second.artifact.type:
        derived_from: tosca.artifacts.Root
node_types:
    application:
        derived_from: tosca.nodes.Root
    host:
        derived_from: tosca.nodes.Root
        metadata:
            vintner_abstract: 'true'
topology_template:
    node_templates:
        application:
            type: application~application#first.artifact.type::ansible@host
            requirements:
                - host: host
            artifacts:
                first_artifact_type:
                    type: first.artifact.type
                    file: first_artifact_file
        host:
            type: host

Last update: October 1, 2024