

# VNFD template
<a name="vnfd-template"></a>

Defines a virtual network function descriptor (VNFD) template.

## Syntax
<a name="vnfd-syntax"></a>

```
tosca_definitions_version: tnb_simple_yaml_1_0

topology_template:

  inputs:
    SampleInputParameter:
      type: String
      description: "Sample parameter description"
      default: "DefaultSampleValue"

  node\$1templates:
    SampleNode1: tosca.nodes.AWS.VNF
```

## Topology template
<a name="vnfd-topology-template"></a>

 `node_templates`    
The TOSCA AWS Nodes. The possible nodes are:  
+ [AWS.VNF](node-vnf.md)
+ [AWS.Artifacts.Helm](node-helm.md)

# AWS.VNF
<a name="node-vnf"></a>

Defines an AWS virtual network function (VNF) node.

## Syntax
<a name="vnf-syntax"></a>

```
tosca.nodes.AWS.VNF:
  properties:
    descriptor\$1id: String
    descriptor\$1version: String
    descriptor\$1name: String
    provider: String
  requirements:
    helm: String
```

## Properties
<a name="vnf-properties"></a>

 `descriptor_id`    
The UUID of the descriptor.  
Required: Yes  
Type: String  
Pattern: `[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}`

 `descriptor_version`    
The version of the VNFD.  
Required: Yes  
Type: String  
Pattern: `^[0-9]{1,5}\\.[0-9]{1,5}\\.[0-9]{1,5}.*`

 `descriptor_name`    
The name of the descriptor.  
Required: Yes  
Type: String

 `provider`    
The author of the VNFD.  
Required: Yes  
Type: String

## Requirements
<a name="vnf-requirements"></a>

 `helm`    
The Helm directory defining container artifacts. This is a reference to [AWS.Artifacts.Helm](node-helm.md).   
Required: Yes  
Type: String

## Example
<a name="vnf-example"></a>

```
SampleVNF:
  type: tosca.nodes.AWS.VNF
  properties:
    descriptor_id: "6a792e0c-be2a-45fa-989e-5f89d94ca898"
    descriptor_version: "1.0.0"
    descriptor_name: "Test VNF Template"
    provider: "Operator"
  requirements:
    helm: SampleHelm
```

# AWS.Artifacts.Helm
<a name="node-helm"></a>

Defines an AWS Helm Node.

## Syntax
<a name="node-helm-syntax"></a>

```
tosca.nodes.AWS.Artifacts.Helm:
  properties:
    implementation: String
```

## Properties
<a name="node-helm-properties"></a>

 `implementation`    
The local directory that contains the Helm chart within the CSAR package.  
Required: Yes  
Type: String

## Example
<a name="node-helm-example"></a>

```
SampleHelm:
  type: tosca.nodes.AWS.Artifacts.Helm
  properties:
    implementation: "./vnf-helm"
```