{"$schema":"http://json-schema.org/draft-07/schema#","title":"Blueprint","type":"object","properties":{"tosca_definitions_version":{"type":"string","enum":["cloudify_dsl_1_0","cloudify_dsl_1_1","cloudify_dsl_1_2","cloudify_dsl_1_3"],"default":"cloudify_dsl_1_3"},"imports":{"type":"array","items":{"anyOf":[{"type":"string"},{"type":"string","enum":["http://www.getcloudify.org/spec/cloudify/4.5/types.yaml","plugin:cloudify-ansible-plugin","plugin:cloudify-aws-plugin","plugin:cloudify-azure-plugin","plugin:cloudify-cloudstack-plugin","plugin:cloudify-diamond-plugin","plugin:cloudify-fabric-plugin","plugin:cloudify-gcp-plugin","plugin:cloudify-host-pool-plugin","plugin:cloudify-kubernetes-plugin","plugin:cloudify-openstack-plugin","plugin:cloudify-utilities-plugin","plugin:cloudify-vsphere-plugin","plugin:cloudify-terraform-plugin","plugin:cloudify-helm-plugin"]}],"default":"http://www.getcloudify.org/spec/cloudify/4.5/types.yaml"}},"data_types":{"$ref":"#/definitions/dataTypes"},"inputs":{"type":"object","properties":{"aws_access_key_id":{"$ref":"#/definitions/inputProperty"},"aws_secret_access_key":{"$ref":"#/definitions/inputProperty"},"aws_region_name":{"$ref":"#/definitions/inputProperty"},"aws_account_id":{"$ref":"#/definitions/inputProperty"},"aws_region_zone1":{"$ref":"#/definitions/inputProperty"},"aws_region_zone2":{"$ref":"#/definitions/inputProperty"},"aws_cloudwatch_log_arn":{"$ref":"#/definitions/inputProperty"}},"patternProperties":{"":{"$ref":"#/definitions/inputProperty"}}},"dsl_definitions":{"type":"object"},"node_type":{"$ref":"#/definitions/nodeTypes"},"node_templates":{"$ref":"#/definitions/nodeTemplates"}},"definitions":{"dataTypes":{"type":"object","patternProperties":{"":{"$ref":"#/definitions/dataType"}}},"dataType":{"type":"object","properties":{"description":{"type":"string"},"properties":{"type":"object"},"derived_from":{"type":"string"}},"additionalProperties":false},"inputProperty":{"type":"object","properties":{"description":{"type":"string"},"type":{"anyOf":[{"type":"string"},{"type":"string","enum":["string","integer","float","boolean","list","dict","regex"]}]},"default":{"type":["number","string","array","boolean","integer","object"]},"constraints":{"$ref":"#/definitions/inputPropertyConstraints"},"required":{"type":"boolean"}},"additionalProperties":false},"inputPropertyConstraints":{"anyOf":[{"type":"object","properties":{"equal":{"type":["number","string","boolean","integer"]},"greater_than":{"type":["number","string","boolean","integer"]},"greater_or_equal":{"type":["number","string","boolean","integer"]},"less_than":{"type":["number","string","boolean","integer"]},"less_or_equal":{"type":["number","string","boolean","integer"]}}},{"valid_values":{"type":"array","items":{"type":["number","string","boolean","integer"]}}}]},"nodeTemplates":{"type":"object","patternProperties":{"":{"$ref":"#/definitions/nodeTemplate"}}},"nodeTemplate":{"type":"object","properties":{"type":{"type":"string","anyOf":[{"type":"string"},{"type":"string","enum":["cloudify.nodes.Root","cloudify.nodes.Tier","cloudify.nodes.Compute","cloudify.nodes.Container","cloudify.nodes.Network","cloudify.nodes.Subnet","cloudify.nodes.Router","cloudify.nodes.Port","cloudify.nodes.VirtualIP","cloudify.nodes.SecurityGroup","cloudify.nodes.LoadBalancer","cloudify.nodes.Volume","cloudify.nodes.FileSystem","cloudify.nodes.ObjectStorage","cloudify.nodes.SoftwareComponent","cloudify.nodes.WebServer","cloudify.nodes.ApplicationServer","cloudify.nodes.DBMS","cloudify.nodes.MessageBugServer","cloudify.nodes.ApplicationModule","cloudify.nodes.Component","cloudify.nodes.ServiceComponent","cloudify.nodes.SharedResource","cloudify.nodes.aws.dynamodb.Table","cloudify.nodes.aws.iam.Group","cloudify.nodes.aws.iam.AccessKey","cloudify.nodes.aws.iam.LoginProfile","cloudify.nodes.aws.iam.User","cloudify.nodes.aws.iam.Role","cloudify.nodes.aws.iam.RolePolicy","cloudify.nodes.aws.iam.InstanceProfile","cloudify.nodes.aws.iam.Policy","cloudify.nodes.aws.lambda.Function","cloudify.nodes.aws.lambda.Invoke","cloudify.nodes.aws.lambda.Permission","cloudify.nodes.aws.rds.Instance","cloudify.nodes.aws.rds.InstanceReadReplica","cloudify.nodes.aws.rds.SubnetGroup","cloudify.nodes.aws.rds.OptionGroup","cloudify.nodes.aws.rds.Option","cloudify.nodes.aws.rds.ParameterGroup","cloudify.nodes.aws.rds.Parameter","cloudify.nodes.aws.route53.HostedZone","cloudify.nodes.aws.route53.RecordSet","cloudify.nodes.aws.SQS.Queue","cloudify.nodes.aws.SNS.Topic","cloudify.nodes.aws.SNS.Subscription","cloudify.nodes.aws.elb.LoadBalancer","cloudify.nodes.aws.elb.Classic.LoadBalancer","cloudify.nodes.aws.elb.Classic.HealthCheck","cloudify.nodes.aws.elb.Listener","cloudify.nodes.aws.elb.Classic.Listener","cloudify.nodes.aws.elb.Rule","cloudify.nodes.aws.elb.TargetGroup","cloudify.nodes.aws.elb.Classic.Policy","cloudify.nodes.aws.elb.Classic.Policy.Stickiness","cloudify.nodes.aws.s3.BaseBucket","cloudify.nodes.aws.s3.BaseBucketObject","cloudify.nodes.aws.s3.Bucket","cloudify.nodes.aws.s3.BucketPolicy","cloudify.nodes.aws.s3.BucketLifecycleConfiguration","cloudify.nodes.aws.s3.BucketTagging","cloudify.nodes.aws.s3.BucketObject","cloudify.nodes.aws.ec2.BaseType","cloudify.nodes.aws.ec2.Vpc","cloudify.nodes.aws.ec2.VpcPeering","cloudify.nodes.aws.ec2.VpcPeeringRequest","cloudify.nodes.aws.ec2.VpcPeeringAcceptRequest","cloudify.nodes.aws.ec2.VpcPeeringRejectRequest","cloudify.nodes.aws.ec2.Subnet","cloudify.nodes.aws.ec2.SecurityGroup","cloudify.nodes.aws.ec2.SecurityGroupRuleIngress","cloudify.nodes.aws.ec2.SecurityGroupRuleEgress","cloudify.nodes.aws.ec2.NATGateway","cloudify.nodes.aws.ec2.Interface","cloudify.nodes.aws.ec2.Instances","cloudify.nodes.aws.ec2.Keypair","cloudify.nodes.aws.ec2.ElasticIP","cloudify.nodes.aws.ec2.NetworkACL","cloudify.nodes.aws.ec2.NetworkAclEntry","cloudify.nodes.aws.ec2.DHCPOptions","cloudify.nodes.aws.ec2.VPNGateway","cloudify.nodes.aws.ec2.VPNConnection","cloudify.nodes.aws.ec2.VPNConnectionRoute","cloudify.nodes.aws.ec2.CustomerGateway","cloudify.nodes.aws.ec2.InternetGateway","cloudify.nodes.aws.ec2.RouteTable","cloudify.nodes.aws.ec2.Route","cloudify.nodes.aws.ec2.Image","cloudify.nodes.aws.ec2.Tags","cloudify.nodes.aws.ec2.EBSVolume","cloudify.nodes.aws.ec2.EBSAttachment","cloudify.nodes.aws.autoscaling.Group","cloudify.nodes.aws.autoscaling.LaunchConfiguration","cloudify.nodes.aws.autoscaling.Policy","cloudify.nodes.aws.autoscaling.LifecycleHook","cloudify.nodes.aws.autoscaling.NotificationConfiguration","cloudify.nodes.aws.cloudwatch.Alarm","cloudify.nodes.aws.cloudwatch.Rule","cloudify.nodes.aws.cloudwatch.Event","cloudify.nodes.aws.cloudwatch.Target","cloudify.nodes.aws.efs.FileSystem","cloudify.nodes.aws.efs.MountTarget","cloudify.nodes.aws.efs.FileSystemTags","cloudify.nodes.aws.kms.CustomerMasterKey","cloudify.nodes.aws.kms.Alias","cloudify.nodes.aws.kms.Grant","cloudify.nodes.aws.CloudFormation.Stack","cloudify.nodes.aws.ecs.Cluster","cloudify.nodes.aws.ecs.Service","cloudify.nodes.aws.ecs.TaskDefinition","cloudify.nodes.swift.s3.Bucket","cloudify.nodes.swift.s3.BucketObject","cloudify.nodes.aws.eks.Cluster","cloudify.nodes.aws.eks.NodeGroup","cloudify.azure.nodes.storage.StorageAccount","cloudify.azure.nodes.storage.DataDisk","cloudify.azure.nodes.storage.FileShare","cloudify.azure.nodes.network.VirtualNetwork","cloudify.azure.nodes.network.NetworkSecurityGroup","cloudify.azure.nodes.network.NetworkSecurityRule","cloudify.azure.nodes.network.Subnet","cloudify.azure.nodes.network.RouteTable","cloudify.azure.nodes.network.Route","cloudify.azure.nodes.network.NetworkInterfaceCard","cloudify.azure.nodes.network.IPConfiguration","cloudify.azure.nodes.network.PublicIPAddress","cloudify.azure.nodes.compute.AvailabilitySet","cloudify.azure.nodes.compute.VirtualMachine","cloudify.azure.nodes.compute.WindowsVirtualMachine","cloudify.azure.nodes.compute.VirtualMachineExtension","cloudify.azure.nodes.network.LoadBalancer","cloudify.azure.nodes.network.LoadBalancer.BackendAddressPool","cloudify.azure.nodes.network.LoadBalancer.Probe","cloudify.azure.nodes.network.LoadBalancer.IncomingNATRule","cloudify.azure.nodes.network.LoadBalancer.Rule","cloudify.azure.Deployment","cloudify.azure.nodes.compute.ContainerService","cloudify.azure.nodes.Plan","cloudify.azure.nodes.WebApp","cloudify.azure.nodes.PublishingUser","cloudify.azure.nodes.compute.ManagedCluster","cloudify.gcp.project","cloudify.gcp.nodes.Instance","cloudify.gcp.nodes.InstanceGroup","cloudify.gcp.nodes.Volume","cloudify.gcp.nodes.Snapshot","cloudify.gcp.nodes.Network","cloudify.gcp.nodes.SubNetwork","cloudify.gcp.nodes.VPCNetworkPeering","cloudify.gcp.nodes.Route","cloudify.gcp.nodes.FirewallRule","cloudify.gcp.nodes.SecurityGroup","cloudify.gcp.nodes.Access","cloudify.gcp.nodes.KeyPair","cloudify.gcp.nodes.ExternalIP","cloudify.gcp.nodes.GlobalAddress","cloudify.gcp.nodes.StaticIP","cloudify.gcp.nodes.Address","cloudify.gcp.nodes.Image","cloudify.gcp.nodes.HealthCheck","cloudify.gcp.nodes.BackendService","cloudify.gcp.nodes.RegionBackendService","cloudify.gcp.nodes.UrlMap","cloudify.gcp.nodes.TargetProxy","cloudify.gcp.nodes.SslCertificate","cloudify.gcp.nodes.ForwardingRule","cloudify.gcp.nodes.GlobalForwardingRule","cloudify.gcp.nodes.DNSZone","cloudify.gcp.nodes.DNSRecord","cloudify.gcp.nodes.DNSAAAARecord","cloudify.gcp.nodes.DNSMXRecord","cloudify.gcp.nodes.DNSNSRecord","cloudify.gcp.nodes.DNSTXTRecord","cloudify.gcp.nodes.KubernetesCluster","cloudify.gcp.nodes.KubernetesNodePool","cloudify.gcp.nodes.KubernetesClusterMonitoring","cloudify.gcp.nodes.KubernetesClusterlegacyAbac","cloudify.gcp.nodes.KubernetesClusterNetworkPolicy","cloudify.gcp.nodes.Topic","cloudify.gcp.nodes.TopicPolicy","cloudify.gcp.nodes.TopicMessage","cloudify.gcp.nodes.Subscription","cloudify.gcp.nodes.SubscriptionPolicy","cloudify.gcp.nodes.Acknowledge","cloudify.gcp.nodes.PullRequest","cloudify.gcp.nodes.StackDriverGroup","cloudify.gcp.nodes.StackDriverTimeSeries","cloudify.gcp.nodes.StackDriverUpTimeCheckConfig","cloudify.gcp.nodes.LoggingSink","cloudify.gcp.nodes.LoggingExclusion","cloudify.gcp.nodes.Logging.BillingAccounts.sinks","cloudify.gcp.nodes.Logging.Folders.sinks","cloudify.gcp.nodes.Logging.Organizations.sinks","cloudify.gcp.nodes.Logging.Projects.sinks","cloudify.gcp.nodes.Logging.BillingAccounts.exclusions","cloudify.gcp.nodes.Logging.Folders.exclusions","cloudify.gcp.nodes.Logging.Organizatios.exclusions","cloudify.gcp.nodes.Logging.Projects.exclusions","cloudify.gcp.nodes.Logging.Projects.metrics","cloudify.kubernetes.resources.StatefulSet","cloudify.nodes.helm.Binary","cloudify.nodes.helm.Release","cloudify.nodes.helm.Repo"]}]},"properties":{"type":"object"},"instances":{"type":"object"},"interfaces":{"$ref":"#/definitions/nodeTemplateInterfaces"},"relationships":{"$ref":"#/definitions/nodeTemplateRelationships"},"capabilities":{"type":"object"}},"allOf":[{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.Vpc"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2VPC"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.InternetGateway"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSInternetGateway"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.Subnet"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2Subnet"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.RouteTable"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2RouteTable"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.Route"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2Route"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.ElasticIP"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2ElasticIP"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.NATGateway"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2NATGateway"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.SecurityGroup"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2SecurityGroup"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.SecurityGroupRuleIngress"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2SecurityGroupRuleIngress"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.Interface"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2Interface"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.Image"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2Image"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.Instances"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2Instances"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.EBSVolume"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2EBSVolume"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.aws.ec2.EBSAttachment"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAWSEC2EBSAttachment"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.docker.images"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeDockerImagesProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeDockerImagesInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.docker.containers"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeDockerContainersProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeDockerContainersInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.docker.host"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeDockerHostProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeDockerHostInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.docker.host_details"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeDockerHostDetailsProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeDockerHostDetailsInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.docker.image"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeDockerImageProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeDockerImageInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.docker.container"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeDockerContainerProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeDockerContainerInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.docker.container_files"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeDockerContainerFilesProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeDockerContainerFilesInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.docker.ansible_playbook"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeDockerAnsiblePlaybookProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeDockerAnsiblePlaybookInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.docker.terraform_module"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeDockerTerraformModuleProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeDockerTerraformModuleInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.nodes.Master"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesNodesMasterProperties"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.ResourceBase"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesResourceBase"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.ResourceWithValidateStatus"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesResourceWithValidateStatus"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.BlueprintDefinedResource"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.ClusterRoleBinding"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesClusterRoleBindingProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.RoleBinding"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesRoleBinding"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.Role"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesRoleProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.ClusterRole"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesClusterRoleProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.Secret"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesSecretProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.ServiceAccount"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesServiceAccountProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.Deployment"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesDeploymentProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.Node"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesNodeProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.Namespace"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesNamespaceProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.Pod"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesPodProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.ReplicaSet"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesReplicaSetProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.ReplicationController"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesReplicationControllerProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.DaemonSet"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesDaemonSetProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.CustomResourceDefinition"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesCustomResourceDefinitionProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.Service"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesServiceProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.PersistentVolume"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesPersistentVolumeProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.ConfigMap"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesConfigMapProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.StorageClass"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesStorageClassProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.StatefulSet"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesStatefulSetProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.PodSecurityPolicy"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesPodSecurityPolicyProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.NetworkPolicy"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesNetworkPolicyroperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.Ingress"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesIngressProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.PersistentVolumeClaim"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesPersistentVolumeClaimProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.CustomBlueprintDefinedResource"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesCustomBlueprintDefinedResourceProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesCustomBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.CustomBlueprintDefinedResource"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesCustomBlueprintDefinedResourceProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesCustomBlueprintDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.FileDefinedResource"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesFileDefinedResourceProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesFileDefinedResourceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.kubernetes.resources.MultipleFileDefinedResources"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeKubernetesResourcesMultipleFileDefinedResourcesProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeKubernetesResourcesMultipleFileDefinedResourcesInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.terraform"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeTerraformProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeTerraformInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.terraform.Module"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeTerraformModuleProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeTerraformModuleInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.terraform.Module"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeTerraformModuleProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeTerraformModuleInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.ansible.Executor"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeAnsibleExecutorProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeAnsibleExecutorInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.NetworkBase"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackNetworkBaseProperties"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.Network"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackNetworkProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackNetworkInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.Subnet"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackSubnetProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackSubnetInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.Port"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackPortProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackPortInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.Router"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackRouterProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackRouterInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.FloatingIP"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackFloatingIPProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackFloatingIPInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.SecurityGroup"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackSecurityGroupProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackSecurityGroupInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.SecurityGroupRule"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackSecurityGroupRuleProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackSecurityGroupRuleInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.RBACPolicy"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackRBACPolicyProperties"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.Server"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackServerProperties"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.WindowsServer"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackWindowsServerProperties"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.KeyPair"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackKeyPairProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackKeyPairInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.HostAggregate"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackHostAggregateProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackHostAggregateInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.Image"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackImageProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackImageInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.Flavor"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackFlavorProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackFlavorInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.User"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackUserProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackUserInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.Group"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackGroupProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackGroupInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.Role"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackRoleProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackRoleInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.Project"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackProjectProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackProjectInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.Volume"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackVolumeProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackVolumeInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.VolumeType"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackVolumeTypeProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackVolumeTypeInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.Zone"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackZoneProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackZoneInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.openstack.RecordSet"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeOpenstackRecordSetProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeOpenstackRecordSetInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.DeploymentProxy"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyNodesDeploymentProxyProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyNodesDeploymentProxyInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.NodeInstanceProxy"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyNodesNodeInstanceProxyProperties"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.CloudInit.CloudConfig"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyNodesCloudInitCloudConfigProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyNodesCloudInitCloudConfigInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.keys.nodes.RSAKey"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyNodesRSAKeyProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyNodesRSAKeyInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.terminal.raw"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyTerminalRawProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyTerminalRawInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.File"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyNodesFileProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyNodesFileInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.ftp"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyNodesFTPProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyNodesFTPInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.rest.Requests"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyRestRequestsProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyRestRequestsInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.rest.BunchRequests"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyRestBunchRequestsProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyRestBunchRequestsInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.secrets.Writer"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyNodesSecretsWriterProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyNodesSecretsWriterInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.secrets.Reader"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyNodesSecretsReaderProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyNodesSecretsReaderInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.ResourceGroup"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesResourceGroupProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesResourceGroupInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.storage.StorageAccount"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesStorageStorageAccountProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesStorageStorageAccountInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.storage.DataDisk"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesStorageDataDiskProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesStorageDataDisktInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.storage.FileShare"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesStorageFileShareProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesStorageFileShareInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.VirtualNetwork"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkVirtualNetworkProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkVirtualNetworkInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.NetworkSecurityGroup"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkNetworkSecurityGroupProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkNetworkSecurityGroupInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.NetworkSecurityRule"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkNetworkSecurityRuleProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkNetworkSecurityRuleInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.Subnet"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkSubnetProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkSubnetInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.RouteTable"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkRouteTableProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkRouteTableInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.Route"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkRouteProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkRouteInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.NetworkInterfaceCard"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkNetworkInterfaceCardProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkNetworkInterfaceCardInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.IPConfiguration"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkIPConfigurationProperties"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.PublicIPAddress"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkPublicIPAddressProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkPublicIPAddressInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.compute.AvailabilitySet"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeAvailabilitySetProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeAvailabilitySetInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.compute.VirtualMachine"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeVirtualMachineProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeVirtualMachineInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.compute.WindowsVirtualMachine"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeWindowsVirtualMachineProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeWindowsVirtualMachineInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.compute.VirtualMachineExtension"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeVirtualMachineExtensionProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeVirtualMachineExtensionInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.LoadBalancer"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkLoadBalancerProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkLoadBalancerInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.LoadBalancer.BackendAddressPool"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkLoadBalancerBackendAddressPoolProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkLoadBalancerBackendAddressPoolInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.LoadBalancer.Probe"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkLoadBalancerProbeProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkLoadBalancerProbeInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.LoadBalancer.IncomingNATRule"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkLoadBalancerIncomingNATRuleProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkLoadBalancerIncomingNATRuleInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.network.LoadBalancer.Rule"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkLoadBalancerRuleProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesNetworkLoadBalancerRuleInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.Deployment"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureDeploymentProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureDeploymentInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.compute.ContainerService"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeContainerServiceProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeContainerServiceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.Plan"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesPlanProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesPlanInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.WebApp"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesWebAppProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesWebAppInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.PublishingUser"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesPublishingUserProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesPublishingUserInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.azure.nodes.compute.ManagedCluster"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeManagedClusterProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeManagedClusterInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.gcp.project"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyGCPProjectProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyGCPProjectInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.gcp.nodes.Instance"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeCloudifyGCPNodesInstanceProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeCloudifyGCPNodesInstanceInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.helm.Binary"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeHelmBinaryProperties"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.helm.Release"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeHelmReleaseProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeHelmReleaseInterfaces"}}}},{"if":{"properties":{"type":{"const":"cloudify.nodes.helm.Repo"}}},"then":{"properties":{"properties":{"$ref":"#/definitions/nodeTypeHelmRepoProperties"},"interfaces":{"$ref":"#/definitions/nodeTypeHelmRepoInterfaces"}}}}],"required":["type"],"additionalProperties":false},"gcpExternalResource":{"type":"object","properties":{"use_external_resource":{"type":"boolean","default":false}}},"gcpResourceId":{"type":"object","properties":{"resource_id":{"type":"string"}}},"nodeTypeCloudifyGCPProjectProperties":{"type":"object","allOf":[{"$ref":"#/definitions/gcpExternalResource"},{"$ref":"#/definitions/gcpResourceId"},{"properties":{"gcp_config":{"type":"object"},"name":{"type":"string"}}}]},"nodeTypeCloudifyGCPProjectInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["gcp_plugin.cloudify_gcp.admin.projects.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["gcp_plugin.cloudify_gcp.admin.projects.delete"]}}}}}}},"nodeTypeCloudifyGCPNodesInstanceProperties":{"type":"object","allOf":[{"$ref":"#/definitions/gcpExternalResource"},{"$ref":"#/definitions/gcpResourceId"},{"properties":{"gcp_config":{"type":"object"},"use_public_ip":{"type":"boolean","default":false},"image_id":{"type":"string"},"instance_type":{"type":"string","default":"n1-standard-1"},"name":{"type":"string"},"zone":{"type":"string"},"tags":{"type":"string"},"block_project_ssh_keys":{"type":"boolean","default":false},"can_ip_forward":{"type":"boolean","default":false},"scopes":{"type":"array","items":{"type":"string"}},"startup_script":{"type":"string"},"external_ip":{"type":"boolean","default":false},"additional_settings":{"type":"object"}}}]},"nodeTypeCloudifyGCPNodesInstanceInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"configure":{"type":"object","properties":{"implementation":{"type":"string","enum":["gcp_plugin.cloudify_gcp.compute.instance.create"]},"inputs":{"type":"object","properties":{"startup_script":{"type":"string","default":{"get_property":["SELF","startup_script"]}},"external_ip":{"type":"boolean","default":{"get_property":["SELF","external_ip"]}},"instance_type":{"type":"string","default":{"get_property":["SELF","instance_type"]}},"image_id":{"type":"string","default":{"get_property":["SELF","image_id"]}},"name":{"type":"string","default":{"get_property":["SELF","name"]}},"zone":{"type":"string","default":{"get_property":["SELF","zone"]}},"scopes":{"type":"array","items":{"type":"string"},"default":{"get_property":["SELF","scopes"]}},"tags":{"type":"string","default":{"get_property":["SELF","tags"]}},"can_ip_forward":{"type":"boolean","default":{"get_property":["SELF","can_ip_forward"]}},"additional_settings":{"type":"object","default":{"get_property":["SELF","additional_settings"]}}}}}},"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["gcp_plugin.cloudify_gcp.compute.instance.start"]},"inputs":{"type":"object","properties":{"name":{"type":"string","default":{"get_attribute":["SELF","name"]}}}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["gcp_plugin.cloudify_gcp.compute.instance.delete"]},"inputs":{"type":"object","properties":{"name":{"type":"string","default":{"get_attribute":["SELF","name"]}},"zone":{"type":"string","default":{"get_attribute":["SELF","zone"]}}}}}}}}}},"cloudifyDatatypesAzureConfig":{"type":"object","properties":{"endpoints_active_directory":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"https://login.microsoftonline.com"},"endpoints_resource_manager":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"https://management.azure.com"},"endpoint_resource":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"https://management.core.windows.net/"},"endpoint_verify":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true},"subscription_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tenant_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"client_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"client_secret":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"scale_name_separator":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"_"},"scale_name_suffix_chars":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"1234567890"},"certificate":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"thumbprint":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"cloud_environment":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"cloudifyDatatypesAzureStorageStorageAccountConfig":{"type":"object","properties":{"accountType":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"networkAcls":{"type":"object"},"supportsHttpsTrafficOnly":{"type":"object"},"encryption":{"type":"object"},"keySource":{"type":"object"}}},"cloudifyDatatypesAzureStorageDataDiskConfig":{"type":"object","properties":{"container_name":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"vhds"},"size":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":20},"force_delete":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false}},"required":["size"]},"cloudifyDatatypesAzureNetworkVirtualNetworkConfig":{"type":"string","properties":{"addressSpace":{"type":"object"},"dhcpOptions":{"type":"object"},"subnets":{"type":"object"}},"required":["addressSpace"]},"cloudifyDatatypesAzureNetworkNetworkSecurityRuleConfig":{"type":"object","properties":{"description":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"protocol":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"sourcePortRange":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"destinationPortRange":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"sourceAddressPrefix":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"destinationAddressPrefix":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"access":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"priority":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"direction":{"$ref":"#/definitions/cloudifyStringOrGetInput"}},"required":["protocol","sourceAddressPrefix","destinationAddressPrefix","access","priority","direction"]},"cloudifyDatatypesAzureNetworkNetworkSecurityGroupConfig":{"type":"object","properties":{"securityRules":{"type":"object"}}},"cloudifyDatatypesAzureNetworkSubnetConfig":{"type":"object","properties":{"addressPrefix":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"networkSecurityGroup":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"routeTable":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"}}},"cloudifyDatatypesAzureNetworkRouteTableConfig":{"type":"object","properties":{"routes":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"cloudifyDatatypesAzureNetworkIPConfigurationConfig":{"type":"object","properties":{"privateIPAddress":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"privateIPAllocationMethod":{"$ref":"#/definitions/cloudifyStringOrGetInput"}},"required":["privateIPAllocationMethod"]},"cloudifyDatatypesAzureNetworkPublicIPAddressConfig":{"type":"object","properties":{"publicIPAllocationMethod":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"idleTimeoutInMinutes":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"domainNameLabel":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"reverseFqdn":{"$ref":"#/definitions/cloudifyStringOrGetInput"}},"required":["publicIPAllocationMethod"]},"cloudifyDatatypesAzureComputeAvailabilitySetConfig":{"type":"object","properties":{"platformUpdateDomainCount":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"platformFaultDomainCount":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"sku":{"type":"object"}}},"cloudifyDatatypesAzureComputeVirtualMachineConfig":{"type":"object","properties":{"hardwareProfile":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"storageProfile":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"osProfile":{"type":"object"},"spot_instance":{"$ref":"#/definitions/cloudifyDatatypesAzureComputeVirtualMachineSpotConfig"}}},"cloudifyDatatypesAzureComputeVirtualMachineSpotConfig":{"type":"object","properties":{"is_spot_instance":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"priority":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"Spot"},"eviction_policy":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"Deallocate"},"billing_profile":{"type":"object"}}},"cloudifyDatatypesAzureNetworkLoadBalancerProbeConfig":{"type":"object","properties":{"protocol":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"Tcp"},"port":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"requestPath":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"intervalInSeconds":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":5},"numberOfProbes":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":16}},"required":["port","intervalInSeconds","numberOfProbes"]},"cloudifyDatatypesAzureNetworkLoadBalancerIncomingNATRuleConfig":{"type":"object","properties":{"protocol":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"Tcp"},"frontendPort":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"backendPort":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"}},"required":["protocol","frontendPort","backendPort"]},"cloudifyDatatypesAzureNetworkLoadBalancerRuleConfig":{"type":"object","properties":{"protocol":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"Tcp"},"frontendPort":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"backendPort":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"enableFloatingIP":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"idleTimeoutInMinutes":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":5},"loadDistribution":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"Default"}},"required":["protocol","frontendPort","backendPort"]},"cloudifyDatatypesAzureComputeManagedClusterConfig":{"type":"object","properties":{"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"kubernetes_version":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"dns_prefix":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"agent_pool_profiles":{"type":"array","items":{"type":"string"}},"linux_profile":{"type":"object"},"network_profile":{"type":"object"},"windows_profile":{"type":"object"},"service_principal_profile":{"type":"object"},"addon_profiles":{"type":"object"},"enable_rbac":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true}}},"cloudifyDatatypesAzureStorageFileShareConfig":{"type":"object","properties":{"metadata":{"type":"object"},"quota":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"fail_on_exist":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false}}},"cloudifyDatatypesAzureNetworkLoadBalancerConfig":{"type":"object","properties":{"frontendIPConfigurations":{"type":"array","items":{"type":"string"}},"backendAddressPools":{"type":"array","items":{"type":"string"}},"loadBalancingRules":{"type":"array","items":{"type":"string"}},"probes":{"type":"array","items":{"type":"string"}},"inboundNatRules":{"type":"array","items":{"type":"string"}}}},"cloudifyDatatypesAzureNetworkRouteConfig":{"type":"object","properties":{"addressPrefix":{"type":"string"},"nextHopType":{"type":"string"},"nextHopIpAddress":{"type":"string"}},"required":["nextHopType","addressPrefix"]},"cloudifyDatatypesAzureNetworkNetworkInterfaceCardConfig":{"type":"object","properties":{"networkSecurityGroups":{"type":"array","items":{"type":"string"}},"ipConfigurations":{"type":"array","items":{"type":"string"}},"dnsSettings":{"type":"array","items":{"type":"string"}}}},"nodeTypeCloudifyAzureNodesResourceGroupProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2017-05-10"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":"false"},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}}},"nodeTypeCloudifyAzureNodesResourceGroupInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.resourcegroup.create"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.resourcegroup.delete"]}}}}},"nodeTypeCloudifyAzureNodesStorageStorageAccountProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2015-06-15"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"sku":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureStorageStorageAccountConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":"false"},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["resource_config"]},"nodeTypeCloudifyAzureNodesStorageStorageAccountInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.storage.storageaccount.create"]}},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.storage.storageaccount.delete"]}}}},"nodeTypeCloudifyAzureNodesStorageDataDiskProperties":{"type":"object","properties":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureStorageDataDiskConfig"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesStorageDataDisktInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.storage.disk.create_data_disk"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.storage.disk.delete_data_disk"]}}}}},"nodeTypeCloudifyAzureNodesStorageFileShareProperties":{"type":"object","properties":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureStorageFileShareConfig"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesStorageFileShareInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.storage.file.create_file_share"]}}}},"nodeTypeCloudifyAzureNodesNetworkVirtualNetworkProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkVirtualNetworkConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":"false"},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesNetworkVirtualNetworkInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.virtualnetwork.create"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.network.virtualnetwork.delete"]}}}}},"nodeTypeCloudifyAzureNodesNetworkNetworkSecurityGroupProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkNetworkSecurityGroupConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesNetworkNetworkSecurityGroupInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.networksecuritygroup.create"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.network.networksecuritygroup.delete"]}}}}},"nodeTypeCloudifyAzureNodesNetworkNetworkSecurityRuleProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"network_security_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkNetworkSecurityRuleConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesNetworkNetworkSecurityRuleInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.networksecurityrule.create"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.network.networksecurityrule.delete"]}}}}},"nodeTypeCloudifyAzureNodesNetworkSubnetProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"virtual_network_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkSubnetConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesNetworkSubnetInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.subnet.create"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.network.subnet.delete"]}}}},"nodeTypeCloudifyAzureNodesNetworkRouteTableProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location:":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkRouteTableConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesNetworkRouteTableInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.routetable.create"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.network.routetable.delete"]}}}}},"nodeTypeCloudifyAzureNodesNetworkRouteProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"route_table_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkRouteConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesNetworkRouteInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.route.create"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.network.route.delete"]}}}}},"nodeTypeCloudifyAzureNodesNetworkNetworkInterfaceCardProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"primary":{"default":false},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkNetworkInterfaceCardConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}}},"nodeTypeCloudifyAzureNodesNetworkNetworkInterfaceCardInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.networkinterfacecard.create"]},"configure":{"type":"string","enum":["azure.cloudify_azure.resources.network.networkinterfacecard.configure"]},"start":{"type":"string","enum":["azure.cloudify_azure.resources.network.networkinterfacecard.start"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.network.networkinterfacecard.delete"]}}}}},"nodeTypeCloudifyAzureNodesNetworkIPConfigurationProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkIPConfigurationConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["resource_config"]},"nodeTypeCloudifyAzureNodesNetworkPublicIPAddressProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkPublicIPAddressConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesNetworkPublicIPAddressInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.publicipaddress.create"]},"start":{"type":"string","enum":["azure.cloudify_azure.resources.network.publicipaddress.start"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.network.publicipaddress.delete"]}}}}},"nodeTypeCloudifyAzureNodesComputeAvailabilitySetProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-03-30"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureComputeAvailabilitySetConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["resource_config","use_external_resource"]},"nodeTypeCloudifyAzureNodesComputeAvailabilitySetInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.compute.availabilityset.create"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.compute.availabilityset.delete"]}}}}},"nodeTypeCloudifyAzureNodesComputeVirtualMachineProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-03-30"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"use_public_ip":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"plan":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureComputeVirtualMachineConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"ip":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"os_family":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"linux"},"agent_config":{"$ref":"#/definitions/cloudifyDataTypesAgentConfig","type":"object"},"storage_endpoint":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"core.windows.net"}},"required":["use_external_resource","resource_config"]},"nodeTypeCloudifyAzureNodesComputeVirtualMachineInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"configure":{"type":"object","properties":{"implementation":{"type":"string","enum":["azure.cloudify_azure.resources.compute.virtualmachine.configure"]},"inputs":{"type":"object","properties":{"command_to_execute":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"file_uris":{"type":"array","items":{"type":"string"}}}}}}}}}},"nodeTypeCloudifyAzureNodesComputeWindowsVirtualMachineProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeCloudifyAzureNodesComputeWindowsVirtualMachineProperties"},{"properties":{"os_family":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"windows"},"agent_config":{"type":"object"}}}]},"nodeTypeCloudifyAzureNodesComputeWindowsVirtualMachineInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"configure":{"type":"object","properties":{"implementation":{"type":"string","enum":["azure.cloudify_azure.resources.compute.virtualmachine.configure"]},"inputs":{"type":"object","properties":{"command_to_execute":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"file_uris":{"type":"array","items":{"type":"string"}}}}}}}}}},"nodeTypeCloudifyAzureNodesComputeVirtualMachineExtensionProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-03-30"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"virtual_machine_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesComputeVirtualMachineExtensionInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create:":{"type":"object","properties":{"implementation":{"type":"string","enum":["azure.cloudify_azure.resources.compute.virtualmachineextension.create"]},"inputs":{"type":"object","properties":{"resource_config":{"type":"object"}}}}},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.compute.virtualmachineextension.delete"]}}}}},"nodeTypeCloudifyAzureNodesNetworkLoadBalancerProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkLoadBalancerConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesNetworkLoadBalancerInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.loadbalancer.create"]},"configure":{"type":"string","enum":["azure.cloudify_azure.resources.network.loadbalancer.configure"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.network.loadbalancer.delete"]}}}}},"nodeTypeCloudifyAzureNodesNetworkLoadBalancerBackendAddressPoolProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"load_balancer_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesNetworkLoadBalancerBackendAddressPoolInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.loadbalancer.create_backend_pool"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.network.loadbalancer.delete_backend_pool"]}}}}},"nodeTypeCloudifyAzureNodesNetworkLoadBalancerProbeProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"load_balancer_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkLoadBalancerProbeConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesNetworkLoadBalancerProbeInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.loadbalancer.create_probe"]},"delete":{"type":"object","enum":["azure.cloudify_azure.resources.network.loadbalancer.delete_probe"]}}}}},"nodeTypeCloudifyAzureNodesNetworkLoadBalancerIncomingNATRuleProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"load_balancer_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkLoadBalancerIncomingNATRuleConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesNetworkLoadBalancerIncomingNATRuleInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.loadbalancer.create_incoming_nat_rule"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.network.loadbalancer.delete_incoming_nat_rule"]}}}}},"nodeTypeCloudifyAzureNodesNetworkLoadBalancerRuleProperties":{"type":"object","properties":{"api_version":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"2016-09-01"},"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"load_balancer_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureNetworkLoadBalancerRuleConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_after":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["use_external_resource"]},"nodeTypeCloudifyAzureNodesNetworkLoadBalancerRuleInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.network.loadbalancer.create_rule"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.network.loadbalancer.delete_rule"]}}}}},"nodeTypeCloudifyAzureDeploymentProperties":{"type":"object","properties":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"location":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"template_file":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"template":{"anyOf":[{"$ref":"#/definitions/cloudifyStringOrGetInput"},{"type":"object"}]},"params":{"type":"object"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false}},"required":["name","location","use_external_resource"]},"nodeTypeCloudifyAzureDeploymentInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"string","enum":["azure.cloudify_azure.resources.deployment.create"]},"delete":{"type":"string","enum":["azure.cloudify_azure.resources.deployment.delete"]}}}}},"nodeTypeCloudifyAzureNodesComputeContainerServiceProperties":{"type":"object","properties":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"container_service_config":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["name","resource_group"]},"nodeTypeCloudifyAzureNodesComputeContainerServiceInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["azure.cloudify_azure.resources.compute.container_service.create"]},"inputs":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"container_service_config":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}}}},"delete":{"type":"string","properties":{"implementation":{"type":"string","enum":["azure.cloudify_azure.resources.compute.container_service.delete"]}}}}}}},"nodeTypeCloudifyAzureNodesPlanProperties":{"type":"object","properties":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"sku":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"use_external_resource":{"type":"boolean","default":false}},"required":["name","resource_group","use_external_resource"]},"nodeTypeCloudifyAzureNodesPlanInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["azure.cloudify_azure.resources.app_service.plan.create"]},"inputs":{"type":"object","properties":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"sku":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["azure.cloudify_azure.resources.app_service.plan.delete"]}}}}}}},"nodeTypeCloudifyAzureNodesWebAppProperties":{"type":"object","properties":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"app_config":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["name","resource_group"]},"nodeTypeCloudifyAzureNodesWebAppInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["azure.cloudify_azure.resources.app_service.webapp.create"]},"inputs":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_group":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"app_config":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["azure.cloudify_azure.resources.app_service.webapp.delete"]}}}}}}},"nodeTypeCloudifyAzureNodesPublishingUserProperties":{"type":"object","properties":{"user_details":{"type":"object"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["user_details"]},"nodeTypeCloudifyAzureNodesPublishingUserInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["azure.cloudify_azure.resources.app_service.publishing_user.set_user"]},"inputs":{"type":"object","properties":{"user_details":{"type":"object"},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}}}}}}}}},"nodeTypeCloudifyAzureNodesComputeManagedClusterProperties":{"type":"object","properties":{"resource_group":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"cluster_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureComputeManagedClusterConfig"},"store_kube_config_in_runtime":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig"}},"required":["resource_group","cluster_name","resource_config","store_kube_config_in_runtime"]},"nodeTypeCloudifyAzureNodesComputeManagedClusterInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["azure.cloudify_azure.resources.compute.managed_cluster.create"]},"inputs":{"type":"object","properties":{"resource_group":{"type":"string","default":{"get_property":["SELF","resource_group"]}},"cluster_name":{"type":"string","default":{"get_property":["SELF","cluster_name"]}},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesAzureComputeManagedClusterConfig","default":{"get_property":["SELF","resource_config"]}},"azure_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig","default":{"get_property":["SELF","azure_config"]}},"client_config":{"$ref":"#/definitions/cloudifyDatatypesAzureConfig","default":{"get_property":["SELF","client_config"]}}}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["azure.cloudify_azure.resources.compute.managed_cluster.delete"]}}}}}}},"cloudifyDatatypesBlueprint":{"type":"object","properties":{"external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"id":{},"main_file_name":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"blueprint.yaml"},"blueprint_archive":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"cloudifyDatatypesDeployment":{"type":"object","properties":{"external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"inputs":{"type":"object"},"outputs":{"type":"object"},"all_outputs":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true},"logs":{"type":"object"}}},"cloudifyDatatypesDeploymentProxy":{"type":"object","properties":{"blueprint":{"$ref":"#/definitions/cloudifyDatatypesBlueprint"},"deployment":{"$ref":"#/definitions/cloudifyDatatypesDeployment"},"executions_start_args":{"type":"object"},"reexecute":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false}},"required":["blueprint","deployment"]},"cloudifyDatatypesNode":{"type":"object","properties":{"id":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"cloudifyDatatypesNodeInstance":{"type":"object","properties":{"node":{"$ref":"#/definitions/cloudifyDatatypesNode"},"id":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"cloudifyDatatypesNodeInstanceProxy":{"type":"object","properties":{"blueprint":{"$ref":"#/definitions/cloudifyDatatypesBlueprint"},"deployment":{"$ref":"#/definitions/cloudifyDatatypesDeployment"},"executions_start_args":{"type":"object"},"reexecute":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"node_instance":{"$ref":"#/definitions/cloudifyDatatypesNodeInstance"}},"required":["blueprint","deployment"]},"cloudifyDatatypesKey":{"type":"object","properties":{"private_key_path":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"public_key_path":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"~/.ssh/id_rsa.pub"},"key_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"algorithm":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"RSA"},"bits":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":2048},"comment":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"passphrase":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"openssh_format":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"},"unvalidated":{}}},"cloudifyDatatypesTerminalAuth":{"type":"object","properties":{"user":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"password":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"ip":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"key_content":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"port":{"default":22,"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"store_logs":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"promt_check":{"type":"array","items":{"type":"string"}},"warnings":{"type":"array","items":{"type":"string"}},"errors":{"type":"array","items":{"type":"string"}},"criticals":{"type":"array","items":{"type":"string"}},"exit_command":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"exit"},"smart_device":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false}}},"cloudifyDatatypesFile":{"type":"object","properties":{"resource_path":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"file_path":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"owner":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"mode":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"template_variables":{"type":"object"},"use_sudo":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"allow_failure":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false}},"required":["resource_path","file_path","owner","mode"]},"cloudifyDatatypesFtpAuth":{"type":"object","properties":{"user":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"password":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"ip":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"port":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":21},"ignore_host":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"tls":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false}}},"nodeTypeCloudifyNodesDeploymentProxyProperties":{"type":"object","properties":{"resource_config":{"$ref":"#/definitions/cloudifyDatatypesDeploymentProxy"},"client":{"type":"object","properties":{"host":{"type":"string","default":"127.0.0.1"},"username":{"type":"string","default":"admin"},"password":{"type":"string","default":"admin"},"tenant":{"type":"string","default":"default_tenant"}}},"plugins":{"type":"array","items":{"type":"string"}},"secrets":{"type":"object"}}},"nodeTypeCloudifyNodesDeploymentProxyInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["cfy_util.cloudify_deployment_proxy.tasks.upload_blueprint"]}}},"configure":{"type":"object","properties":{"implementation":{"type":"object","enum":["cfy_util.cloudify_deployment_proxy.tasks.create_deployment"]}}},"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["cfy_util.cloudify_deployment_proxy.tasks.execute_start"]},"inputs":{"type":"object","properties":{"workflow_id":{"type":"string","default":"install"},"timeout":{"type":"integer","default":1800},"interval":{"type":"integer","default":10}}}}},"stop":{"type":"object","properties":{"implementation":{"type":"string","enum":["cfy_util.cloudify_deployment_proxy.tasks.execute_start"]},"inputs":{"type":"object","properties":{"workflow_id":{"type":"string","default":"uninstall"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesDeploymentProxy"}}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["cfy_util.cloudify_deployment_proxy.tasks.delete_deployment"]}}}}}}},"nodeTypeCloudifyNodesNodeInstanceProxyProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeCloudifyNodesDeploymentProxyProperties"},{"properties":{"resource_config":{"$ref":"#/definitions/cloudifyDatatypesNodeInstanceProxy"}}}]},"nodeTypeCloudifyNodesCloudInitCloudConfigProperties":{"type":"object","properties":{"header":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"#cloud-config"},"encode_base64":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":"false"},"resource_config":{"type":"object"}}},"nodeTypeCloudifyNodesCloudInitCloudConfigInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["cloudinit.cloudify_cloudinit.tasks.update"]}}},"configure":{"type":"object","properties":{"implementation":{"type":"string","enum":["cloudinit.cloudify_cloudinit.tasks.update"]}}},"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["cloudinit.cloudify_cloudinit.tasks.update"]}}},"stop":{"type":"object","properties":{"implementation":{"type":"string","enum":["cloudinit.cloudify_cloudinit.tasks.update"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["cloudinit.cloudify_cloudinit.tasks.delete"]}}}}}}},"nodeTypeCloudifyNodesRSAKeyProperties":{"type":"object","properties":{"use_secret_store":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true},"use_secrets_if_exist":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"key_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesKey"}}},"nodeTypeCloudifyNodesRSAKeyInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["keys.cloudify_ssh_key.operations.create"]},"inputs":{"store_public_key_material":{"type":"boolean","default":true},"store_private_key_material":{"type":"boolean","default":false}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["keys.cloudify_ssh_key.operations.delete"]}}}}}}},"nodeTypeCloudifyTerminalRawProperties":{"type":"object","properties":{"terminal_auth":{"$ref":"#/definitions/cloudifyDatatypesTerminalAuth"}}},"nodeTypeCloudifyTerminalRawInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["terminal.cloudify_terminal.tasks.run"]},"inputs":{"type":"object"}}},"configure":{"type":"object","properties":{"implementation":{"type":"string","enum":["terminal.cloudify_terminal.tasks.run"]},"inputs":{"type":"object"}}},"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["terminal.cloudify_terminal.tasks.run"]},"inputs":{"type":"object"}}},"stop":{"type":"object","properties":{"implementation":{"type":"string","enum":["terminal.cloudify_terminal.tasks.run"]},"inputs":{"type":"object"}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["terminal.cloudify_terminal.tasks.run"]},"inputs":{"type":"object"}}}}}}},"nodeTypeCloudifyNodesFileProperties":{"type":"object","properties":{"resource_config":{"$ref":"#/definitions/cloudifyDatatypesFile"}},"required":["resource_config"]},"nodeTypeCloudifyNodesFileInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["cfy_files.cloudify_files.tasks.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["cfy_files.cloudify_files.tasks.delete"]}}}}}}},"nodeTypeCloudifyNodesFTPProperties":{"type":"object","properties":{"resource_config":{"$ref":"#/definitions/cloudifyDatatypesFtpAuth"},"raw_files":{"type":"object"},"files":{"type":"object"}},"required":["resource_config"]},"nodeTypeCloudifyNodesFTPInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["cfy_ftp.cloudify_ftp.tasks.create"]},"inputs":{"type":"object","properties":{"resource_config":{"$ref":"#/definitions/cloudifyDatatypesFtpAuth"},"raw_files":{"type":"object"},"files":{"type":"object"}}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["cfy_ftp.cloudify_ftp.tasks.delete"]},"inputs":{"resource_config":{"$ref":"#/definitions/cloudifyDatatypesFtpAuth"}}}}}}}},"nodeTypeCloudifyRestRequestsProperties":{"type":"object","properties":{"hosts":{"type":"array","items":{"type":"string"}},"host":{"type":"array","items":{"type":"string"}},"port":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":-1},"ssl":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"verify":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true},"cert":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":null},"timeout":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":null},"proxies":{"type":"object"},"params":{"type":"object"}}},"restTemplateInputs":{"type":"object","properties":{"params":{"type":"object"},"template_file":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"save_path":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"prerender":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"remove_calls":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"force_rerun":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"retry_count":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":1},"retry_sleep":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":15}}},"nodeTypeCloudifyRestRequestsInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["rest.cloudify_rest.tasks.execute"]},"inputs":{"$ref":"#/definitions/restTemplateInputs"}}},"configure":{"type":"object","properties":{"implementation":{"type":"string","enum":["rest.cloudify_rest.tasks.execute"]},"inputs":{"$ref":"#/definitions/restTemplateInputs"}}},"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["rest.cloudify_rest.tasks.execute"]},"inputs":{"$ref":"#/definitions/restTemplateInputs"}}},"stop":{"type":"object","properties":{"implementation":{"type":"string","enum":["rest.cloudify_rest.tasks.execute"]},"inputs":{"$ref":"#/definitions/restTemplateInputs"}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["rest.cloudify_rest.tasks.execute"]},"inputs":{"$ref":"#/definitions/restTemplateInputs"}}}}}}},"nodeTypeCloudifyRestBunchRequestsProperties":{"type":"object","properties":{"hosts":{"type":"array","items":{"type":"string"}},"host":{"type":"array","items":{"type":"string"}},"port":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":-1},"ssl":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"verify":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true},"cert":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":null},"timeout":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":null},"proxies":{"type":"object"},"params":{"type":"object"}}},"nodeTypeCloudifyRestBunchRequestsInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["rest.cloudify_rest.tasks.bunch_execute"]},"inputs":{"type":"object","properties":{"auth":{"type":"object"},"templates":{"type":"object"}}}}},"configure":{"type":"object","properties":{"implementation":{"type":"string","enum":["rest.cloudify_rest.tasks.bunch_execute"]},"inputs":{"type":"object","properties":{"auth":{"type":"object"},"templates":{"type":"object"}}}}},"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["rest.cloudify_rest.tasks.bunch_execute"]},"inputs":{"type":"object","properties":{"auth":{"type":"object"},"templates":{"type":"object"}}}}},"stop":{"type":"object","properties":{"implementation":{"type":"string","enum":["rest.cloudify_rest.tasks.bunch_execute"]},"inputs":{"type":"object","properties":{"auth":{"type":"object"},"templates":{"type":"object"}}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["rest.cloudify_rest.tasks.bunch_execute"]},"inputs":{"type":"object","properties":{"auth":{"type":"object"},"templates":{"type":"object"}}}}}}}}},"nodeTypeCloudifyNodesSecretsWriterProperties":{"type":"object","properties":{"entries":{"type":"object"},"do_not_delete":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"variant":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"separator":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"nodeTypeCloudifyNodesSecretsWriterInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["secrets.cloudify_secrets.tasks.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["secrets.cloudify_secrets.tasks.delete"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["secrets.cloudify_secrets.tasks.update"]}}}}}}},"nodeTypeCloudifyNodesSecretsReaderProperties":{"type":"object","properties":{"keys":{"type":"array","items":{"type":"string"}},"variant":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"separator":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"nodeTypeCloudifyNodesSecretsReaderInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["secrets.cloudify_secrets.tasks.read"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["secrets.cloudify_secrets.tasks.read"]}}}}}}},"cloudifyDataTypesAgentConfig":{"type":"object","properties":{"install_method":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"service_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"network":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"user":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"key":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"password":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"port":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"process_management":{"type":"object"},"min_workers":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"max_workers":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"heartbeat":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"disable_requiretty":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"},"env":{},"extra":{"type":"object"}},"required":["install_method"]},"openstackExternalResource":{"type":"object","properties":{"use_external_resource":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":false}}},"openstackCreateIfMissing":{"type":"object","properties":{"create_if_missing":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":false}}},"openstackTypeClientConfig":{"type":"object","properties":{"auth_url":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"username":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"password":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"project_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tenant_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"region_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"user_domain_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"project_domain_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"user_domain_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"project_domain_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"logging":{"$ref":"#/definitions/openstackTypesLogging"},"insecure":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":false},"ca_cert":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"kwargs":{"type":"object"}}},"openstackTypesLogging":{"properties":{"openstack":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"openstackClientConfig":{"type":"object","properties":{"client_config":{"$ref":"#/definitions/openstackTypeClientConfig"}}},"openstackDataTypeKwargs":{"type":"object","properties":{"kwargs:":{"type":"object"}}},"openstackDataTypeName":{"type":"object","properties":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"openstackDataTypeId":{"type":"object","properties":{"id":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"openstackDataTypeDescription":{"type":"object","properties":{"description":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"openstackTypesNetwork":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"properties":{"admin_state_up":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true}}}]},"openstackTypesSubnet":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"properties":{"enable_dhcp":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"},"network_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"dns_nameservers":{"type":"array","items":{"type":"string"}},"allocation_pools":{"type":"array","items":{"type":"string"}},"host_routes":{"type":"array","items":{"type":"string"}},"ip_version":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"gateway_ip":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"cidr":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"prefixlen":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"ipv6_address_mode":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"ipv6_ra_mode":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}]},"openstackTypesPort":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"properties":{"allowed_address_pairs":{"type":"array","items":{"type":"string"}},"device_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"device_owner":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"fixed_ips":{"type":"array","items":{"type":"string"}},"network_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"security_groups":{"type":"array","items":{"type":"string"}}}}]},"openstackTypesRouter":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"}]},"openstackTypesFloatingIP":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"properties":{"floating_network_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"floating_network_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"fixed_ip_address":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"floating_ip_address":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"port_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"subnet_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"dns_domain":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"dns_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}]},"openstackTypesSecurityGroup":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"$ref":"#/definitions/openstackDataTypeDescription"}]},"openstackTypesSecurityGroupRule":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeId"},{"properties":{"remote_group_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"protocol":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"direction":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"port_range_min":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"port_range_max":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"security_group_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"remote_ip_prefix":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}]},"openstackTypesKeyPair":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"properties":{"public_key":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}]},"openstackTypesHostAggregate":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"properties":{"availability_zone":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}]},"openstackTypesImage":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"properties":{"container_format":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"disk_format":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"array","items":{"type":"string"}}}}]},"openstackTypesFlavor":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"properties":{"ram":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"disk":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"vcpus":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"}}}]},"openstackTypesUser":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"properties":{"default_project_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"domain_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"enabled":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"},"password":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"email":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}]},"openstackTypesGroup":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"$ref":"#/definitions/openstackDataTypeDescription"},{"properties":{"domain_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}]},"openstackTypesRole":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"$ref":"#/definitions/openstackDataTypeDescription"},{"properties":{"domain_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}]},"openstackTypesProject":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"$ref":"#/definitions/openstackDataTypeDescription"},{"properties":{"is_domain":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"},"domain_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"parent_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tags":{"type":"object","items":{"type":"string"}}}}]},"openstackTypesVolume":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"$ref":"#/definitions/openstackDataTypeDescription"},{"properties":{"project_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"size":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"availability_zone":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"imageRef":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"snapshot_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"volume_type":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}]},"openstackTypesVolumeType":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"$ref":"#/definitions/openstackDataTypeDescription"},{"properties":{"project_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"extra_specs":{"type":"object"}}}]},"openstackTypesZoneType":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeDescription"},{"properties":{"ttl":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"email":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"type":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"masters":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"attributes":{"type":"object"}}}]},"openstackRecordSetType":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeDescription"},{"properties":{"ttl":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"zone_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"type":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"records":{"type":"array","items":{"type":"string"}}},"required":["zone_id","records"]}]},"nodeTypeOpenstackNetworkBaseProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"}]},"nodeTypeOpenstackNetworkProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeOpenstackNetworkBaseProperties"},{"properties":{"resource_config":{"$ref":"#/definitions/openstackTypesNetwork"}},"required":["resource_config"]}]},"nodeTypeOpenstackNetworkInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.network.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.network.delete"]}}}}},"cloudify.interfaces.validation":{"type":"object","properties":{"creation":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.network.creation_validation"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.network.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.network.list_networks"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}}}},"nodeTypeOpenstackSubnetProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeOpenstackNetworkBaseProperties"},{"properties":{"resource_config":{"$ref":"#/definitions/openstackTypesSubnet"}},"required":["resource_config"]}]},"nodeTypeOpenstackSubnetInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.subnet.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.subnet.delete"]}}}}},"cloudify.interfaces.validation":{"type":"object","properties":{"creation":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.subnet.creation_validation"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.subnet.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.subnet.list_subnets"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}}}},"nodeTypeOpenstackPortProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"fixed_ip":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_config":{"$ref":"#/definitions/openstackTypesPort"}},"required":["resource_config"]}]},"nodeTypeOpenstackPortInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.port.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.port.delete"]}}}}},"cloudify.interfaces.validation":{"type":"object","properties":{"creation":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.port.creation_validation"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.port.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.port.list_ports"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}}}},"nodeTypeOpenstackRouterProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"resource_config":{"$ref":"#/definitions/openstackTypesRouter"},"external_network":{"$ref":"#/definitions/cloudifyStringOrGetInput"}},"required":["resource_config"]}]},"nodeTypeOpenstackRouterInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.router.create"]}}},"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.router.start"]},"inputs":{"type":"object","properties":{"routes":{"type":"object"}}}}},"stop":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.router.stop"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.router.delete"]}}}}},"cloudify.interfaces.validation":{"type":"object","properties":{"creation":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.router.creation_validation"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.router.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.router.list_routers"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}}}},"nodeTypeOpenstackFloatingIPProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"allow_reallocation":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"resource_config":{"$ref":"#/definitions/openstackTypesFloatingIP"}},"required":["resource_config"]}]},"nodeTypeOpenstackFloatingIPInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.floating_ip.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.floating_ip.delete"]}}}}},"cloudify.interfaces.validation":{"type":"object","properties":{"creation":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.floating_ip.creation_validation"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.floating_ip.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.floating_ip.list_floating_ips"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}}}},"nodeTypeOpenstackSecurityGroupProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"disable_default_egress_rules":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"},"security_group_rules":{"type":"array","items":{"type":"string"}},"resource_config":{"$ref":"#/definitions/openstackTypesSecurityGroup"}},"required":["resource_config"]}]},"nodeTypeOpenstackSecurityGroupInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.security_group.create"]}}},"configure":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.security_group.configure"]},"inputs":{"type":"object","properties":{"security_group_rules":{"type":["array","object"],"default":{"get_property":["SELF","security_group_rules"]}}}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.security_group.delete"]}}}}},"cloudify.interfaces.validation":{"type":"object","properties":{"creation":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.security_group.creation_validation"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.security_group.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.security_group.list_security_groups"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}}}},"nodeTypeOpenstackSecurityGroupRuleProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeOpenstackSecurityGroupProperties"},{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"resource_config":{"$ref":"#/definitions/openstackTypesSecurityGroupRule"}},"required":["resource_config"]}]},"nodeTypeOpenstackSecurityGroupRuleInterfaces":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeOpenstackSecurityGroupInterfaces"},{"properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.security_group_rule.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.security_group_rule.delete"]}}}}},"cloudify.interfaces.validation":{"type":"object","properties":{"creation":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.security_group_rule.creation_validation"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.network.security_group_rule.list_security_group_rules"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}}}}]},"nodeTypeOpenstackRBACPolicyProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeId"},{"properties":{"target_tenant":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"object_type":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"object_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"action":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}]},"nodeTypeOpenstackServerProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackDataTypeKwargs"},{"$ref":"#/definitions/openstackDataTypeName"},{"$ref":"#/definitions/openstackDataTypeId"},{"$ref":"#/definitions/openstackDataTypeDescription"},{"properties":{"image_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"flavor_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"availability_zone":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"user_data":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"metadata":{"type":"object"},"security_groups":{"type":"array","items":{"type":"string"}},"networks":{"type":"array","items":{"type":"string"}},"key_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}]},"nodeTypeOpenstackWindowsServerProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeOpenstackServerProperties"},{"properties":{"os_family":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"windows"},"agent_config":{"$ref":"#/definitions/cloudifyDataTypesAgentConfig","default":{"port":5985}}}}]},"nodeTypeOpenstackKeyPairProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"resource_config":{"$ref":"#/definitions/openstackTypesKeyPair"}},"required":["resource_config"]}]},"nodeTypeOpenstackKeyPairInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.keypair.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.keypair.delete"]}}}}},"cloudify.interfaces.validation":{"type":"object","properties":{"creation":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.keypair.creation_validation"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.keypair.list_keypairs"]}}}}}}},"nodeTypeOpenstackHostAggregateProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"metadata":{"type":"object"},"hosts":{"type":"array","items":{"type":"string"}},"resource_config":{"$ref":"#/definitions/openstackTypesHostAggregate"}},"required":["resource_config"]}]},"nodeTypeOpenstackHostAggregateInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.host_aggregate.create"]}}},"configure":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.host_aggregate.configure"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.host_aggregate.delete"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"object","enum":["openstack.openstack_plugin.resources.compute.host_aggregate.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.host_aggregate.list_aggregates"]}}},"add_hosts":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.host_aggregate.add_hosts"]},"inputs":{"type":"object","properties":{"hosts":{"type":"array","items":{"type":"string"}}}}}},"remove_hosts":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.host_aggregate.remove_hosts"]},"inputs":{"type":"object","properties":{"hosts":{"type":"array","items":{"type":"string"}}}}}}}}}},"nodeTypeOpenstackImageProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"image_url":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"resource_config":{"$ref":"#/definitions/openstackTypesImage"}},"required":["resource_config"]}]},"nodeTypeOpenstackImageInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.image.create"]}}},"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.image.start"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.image.delete"]}}}}},"cloudify.interfaces.validation":{"type":"object","properties":{"creation":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.image.creation_validation"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.image.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.image.list_images"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}}}},"nodeTypeOpenstackFlavorProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"resource_config":{"$ref":"#/definitions/openstackTypesFlavor"},"extra_specs":{"type":"object"},"tenants":{"type":"array","items":{"type":"string"}}},"required":["resource_config"]}]},"nodeTypeOpenstackFlavorInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.flavor.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.flavor.delete"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.flavor.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.compute.flavor.list_flavors"]},"inputs":{"type":"object","properties":{"query":{"type":"object"},"details":{"type":"boolean","default":true}}}}}}}}},"nodeTypeOpenstackUserProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"resource_config":{"$ref":"#/definitions/openstackTypesUser"}},"required":["resource_config"]}]},"nodeTypeOpenstackUserInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.user.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.user.delete"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.user.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.user.list_users"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}}}},"nodeTypeOpenstackGroupProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"resource_config":{"$ref":"#/definitions/openstackTypesGroup"}},"required":["resource_config"]}]},"nodeTypeOpenstackGroupInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.group.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.group.delete"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.group.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.group.list_groups"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}}}},"nodeTypeOpenstackRoleProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"resource_config":{"$ref":"#/definitions/openstackTypesRole"}},"required":["resource_config"]}]},"nodeTypeOpenstackRoleInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.role.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.role.delete"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.role.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.role.list_roles"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}}}},"nodeTypeOpenstackProjectProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"groups":{"type":"array","items":{"type":"string"}},"users":{"type":"array","items":{"type":"string"}},"quota":{"type":"object"},"resource_config":{"$ref":"#/definitions/openstackTypesProject"}},"required":["resource_config"]}]},"nodeTypeOpenstackProjectInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.project.create"]}}},"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.project.start"]},"inputs":{"type":"object","properties":{"quota_dict":{"type":"object"}}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.project.delete"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"update_project":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.project.update"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"get_quota":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.project.get_project_quota"]}}},"update_quota":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.project.update_project_quota"]},"inputs":{"type":"object","properties":{"quota":{"type":"object"}}}}},"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.project.list_projects"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}},"cloudify.interfaces.validation":{"type":"object","properties":{"creation":{"type":"string","enum":["openstack.openstack_plugin.resources.identity.project.creation_validation"]}}}}},"nodeTypeOpenstackVolumeProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"device_name":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"auto"},"resource_config":{"$ref":"#/definitions/openstackTypesVolume"}},"required":["resource_config"]}]},"nodeTypeOpenstackVolumeInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.volume.volume.create"]},"inputs":{"type":"object","properties":{"args":{"type":"object"}}}}},"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.volume.volume.start"]},"inputs":{"type":"object"}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.volume.volume.delete"]}}}}},"cloudify.interfaces.snapshot":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.volume.volume.snapshot_create"]},"inputs":{"type":"object"}}},"apply":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.volume.volume.snapshot_apply"]},"inputs":{"type":"object"}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.volume.volume.snapshot_delete"]},"inputs":{"type":"object"}}}}},"cloudify.interfaces.validation":{"type":"object","properties":{"creation":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.volume.volume.creation_validation"]}}}}},"cloudify.interfaces.operations":{"type":"object","properties":{"list":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.volume.volume.list_volumes"]},"inputs":{"type":"object","properties":{"query":{"type":"object"}}}}}}}}},"nodeTypeOpenstackVolumeTypeProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackExternalResource"},{"$ref":"#/definitions/openstackCreateIfMissing"},{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"resource_config":{"$ref":"#/definitions/openstackTypesVolumeType"}},"required":["resource_config"]}]},"nodeTypeOpenstackVolumeTypeInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.volume.volume_type.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.volume.volume_type.delete"]}}}}}}},"nodeTypeOpenstackZoneProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"resource_config":{"$ref":"#/definitions/openstackTypesZoneType"}}}]},"nodeTypeOpenstackZoneInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.dns_service.zone.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.dns_service.zone.delete"]}}}}}}},"nodeTypeOpenstackRecordSetProperties":{"type":"object","allOf":[{"$ref":"#/definitions/openstackClientConfig"},{"properties":{"resource_config":{"$ref":"#/definitions/openstackRecordSetType"}}}]},"nodeTypeOpenstackRecordSetInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.dns_service.record_set.create"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["openstack.openstack_plugin.resources.dns_service.record_set.delete"]}}}}}}},"ansiblePlaybookConfig":{"type":"object","properties":{"ansible_playbook_executable_path":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"ansible-playbook"},"playbook_source_path":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"playbook_path":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"site_yaml_path":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"additional_playbook_files":{"type":"array","items":{"type":"string"}},"sources":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"run_data":{"type":"object"},"sensitive_keys":{"type":"array","items":{"type":"string"},"default":"ansible_password"},"options_config":{"type":"object"},"ansible_env_vars":{"type":"object","properties":{"ANSIBLE_HOST_KEY_CHECKING":{"type":"boolean","default":false},"ANSIBLE_INVALID_TASK_ATTRIBUTE_FAILED":{"type":"boolean","default":false}}},"debug_level":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":2},"additional_args":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"start_at_task":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"scp_extra_args":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"sftp_extra_args":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"ssh_common_args":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"Specify common arguments to pass to sftp/scp/ssh (e.g. ProxyCommand)"},"ssh_extra_args":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"timeout":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":10},"save_playbook":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"remerge_sources":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":"false"},"ansible_become":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false}}},"ansiblePlaybookInputs":{"type":"object","properties":{"ansible_playbook_executable_path":{"type":["string","object"],"default":{"get_property":["SELF","ansible_playbook_executable_path"]}},"playbook_source_path":{"type":["string","object"],"default":{"get_property":["SELF","playbook_source_path"]}},"playbook_path":{"type":"string","default":{"get_property":["SELF","playbook_path"]}},"site_yaml_path":{"type":"string","default":{"get_property":["SELF","site_yaml_path"]}},"save_playbook":{"type":"string","default":{"get_property":["SELF","save_playbook"]}},"remerge_sources":{"type":"string","default":{"get_property":["SELF","remerge_sources"]}},"sources":{"type":"string","default":{"get_property":["SELF","sources"]}},"run_data":{"type":"string","default":{"get_property":["SELF","run_data"]}},"sensitive_keys":{"type":"string","default":{"get_property":["SELF","sensitive_keys"]}},"options_config":{"type":"string","default":{"get_property":["SELF","options_config"]}},"ansible_env_vars":{"type":"string","default":{"get_property":["SELF","ansible_env_vars"]}},"debug_level":{"type":"string","default":{"get_property":["SELF","debug_level"]}},"additional_args":{"type":"string","default":{"get_property":["SELF","additional_args"]}},"start_at_task":{"type":"string","default":{"get_property":["SELF","start_at_task"]}},"scp_extra_args":{"type":"string","default":{"get_attribute":["SELF","scp_extra_args"]}},"sftp_extra_args":{"type":"string","default":{"get_attribute":["SELF","sftp_extra_args"]}},"ssh_common_args":{"type":"string","default":{"get_attribute":["SELF","ssh_common_args"]}},"ssh_extra_args":{"type":"string","default":{"get_attribute":["SELF","ssh_extra_args"]}},"timeout":{"type":"string","default":{"get_attribute":["SELF","timeout"]}}}},"nodeTypeAnsibleExecutorProperties":{"type":"object","allOf":[{"$ref":"#/definitions/ansiblePlaybookConfig"}]},"nodeTypeAnsibleExecutorInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["ansible.cloudify_ansible.tasks.run"]},"inputs":{"$ref":"#/definitions/ansiblePlaybookInputs"}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["ansible.cloudify_ansible.tasks.cleanup"]}}}}}}},"nodeTypeTerraformDirectoryConfig":{"type":"object","properties":{"executable_path":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"/usr/bin/terraform"},"storage_path":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"plugins_dir":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"terraformConfig":{"$ref":"#/definitions/nodeTypeTerraformDirectoryConfig"},"terraformTypesBackend":{"type":"object","properties":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"options":{"type":"object"}}},"terraformTypesRootModule":{"type":"object","properties":{"source":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"backend":{"$ref":"#/definitions/terraformTypesBackend"},"variables":{"type":"object"},"environment_variables":{"type":"object"}},"required":["source"]},"nodeTypeTerraformInstallConfig":{"type":"object","properties":{"use_existing_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true},"installation_source":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"plugins":{"type":"array","items":{"type":"string"}}},"required":["use_existing_resource"]},"nodeTypeTerraformProperties":{"type":"object","allOf":[{"$ref":"#/definitions/terraformConfig"},{"properties":{"resource_config":{"$ref":"#/definitions/nodeTypeTerraformInstallConfig"}},"required":["resource_config"]}]},"nodeTypeTerraformInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["tf.cloudify_tf.tasks.install"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["tf.cloudify_tf.tasks.uninstall"]}}}}}}},"nodeTypeTerraformModuleProperties":{"type":"object","properties":{"resource_config":{"$ref":"#/definitions/terraformTypesRootModule"}},"required":["resource_config"]},"nodeTypeTerraformModuleInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["tf.cloudify_tf.tasks.apply"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["tf.cloudify_tf.tasks.destroy"]}}}}},"terraform":{"type":"object","properties":{"reload":{"type":"object","properties":{"implementation":{"type":"string","enum":["tf.cloudify_tf.tasks.reload_template"]},"inputs":{"type":"object","properties":{"source":{"type":"string"},"destroy_previous":{"type":"boolean","default":false}}}}},"refresh":{"type":"object","properties":{"implementation":{"type":"string","enum":["tf.cloudify_tf.tasks.state_pull"]}}}}}}},"kubernetesTypesConfigurationVariant":{"type":"object","properties":{"blueprint_file_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"manager_file_path":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"file_content":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"api_options":{"type":"object","properties":{"host":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"ssl_ca_cert":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"cert_file":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"key_file":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"verify_ssl":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"},"api_key":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"debug":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"}}}}},"kubernetesTypesAuthenticationVariant":{"type":"object","properties":{"gcp_service_account":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"kubernetesTypesClientConfig":{"type":"object","properties":{"configuration":{"$ref":"#/definitions/kubernetesTypesConfigurationVariant"},"authentication":{"$ref":"#/definitions/kubernetesTypesAuthenticationVariant"}}},"kubernetesTypesAbstractResource":{"type":"object","properties":{"apiVersion":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"v1"},"kind":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"metadata":{"type":"object"}},"required":["kind"]},"kubernetesTypesRoleBindingDefinitio":{"type":"object","allOf":[{"$ref":"#/definitions/kubernetesTypesAbstractResource"},{"properties":{"roleRef":{"type":"object"},"subjects":{"type":"array","items":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}}]},"kubernetesTypesRoleDefinitio":{"type":"object","allOf":[{"$ref":"#/definitions/kubernetesTypesAbstractResource"},{"properties":{"rules":{"type":"array","items":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}}]},"kubernetesTypesClusterRoleDefinitio":{"type":"object","allOf":[{"$ref":"#/definitions/kubernetesTypesAbstractResource"}]},"kubernetesTypesSecretDefinition":{"type":"object","allOf":[{"$ref":"#/definitions/kubernetesTypesAbstractResource"},{"properties":{"type":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"data":{"type":"object"},"stringData":{"type":"object"}}}]},"kubernetesTypesServiceAccountDefinition":{"type":"object","allOf":[{"$ref":"#/definitions/kubernetesTypesAbstractResource"},{"properties":{"automountServiceAccountToken":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"imagePullSecrets":{"type":"array","items":{"$ref":"#/definitions/cloudifyStringOrGetInput"}},"secrets":{"type":"array","items":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}}]},"kubernetesTypesResourceDefinition":{"type":"object","allOf":[{"$ref":"#/definitions/kubernetesTypesAbstractResource"},{"properties":{"spec":{"type":"object"}}}]},"kubernetesTypesConfigClassResourceDefinition":{"type":"object","allOf":[{"$ref":"#/definitions/kubernetesTypesResourceDefinition"},{"properties":{"data":{"type":"object"}}}]},"kubernetesTypesStorageClassResourceDefinition":{"type":"object","allOf":[{"$ref":"#/definitions/kubernetesTypesAbstractResource"},{"properties":{"parameters":{"type":"object"},"provisioner":{"type":"object"}}}]},"kubernetesTypesApiMappingEntry":{"type":"object","properties":{"api":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"method":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"payload":{"$ref":"#/definitions/cloudifyStringOrGetInput"}},"required":["api","method"]},"kubernetesTypesApiMapping":{"type":"object","properties":{"create":{"$ref":"#/definitions/kubernetesTypesApiMappingEntry"},"read":{"$ref":"#/definitions/kubernetesTypesApiMappingEntry"},"update":{"$ref":"#/definitions/kubernetesTypesApiMappingEntry"},"delete":{"$ref":"#/definitions/kubernetesTypesApiMappingEntry"}}},"kubernetesTypesFileResource":{"type":"object","properties":{"resource_path":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"target_path":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"template_variables":{"type":"object"}}},"nodeTypeKubernetesNodesMasterProperties":{"type":"object","properties":{"configuration":{"$ref":"#/definitions/kubernetesTypesConfigurationVariant"},"authentication":{"$ref":"#/definitions/kubernetesTypesAuthenticationVariant"}}},"nodeTypeKubernetesResourcesResourceBase":{"type":"object","properties":{"client_config":{"$ref":"#/definitions/kubernetesTypesClientConfig"},"allow_node_redefinition":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false}}},"nodeTypeKubernetesResourcesResourceWithValidateStatus":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesResourceBase"},{"type":"object","properties":{"validate_resource_status":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"}}}]},"nodeTypeKubernetesResourcesBlueprintDefinedResource":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesResourceWithValidateStatus"},{"type":"object","properties":{"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"},"definition":{"$ref":"#/definitions/kubernetesTypesResourceDefinition"},"options":{"type":"object"}}}]},"nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"$ref":"#/definitions/cloudifyStringOrGetInput","enum":["kubernetes.cloudify_kubernetes.tasks.resource_create"]}}},"poststart":{"type":"object","properties":{"implementation":{"$ref":"#/definitions/cloudifyStringOrGetInput","enum":["kubernetes.cloudify_kubernetes.tasks.resource_read"]}}},"update":{"type":"object","properties":{"implementation":{"$ref":"#/definitions/cloudifyStringOrGetInput","enum":["kubernetes.cloudify_kubernetes.tasks.resource_update"]}}},"delete":{"type":"object","properties":{"implementation":{"$ref":"#/definitions/cloudifyStringOrGetInput","enum":["kubernetes.cloudify_kubernetes.tasks.resource_delete"]}}}}}}},"nodeTypeKubernetesResourcesClusterRoleBindingProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"definition":{"$ref":"#/definitions/kubernetesTypesRoleBindingDefinitio"}}}]},"nodeTypeKubernetesResourcesRoleBinding":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"definition":{"$ref":"#/definitions/kubernetesTypesRoleBindingDefinitio"}}}]},"nodeTypeKubernetesResourcesRoleProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"definition":{"$ref":"#/definitions/kubernetesTypesRoleDefinitio"}}}]},"nodeTypeKubernetesResourcesClusterRoleProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesRoleProperties"},{"properties":{"definition":{"$ref":"#/definitions/kubernetesTypesClusterRoleDefinitio"}}}]},"nodeTypeKubernetesResourcesSecretProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"definitions":{"$ref":"#/definitions/kubernetesTypesSecretDefinition"}}}]},"nodeTypeKubernetesResourcesServiceAccountProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"definitions":{"$ref":"#/definitions/kubernetesTypesServiceAccountDefinition"}}}]},"nodeTypeKubernetesResourcesDeploymentProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"validate_resource_status":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true}}}]},"nodeTypeKubernetesResourcesNodeProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true}}}]},"nodeTypeKubernetesResourcesNamespaceProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true}}}]},"nodeTypeKubernetesResourcesPodProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true}}}]},"nodeTypeKubernetesResourcesReplicaSetProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true}}}]},"nodeTypeKubernetesResourcesReplicationControllerProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true}}}]},"nodeTypeKubernetesResourcesDaemonSetProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"}]},"nodeTypeKubernetesResourcesCustomResourceDefinitionProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"}]},"nodeTypeKubernetesResourcesServiceProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"validate_resource_status":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true}}}]},"nodeTypeKubernetesResourcesPersistentVolumeProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"validate_resource_status":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":true}}}]},"nodeTypeKubernetesResourcesConfigMapProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"definition":{"$ref":"#/definitions/kubernetesTypesConfigClassResourceDefinition"}}}]},"nodeTypeKubernetesResourcesStorageClassProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"definition":{"$ref":"#/definitions/kubernetesTypesStorageClassResourceDefinition"}}}]},"nodeTypeKubernetesResourcesStatefulSetProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"definition":{"type":"object"}}}]},"nodeTypeKubernetesResourcesPodSecurityPolicyProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"definition":{"type":"object"}}}]},"nodeTypeKubernetesResourcesNetworkPolicyroperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"definition":{"type":"object"}}}]},"nodeTypeKubernetesResourcesIngressProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"definition":{"type":"object"}}}]},"nodeTypeKubernetesResourcesPersistentVolumeClaimProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"definition":{"type":"object"}}}]},"nodeTypeKubernetesResourcesCustomBlueprintDefinedResourceProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResource"},{"properties":{"api_mapping":{"$ref":"#/definitions/kubernetesTypesApiMapping"}}}]},"nodeTypeKubernetesResourcesCustomBlueprintDefinedResourceInterfaces":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesBlueprintDefinedResourceInterfaces"},{"properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"$ref":"#/definitions/cloudifyStringOrGetInput","enum":["kubernetes.cloudify_kubernetes.tasks.custom_resource_create"]}}},"delete":{"type":"object","properties":{"implementation":{"$ref":"#/definitions/cloudifyStringOrGetInput","enum":["kubernetes.cloudify_kubernetes.tasks.custom_resource_delete"]}}}}}}}]},"nodeTypeKubernetesResourcesFileDefinedResourceProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesResourceWithValidateStatus"},{"properties":{"file":{"$ref":"#/definitions/kubernetesTypesFileResource"},"allow_node_redefinition":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false}}}]},"nodeTypeKubernetesResourcesFileDefinedResourceInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"$ref":"#/definitions/cloudifyStringOrGetInput","enum":["kubernetes.cloudify_kubernetes.tasks.file_resource_create"]}}},"poststart":{"type":"object","properties":{"implementation":{"$ref":"#/definitions/cloudifyStringOrGetInput","enum":["kubernetes.cloudify_kubernetes.tasks.file_resource_read"]}}},"delete":{"type":"object","properties":{"implementation":{"$ref":"#/definitions/cloudifyStringOrGetInput","enum":["kubernetes.cloudify_kubernetes.tasks.file_resource_delete"]}}}}}}},"nodeTypeKubernetesResourcesMultipleFileDefinedResourcesProperties":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeKubernetesResourcesResourceWithValidateStatus"},{"properties":{"files":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"allow_node_redefinition":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false}}}]},"nodeTypeKubernetesResourcesMultipleFileDefinedResourcesInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["kubernetes.cloudify_kubernetes.tasks.multiple_file_resource_create"]}}},"poststart":{"type":"object","properties":{"implementation":{"type":"string","enum":["kubernetes.cloudify_kubernetes.tasks.multiple_file_resource_delete"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["kubernetes.cloudify_kubernetes.tasks.custom_resource_delete"]}}}}}}},"dockerClientConfig":{"type":"object","properties":{"docker_host":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"docker_rest_port":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"}}},"dockerMachine":{"type":"object","properties":{"docker_ip":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"docker_user":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"docker_key":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"container_volume":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"dockerInstallationConfig":{"type":"object","properties":{"install_url":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"https://get.docker.com"},"install_script":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"https://raw.githubusercontent.com/cloudify-cosmo/cloudify-docker-plugin/master/cloudify_docker/resources/post-install.sh"}}},"nodeTypeDockerImagesProperties":{"type":"object","properties":{"client_config":{"$ref":"#/definitions/dockerClientConfig"}}},"nodeTypeDockerImagesInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.tasks.list_images"]}}}}}}},"nodeTypeDockerContainersProperties":{"type":"object","properties":{"client_config":{"$ref":"#/definitions/dockerClientConfig"}}},"nodeTypeDockerContainersInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.tasks.list_containers"]}}}}}}},"nodeTypeDockerHostProperties":{"type":"object","properties":{"docker_machine":{"$ref":"#/definitions/dockerMachine"},"resource_config":{"$ref":"#/definitions/dockerInstallationConfig"}},"required":["resource_config"]},"nodeTypeDockerHostInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.tasks.install_docker"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.tasks.uninstall_docker"]}}}}}}},"nodeTypeDockerHostDetailsProperties":{"type":"object","properties":{"client_config":{"$ref":"#/definitions/dockerClientConfig"}}},"nodeTypeDockerHostDetailsInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.tasks.list_host_details"]}}}}}}},"nodeTypeDockerImageProperties":{"type":"object","properties":{"client_config":{"$ref":"#/definitions/dockerClientConfig"},"resource_config":{"type":"object","properties":{"image_content":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"tag":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}},"required":["resource_config"]},"nodeTypeDockerImageInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.tasks.build_image"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.tasks.remove_image"]}}}}}}},"nodeTypeDockerContainerProperties":{"type":"object","properties":{"client_config":{"$ref":"#/definitions/dockerClientConfig"},"resource_config":{"type":"object","properties":{"image_tag":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"container_args":{"type":"object"}}}},"required":["resource_config"]},"nodeTypeDockerContainerInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.tasks.create_container"]}}},"stop":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.tasks.remove_container"]},"inputs":{"type":"object","properties":{"stop_command":{"type":["string","object"]}}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.tasks.remove_container"]}}}}}}},"nodeTypeDockerContainerFilesProperties":{"type":"object","properties":{"resource_config":{"properties":{"docker_machine":{"type":"object","properties":{"docker_machine":{"$ref":"#/definitions/dockerMachine"},"source":{"type":"string"},"destination":{"type":"string"},"extra_files":{"type":"string"},"ansible_sources":{"type":"object"},"terraform_sources":{"type":"object"}}},"source":{"type":"string"},"destination":{"type":"string"},"extra_files":{"type":"array","items":{"type":"string"}},"ansible_sources":{"type":"object"},"terraform_sources":{"type":"object"}}}},"required":["resource_config"]},"nodeTypeDockerContainerFilesInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.tasks.prepare_container_files"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.tasks.remove_container_files"]}}}}}}},"nodeTypeDockerAnsiblePlaybookProperties":{"type":"object","properties":{"ansible_playbook_executable_path":{"type":"string","default":"ansible-playbook"},"playbook_source_path":{"type":"string"},"playbook_path":{"type":"string"},"site_yaml_path":{"type":"string"},"additional_playbook_files":{"type":"array","items":{"type":"string"}},"sources":{"type":"object"},"run_data":{"type":"object"},"sensitive_keys":{"type":"array","items":{"type":"string"}},"options_config":{"type":"object"},"ansible_env_vars":{"type":"object","properties":{"ANSIBLE_HOST_KEY_CHECKING":{"type":"string","enum":["True","False"],"default":"False"},"ANSIBLE_INVALID_TASK_ATTRIBUTE_FAILED":{"type":"string","enum":["True","False"],"default":"False"}}},"debug_level":{"type":"integer","default":2},"additional_args":{"type":"string"},"save_playbook":{"type":"boolean","default":false},"remerge_sources":{"type":"boolean","default":false},"ansible_become":{"type":"boolean","default":false},"docker_machine":{"$ref":"#/definitions/dockerMachine"}}},"nodeTypeDockerAnsiblePlaybookInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"precreate":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.ansible.set_playbook_config"]},"inputs":{"type":"object","properties":{"ansible_playbook_executable_path":{"type":"string"},"playbook_source_path":{"type":"string"},"playbook_path":{"type":"string"},"site_yaml_path":{"type":"string"},"save_playbook":{"type":"boolean"},"remerge_sources":{"type":"boolean"},"sources":{"type":"object"},"run_data":{"type":"object"},"sensitive_keys":{"type":"array","items":{"type":"string"}},"options_config":{"type":"object"},"ansible_env_vars":{"type":"object"},"debug_level":{"type":"integer"},"additional_args":{"type":"string"}}}}},"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.ansible.create_ansible_playbook"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.ansible.remove_ansible_playbook"]}}}}}}},"nodeTypeDockerTerraformModuleProperties":{"type":"object","properties":{"docker_machine":{"$ref":"#/definitions/dockerMachine"},"terraform_plugins":{"type":"array","items":{"type":"string"}},"resource_config":{"type":"object","properties":{"source":{"type":"string"},"backend":{"type":"object","properties":{"name":{"type":"string"},"options":{"type":"object"}}},"variables":{"type":"object"},"environment_variables":{"type":"object"}},"required":["source"]}},"required":["terraform_plugins","resource_config"]},"nodeTypeDockerTerraformModuleInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"create":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.terraform.prepare_terraform_files"]}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["docker.cloudify_docker.terraform.remove_terraform_files"]}}}}}}},"cloudifyGetStringOrAwsRegion":{"anyOf":[{"$ref":"#/definitions/awsRegion"},{"$ref":"#/definitions/cloudifyGetInput"}]},"awsRegion":{"type":"string","enum":["us-east-1","us-east-2","us-west-1","us-west-2","af-south-1","ap-east-1","ap-south-1","ap-southeast-1","ap-northeast-2","ap-northeast-3","ap-northeast-1","ap-southeast-2","ca-central-1","cn-north-1","cn-northwest-1","eu-central-1","eu-west-1","eu-west-2","eu-south-1","eu-west-3","eu-north-1","me-south-1","sa-east-1","us-gov-east-1","us-gov-west-1"]},"awsConnectionConfig":{"type":"object","properties":{"aws_access_key_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"aws_secret_access_key":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"region_name":{"$ref":"#/definitions/cloudifyGetStringOrAwsRegion"}}},"awsResourceId":{"type":"string","default":""},"nodeTypeAWSEC2Base":{"type":"object","properties":{"use_external_resource":{"type":"boolean","default":false},"client_config":{"$ref":"#/definitions/awsConnectionConfig"},"resource_id":{"$ref":"#/definitions/awsResourceId"},"Tags":{"$ref":"#/definitions/tags"}}},"nodeTypeAWSEC2EBSAttachment":{"type":"object","properties":{"use_external_resource":{"type":"boolean","default":false},"client_config":{"$ref":"#/definitions/awsConnectionConfig"},"resource_id":{"$ref":"#/definitions/awsResourceId"},"resource_config":{"type":"object","properties":{"kwargs":{"type":"object","properties":{"Device":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"InstanceId":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"VolumeId":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"DryRun":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"}},"required":["Device","InstanceId","VolumeId"]}}}}},"nodeTypeAWSEC2EBSVolume":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeAWSEC2Base"},{"properties":{"resource_config":{"type":"object","properties":{"AvailabilityZone":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"Size":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"kwargs":{"type":"object","properties":{"Encrypted":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"},"Iops":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"KmsKeyId":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"OutpostArn":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"Size":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"SnapshotId":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"VolumeType":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"gp2"},"DryRun":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"},"TagSpecifications":{"type":"array","items":{"type":"object","properties":{"ResourceType":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"Tags":{"type":"array","items":{"type":"object","properties":{"Key":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"Value":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}}}}}}}},"required":["AvailabilityZone"]},"use_available_zones":{"type":"boolean"}}}]},"nodeTypeAWSEC2Instances":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeAWSEC2Base"},{"properties":{"resource_config":{"type":"object","properties":{"MinCount":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":"1"},"MaxCount":{"$ref":"#/definitions/cloudifyIntegerOrGetInput","default":"1"},"ImageId":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"InstanceType":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"m1.small"},"LaunchTemplate":{"type":"object","properties":{"LaunchTemplateId":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"LaunchTemplateName":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"Version":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"kwargs":{"type":"object","properties":{"BlockDeviceMappings":{"type":"object"},"Ipv6AddressCount":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"KernelId":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"KeyName":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"SecondaryPrivateIpAddressCount":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"SubnetId":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"SecurityGroupIds":{"type":"array","items":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}}},"required":["MaxCount","MinCount"]},"agent_config":{"type":"object","properties":{"install_method":{"type":"string"}}},"use_ipv6_ip":{"type":"boolean"}}}]},"nodeTypeAWSEC2Image":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeAWSEC2Base"},{"properties":{"resource_config":{"type":"object","properties":{"kwargs":{"type":"object","properties":{"Filters":{"type":"array","items":{"type":"object","properties":{"Name":{"type":"string"},"Values":{"type":"array","items":{"type":"string"}}}}}}}}}}}]},"nodeTypeAWSEC2Interface":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeAWSEC2Base"},{"properties":{"resource_config":{"type":"object","properties":{"kwargs":{"type":"object","properties":{"Description":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"Groups":{"type":"array","items":{"$ref":"#/definitions/cloudifyStringOrGetInput"}},"Ipv6AddressCount":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"PrivateIpAddress":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"SecondaryPrivateIpAddressCount":{"$ref":"#/definitions/cloudifyIntegerOrGetInput"},"InterfaceType":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"SubnetId":{"$ref":"#/definitions/cloudifyStringOrGetInput"}},"required":["SubnetId"]}}}}}]},"nodeTypeAWSEC2SecurityGroupRuleIngress":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeAWSEC2Base"},{"properties":{"resource_config":{"type":"object","properties":{"IpPermissions":{"type":"array","items":{"type":"object","properties":{"IpProtocol":{"type":"string"},"FromPort":{"type":"integer"},"ToPort":{"type":"integer"},"IpRanges":{"type":"array","properties":{"CidrIp":{"type":"string"}}}}}},"kwargs":{"type":"object"}}}}}]},"nodeTypeAWSEC2SecurityGroup":{"type":"object","allOf":[{"$ref":"#/definitions/nodeTypeAWSEC2Base"},{"properties":{"resource_config":{"type":"object","properties":{"GroupName":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"Description":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"VpcId":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"kwargs":{"type":"object"}},"required":["Description","GroupName"]}}}]},"nodeTypeAWSEC2NATGateway":{"type":"object","properties":{"client_config":{"$ref":"#/definitions/awsClientConfig"},"Tags":{"$ref":"#/definitions/tags"}}},"nodeTypeAWSEC2ElasticIP":{"type":"object","properties":{"client_config":{"$ref":"#/definitions/awsClientConfig"}}},"nodeTypeAWSEC2Route":{"type":"object","properties":{"resource_config":{"type":"object","properties":{"kwargs":{"type":"object","properties":{"DestinationCidrBlock":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}}},"client_config":{"$ref":"#/definitions/awsClientConfig"}}},"nodeTypeAWSEC2RouteTable":{"type":"object","properties":{"client_config":{"$ref":"#/definitions/awsClientConfig"},"Tags":{"$ref":"#/definitions/tags"}}},"nodeTypeAWSEC2Subnet":{"type":"object","properties":{"resource_config":{"type":"object","properties":{"CidrBlock":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"AvailabilityZone":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"kwargs":{"type":"object","properties":{"Ipv6CidrBlock":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}}},"client_config":{"$ref":"#/definitions/awsClientConfig"},"Tags":{"$ref":"#/definitions/tags"}}},"nodeTypeAWSEC2VPC":{"type":"object","properties":{"resource_config":{"type":"object","properties":{"CidrBlock":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"kwargs":{"type":"object","properties":{"AmazonProvidedIpv6CidrBlock":{"$ref":"#/definitions/cloudifyBooleanOrGetInput"}}}}},"client_config":{"$ref":"#/definitions/awsClientConfig"},"Tags":{"$ref":"#/definitions/tags"}}},"cloudifyDatatypesHelmConfig":{"type":"object","properties":{"executable_path":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":""}}},"cloudifyDatatypesHelmConfigurationVariant":{"type":"object","properties":{"blueprint_file_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"manager_file_path":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"file_content":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"api_options":{"$ref":"#/definitions/cloudifyDatatypesHelmApiOptions"}}},"cloudifyDatatypesHelmApiOptions":{"type":"object","properties":{"host":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"api_key":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"cloudifyDatatypesHelmAuthenticationVariant":{"type":"object","properties":{"gcp_service_account":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"cloudifyDatatypesHelmClientConfig":{"type":"object","properties":{"configuration":{"$ref":"#/definitions/cloudifyDatatypesHelmConfigurationVariant"},"authentication":{"$ref":"#/definitions/cloudifyDatatypesHelmAuthenticationVariant"}}},"cloudifyDatatypesHelmReleaseConfig":{"type":"object","properties":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"chart":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"values_file":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"set_values":{"$ref":"#/definitions/cloudifyDatatypesHelmSetFlagsList","default":[]},"flags":{"$ref":"#/definitions/cloudifyDatatypesHelmSetFlagsList","default":[]}},"required":["name","chart"]},"cloudifyDatatypesHelmRepoConfig":{"type":"object","properties":{"name":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"repo_url":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"flags":{"$ref":"#/definitions/cloudifyDatatypesHelmSetFlagsList","default":[]}},"required":["name","repo_url"]},"cloudifyDatatypesHelmSetFlagsList":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"value":{}}},"additionalProperties":false,"default":[]},"nodeTypeHelmBinaryProperties":{"type":"object","properties":{"helm_config":{"$ref":"#/definitions/cloudifyDatatypesHelmConfig"},"use_existing_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"installation_source":{"$ref":"#/definitions/cloudifyStringOrGetInput","default":"https://get.helm.sh/helm-v3.3.1-linux-amd64.tar.gz"}}},"nodeTypeHelmReleaseProperties":{"type":"object","properties":{"helm_config":{"$ref":"#/definitions/cloudifyDatatypesHelmConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"client_config":{"$ref":"#/definitions/cloudifyDatatypesHelmClientConfig"},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesHelmReleaseConfig"}},"required":["client_config","resource_config"]},"nodeTypeHelmReleaseInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["helm.cloudify_helm.tasks.install_release"]},"inputs":{"type":"object","properties":{"flags":{"$ref":"#/definitions/cloudifyDatatypesHelmSetFlagsList"}}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["helm.cloudify_helm.tasks.uninstall_release"]},"inputs":{"type":"object","properties":{"flags":{"$ref":"#/definitions/cloudifyDatatypesHelmSetFlagsList"}}}}}}}}},"nodeTypeHelmRepoProperties":{"type":"object","properties":{"helm_config":{"$ref":"#/definitions/cloudifyDatatypesHelmConfig"},"use_external_resource":{"$ref":"#/definitions/cloudifyBooleanOrGetInput","default":false},"resource_config":{"$ref":"#/definitions/cloudifyDatatypesHelmRepoConfig"}},"required":["resource_config"]},"nodeTypeHelmRepoInterfaces":{"type":"object","properties":{"cloudify.interfaces.lifecycle":{"type":"object","properties":{"start":{"type":"object","properties":{"implementation":{"type":"string","enum":["helm.cloudify_helm.tasks.add_repo"]},"inputs":{"type":"object","properties":{"flags":{"$ref":"#/definitions/cloudifyDatatypesHelmSetFlagsList"}}}}},"delete":{"type":"object","properties":{"implementation":{"type":"string","enum":["helm.cloudify_helm.tasks.remove_repo"]},"inputs":{"type":"object","properties":{"flags":{"$ref":"#/definitions/cloudifyDatatypesHelmSetFlagsList"}}}}}}}}},"cloudifyIntegerOrGetInput":{"anyOf":[{"type":"integer"},{"$ref":"#/definitions/cloudifyGetIntrinsicFunction"}]},"cloudifyBooleanOrGetInput":{"anyOf":[{"type":"boolean"},{"$ref":"#/definitions/cloudifyGetIntrinsicFunction"}]},"cloudifyStringOrGetInput":{"anyOf":[{"type":"string"},{"$ref":"#/definitions/cloudifyGetIntrinsicFunction"}]},"cloudifyGetIntrinsicFunction":{"anyOf":[{"$ref":"#/definitions/cloudifyGetInput"},{"$ref":"#/definitions/cloudifyGetSecret"},{"$ref":"#/definitions/cloudifyGetAttribute"},{"$ref":"#/definitions/cloudifyGetProperty"}]},"cloudifyGetAttribute":{"type":"object","properties":{"get_attribute":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}}},"cloudifyGetProperty":{"type":"object","properties":{"get_property":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}}},"cloudifyGetInput":{"type":"object","properties":{"get_input":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}}},"cloudifyGetSecret":{"type":"object","properties":{"get_secret":{"anyOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}}},"nodeTypeAWSInternetGateway":{"type":"object","properties":{"client_config":{"$ref":"#/definitions/awsClientConfig"}}},"awsClientConfig":{"type":"object","properties":{"aws_access_key_id":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"aws_secret_access_key":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"region_name":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}},"tags":{"type":"array","items":{"type":"object","properties":{"Key":{"$ref":"#/definitions/cloudifyStringOrGetInput"},"Value":{"$ref":"#/definitions/cloudifyStringOrGetInput"}}}},"nodeTemplateInterfaces":{"type":"object","patternProperties":{"":{"$ref":"#/definitions/nodeTemplateInterface"}}},"nodeTemplateInterface":{"type":"object","properties":{"configure":{"$ref":"#/definitions/nodeTemplateInterfaceAction"},"delete":{"$ref":"#/definitions/nodeTemplateInterfaceAction"}},"patternProperties":{"":{"$ref":"#/definitions/nodeTemplateInterfaceAction"}}},"nodeTemplateInterfaceAction":{"anyOf":[{"type":"string"},{"type":"object","properties":{"implementation":{"type":"string"},"inputs":{"type":"object"},"executor":{"type":"string","enum":["central_deployment_agent","host_agent"]},"max_retries":{"type":"number"},"retry_interval":{"type":"number"},"timeone":{"type":"number","default":0},"timeout_recoverable":{"type":"boolean","default":true}},"additionalProperties":false}]},"nodeTemplateRelationships":{"type":"array","items":{"$ref":"#/definitions/nodeTemplateRelationship"}},"nodeTemplateRelationship":{"type":"object","properties":{"type":{"type":"string"},"target":{"type":"string"},"connection_type":{"type":"string","enum":["all_to_all","all_to_one"]},"source_interfaces":{"type":"object"},"target_interfaces":{"type":"object"}},"required":["type"],"additionalProperties":false},"nodeTypes":{"type":"object","patternProperties":{"":{"$ref":"#/definitions/nodeType"}}},"nodeType":{"type":"object","properties":{"derived_from":{"type":"string"},"interfaces":{"type":"object"},"properties":{"type":"object"}}}}}