Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: Update avm/res/net-app/net-app-account - fix optional zone for volumes and specify protocolTypes options #4469

Open
wants to merge 9 commits into
base: main
Choose a base branch
from
92 changes: 42 additions & 50 deletions avm/res/net-app/net-app-account/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,7 @@ module netAppAccount 'br/public:avm/res/net-app/net-app-account:<version>' = {
size: 4398046511104
volumes: [
{
availabilityZone: '1'
dataProtection: {
backup: {
backupPolicyName: 'myBackupPolicy'
Expand Down Expand Up @@ -191,11 +192,9 @@ module netAppAccount 'br/public:avm/res/net-app/net-app-account:<version>' = {
]
subnetResourceId: '<subnetResourceId>'
usageThreshold: 107374182400
zones: [
1
]
}
{
availabilityZone: '1'
encryptionKeySource: '<encryptionKeySource>'
exportPolicy: {
rules: [
Expand Down Expand Up @@ -226,9 +225,6 @@ module netAppAccount 'br/public:avm/res/net-app/net-app-account:<version>' = {
smbNonBrowsable: 'Disabled'
subnetResourceId: '<subnetResourceId>'
usageThreshold: 107374182400
zones: [
1
]
}
]
}
Expand Down Expand Up @@ -346,6 +342,7 @@ module netAppAccount 'br/public:avm/res/net-app/net-app-account:<version>' = {
"size": 4398046511104,
"volumes": [
{
"availabilityZone": "1",
"dataProtection": {
"backup": {
"backupPolicyName": "myBackupPolicy",
Expand Down Expand Up @@ -388,12 +385,10 @@ module netAppAccount 'br/public:avm/res/net-app/net-app-account:<version>' = {
}
],
"subnetResourceId": "<subnetResourceId>",
"usageThreshold": 107374182400,
"zones": [
1
]
"usageThreshold": 107374182400
},
{
"availabilityZone": "1",
"encryptionKeySource": "<encryptionKeySource>",
"exportPolicy": {
"rules": [
Expand Down Expand Up @@ -423,10 +418,7 @@ module netAppAccount 'br/public:avm/res/net-app/net-app-account:<version>' = {
"smbEncryption": false,
"smbNonBrowsable": "Disabled",
"subnetResourceId": "<subnetResourceId>",
"usageThreshold": 107374182400,
"zones": [
1
]
"usageThreshold": 107374182400
}
]
},
Expand Down Expand Up @@ -546,6 +538,7 @@ param capacityPools = [
size: 4398046511104
volumes: [
{
availabilityZone: '1'
dataProtection: {
backup: {
backupPolicyName: 'myBackupPolicy'
Expand Down Expand Up @@ -589,11 +582,9 @@ param capacityPools = [
]
subnetResourceId: '<subnetResourceId>'
usageThreshold: 107374182400
zones: [
1
]
}
{
availabilityZone: '1'
encryptionKeySource: '<encryptionKeySource>'
exportPolicy: {
rules: [
Expand Down Expand Up @@ -624,9 +615,6 @@ param capacityPools = [
smbNonBrowsable: 'Disabled'
subnetResourceId: '<subnetResourceId>'
usageThreshold: 107374182400
zones: [
1
]
}
]
}
Expand Down Expand Up @@ -723,6 +711,7 @@ module netAppAccount 'br/public:avm/res/net-app/net-app-account:<version>' = {
size: 4398046511104
volumes: [
{
availabilityZone: '1'
encryptionKeySource: '<encryptionKeySource>'
exportPolicy: {
rules: [
Expand Down Expand Up @@ -756,11 +745,9 @@ module netAppAccount 'br/public:avm/res/net-app/net-app-account:<version>' = {
]
subnetResourceId: '<subnetResourceId>'
usageThreshold: 107374182400
zones: [
1
]
}
{
availabilityZone: '1'
encryptionKeySource: '<encryptionKeySource>'
name: 'nanaanfs3-vol-002'
networkFeatures: 'Standard'
Expand All @@ -769,9 +756,6 @@ module netAppAccount 'br/public:avm/res/net-app/net-app-account:<version>' = {
]
subnetResourceId: '<subnetResourceId>'
usageThreshold: 107374182400
zones: [
1
]
}
]
}
Expand Down Expand Up @@ -856,6 +840,7 @@ module netAppAccount 'br/public:avm/res/net-app/net-app-account:<version>' = {
"size": 4398046511104,
"volumes": [
{
"availabilityZone": "1",
"encryptionKeySource": "<encryptionKeySource>",
"exportPolicy": {
"rules": [
Expand Down Expand Up @@ -888,23 +873,18 @@ module netAppAccount 'br/public:avm/res/net-app/net-app-account:<version>' = {
}
],
"subnetResourceId": "<subnetResourceId>",
"usageThreshold": 107374182400,
"zones": [
1
]
"usageThreshold": 107374182400
},
{
"availabilityZone": "1",
"encryptionKeySource": "<encryptionKeySource>",
"name": "nanaanfs3-vol-002",
"networkFeatures": "Standard",
"protocolTypes": [
"NFSv3"
],
"subnetResourceId": "<subnetResourceId>",
"usageThreshold": 107374182400,
"zones": [
1
]
"usageThreshold": 107374182400
}
]
},
Expand Down Expand Up @@ -993,6 +973,7 @@ param capacityPools = [
size: 4398046511104
volumes: [
{
availabilityZone: '1'
encryptionKeySource: '<encryptionKeySource>'
exportPolicy: {
rules: [
Expand Down Expand Up @@ -1026,11 +1007,9 @@ param capacityPools = [
]
subnetResourceId: '<subnetResourceId>'
usageThreshold: 107374182400
zones: [
1
]
}
{
availabilityZone: '1'
encryptionKeySource: '<encryptionKeySource>'
name: 'nanaanfs3-vol-002'
networkFeatures: 'Standard'
Expand All @@ -1039,9 +1018,6 @@ param capacityPools = [
]
subnetResourceId: '<subnetResourceId>'
usageThreshold: 107374182400
zones: [
1
]
}
]
}
Expand Down Expand Up @@ -1616,6 +1592,7 @@ List of volumes to create in the capacity pool.

| Parameter | Type | Description |
| :-- | :-- | :-- |
| [`availabilityZone`](#parameter-capacitypoolsvolumesavailabilityzone) | string | Zone where the volume will be placed. |
| [`coolAccess`](#parameter-capacitypoolsvolumescoolaccess) | bool | If enabled (true) the pool can contain cool Access enabled volumes. |
| [`coolAccessRetrievalPolicy`](#parameter-capacitypoolsvolumescoolaccessretrievalpolicy) | string | Determines the data retrieval behavior from the cool tier to standard storage based on the read pattern for cool access enabled volumes (Default/Never/Read). |
| [`coolnessPeriod`](#parameter-capacitypoolsvolumescoolnessperiod) | int | Specifies the number of days after which data that is not accessed by clients will be tiered. |
Expand All @@ -1627,14 +1604,13 @@ List of volumes to create in the capacity pool.
| [`keyVaultPrivateEndpointResourceId`](#parameter-capacitypoolsvolumeskeyvaultprivateendpointresourceid) | string | The resource ID of the key vault private endpoint. |
| [`location`](#parameter-capacitypoolsvolumeslocation) | string | Location of the pool volume. |
| [`networkFeatures`](#parameter-capacitypoolsvolumesnetworkfeatures) | string | Network feature for the volume. |
| [`protocolTypes`](#parameter-capacitypoolsvolumesprotocoltypes) | array | Set of protocol types. |
| [`protocolTypes`](#parameter-capacitypoolsvolumesprotocoltypes) | array | Set of protocol types. Default value is `['NFSv3']`. If you are creating a dual-stack volume, set either `['NFSv3','CIFS']` or `['NFSv4.1','CIFS']`. |
| [`roleAssignments`](#parameter-capacitypoolsvolumesroleassignments) | array | Array of role assignments to create. |
| [`serviceLevel`](#parameter-capacitypoolsvolumesservicelevel) | string | The pool service level. Must match the one of the parent capacity pool. |
| [`smbContinuouslyAvailable`](#parameter-capacitypoolsvolumessmbcontinuouslyavailable) | bool | Enables continuously available share property for SMB volume. Only applicable for SMB volume. |
| [`smbEncryption`](#parameter-capacitypoolsvolumessmbencryption) | bool | Enables SMB encryption. Only applicable for SMB/DualProtocol volume. |
| [`smbNonBrowsable`](#parameter-capacitypoolsvolumessmbnonbrowsable) | string | Enables non-browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume. |
| [`volumeType`](#parameter-capacitypoolsvolumesvolumetype) | string | The type of the volume. DataProtection volumes are used for replication. |
| [`zones`](#parameter-capacitypoolsvolumeszones) | array | Zone where the volume will be placed. |

### Parameter: `capacityPools.volumes.name`

Expand All @@ -1657,6 +1633,21 @@ Maximum storage quota allowed for a file system in bytes.
- Required: Yes
- Type: int

### Parameter: `capacityPools.volumes.availabilityZone`

Zone where the volume will be placed.

- Required: No
- Type: string
- Allowed:
```Bicep
[
'1'
'2'
'3'
]
```

### Parameter: `capacityPools.volumes.coolAccess`

If enabled (true) the pool can contain cool Access enabled volumes.
Expand Down Expand Up @@ -2060,10 +2051,18 @@ Network feature for the volume.

### Parameter: `capacityPools.volumes.protocolTypes`

Set of protocol types.
Set of protocol types. Default value is `['NFSv3']`. If you are creating a dual-stack volume, set either `['NFSv3','CIFS']` or `['NFSv4.1','CIFS']`.

- Required: No
- Type: array
- Allowed:
```Bicep
[
'CIFS'
'NFSv3'
'NFSv4.1'
]
```

### Parameter: `capacityPools.volumes.roleAssignments`

Expand Down Expand Up @@ -2219,13 +2218,6 @@ The type of the volume. DataProtection volumes are used for replication.
- Required: No
- Type: string

### Parameter: `capacityPools.volumes.zones`

Zone where the volume will be placed.

- Required: No
- Type: array

### Parameter: `customerManagedKey`

The customer managed key definition.
Expand Down
4 changes: 2 additions & 2 deletions avm/res/net-app/net-app-account/backup-policies/main.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.33.13.18514",
"templateHash": "7141176618644423280"
"version": "0.33.93.31351",
"templateHash": "2748634922557584170"
},
"name": "Azure NetApp Files Backup Policy",
"description": "This module deploys a Backup Policy for Azure NetApp File."
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.33.13.18514",
"templateHash": "3948084235912412629"
"version": "0.33.93.31351",
"templateHash": "17452697444375969559"
},
"name": "Azure NetApp Files Volume Backup",
"description": "This module deploys a backup of a NetApp Files Volume."
Expand Down
8 changes: 4 additions & 4 deletions avm/res/net-app/net-app-account/backup-vault/main.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.33.13.18514",
"templateHash": "9738469557677047438"
"version": "0.33.93.31351",
"templateHash": "6704781490326075849"
},
"name": "Azure NetApp Files Volume Backup Vault",
"description": "This module deploys a NetApp Files Backup Vault."
Expand Down Expand Up @@ -144,8 +144,8 @@
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.33.13.18514",
"templateHash": "3948084235912412629"
"version": "0.33.93.31351",
"templateHash": "17452697444375969559"
},
"name": "Azure NetApp Files Volume Backup",
"description": "This module deploys a backup of a NetApp Files Volume."
Expand Down
36 changes: 26 additions & 10 deletions avm/res/net-app/net-app-account/capacity-pool/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -258,6 +258,7 @@ List of volumes to create in the capacity pool.

| Parameter | Type | Description |
| :-- | :-- | :-- |
| [`availabilityZone`](#parameter-volumesavailabilityzone) | string | Zone where the volume will be placed. |
| [`coolAccess`](#parameter-volumescoolaccess) | bool | If enabled (true) the pool can contain cool Access enabled volumes. |
| [`coolAccessRetrievalPolicy`](#parameter-volumescoolaccessretrievalpolicy) | string | Determines the data retrieval behavior from the cool tier to standard storage based on the read pattern for cool access enabled volumes (Default/Never/Read). |
| [`coolnessPeriod`](#parameter-volumescoolnessperiod) | int | Specifies the number of days after which data that is not accessed by clients will be tiered. |
Expand All @@ -269,14 +270,13 @@ List of volumes to create in the capacity pool.
| [`keyVaultPrivateEndpointResourceId`](#parameter-volumeskeyvaultprivateendpointresourceid) | string | The resource ID of the key vault private endpoint. |
| [`location`](#parameter-volumeslocation) | string | Location of the pool volume. |
| [`networkFeatures`](#parameter-volumesnetworkfeatures) | string | Network feature for the volume. |
| [`protocolTypes`](#parameter-volumesprotocoltypes) | array | Set of protocol types. |
| [`protocolTypes`](#parameter-volumesprotocoltypes) | array | Set of protocol types. Default value is `['NFSv3']`. If you are creating a dual-stack volume, set either `['NFSv3','CIFS']` or `['NFSv4.1','CIFS']`. |
| [`roleAssignments`](#parameter-volumesroleassignments) | array | Array of role assignments to create. |
| [`serviceLevel`](#parameter-volumesservicelevel) | string | The pool service level. Must match the one of the parent capacity pool. |
| [`smbContinuouslyAvailable`](#parameter-volumessmbcontinuouslyavailable) | bool | Enables continuously available share property for SMB volume. Only applicable for SMB volume. |
| [`smbEncryption`](#parameter-volumessmbencryption) | bool | Enables SMB encryption. Only applicable for SMB/DualProtocol volume. |
| [`smbNonBrowsable`](#parameter-volumessmbnonbrowsable) | string | Enables non-browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume. |
| [`volumeType`](#parameter-volumesvolumetype) | string | The type of the volume. DataProtection volumes are used for replication. |
| [`zones`](#parameter-volumeszones) | array | Zone where the volume will be placed. |

### Parameter: `volumes.name`

Expand All @@ -299,6 +299,21 @@ Maximum storage quota allowed for a file system in bytes.
- Required: Yes
- Type: int

### Parameter: `volumes.availabilityZone`

Zone where the volume will be placed.

- Required: No
- Type: string
- Allowed:
```Bicep
[
'1'
'2'
'3'
]
```

### Parameter: `volumes.coolAccess`

If enabled (true) the pool can contain cool Access enabled volumes.
Expand Down Expand Up @@ -702,10 +717,18 @@ Network feature for the volume.

### Parameter: `volumes.protocolTypes`

Set of protocol types.
Set of protocol types. Default value is `['NFSv3']`. If you are creating a dual-stack volume, set either `['NFSv3','CIFS']` or `['NFSv4.1','CIFS']`.

- Required: No
- Type: array
- Allowed:
```Bicep
[
'CIFS'
'NFSv3'
'NFSv4.1'
]
```

### Parameter: `volumes.roleAssignments`

Expand Down Expand Up @@ -861,13 +884,6 @@ The type of the volume. DataProtection volumes are used for replication.
- Required: No
- Type: string

### Parameter: `volumes.zones`

Zone where the volume will be placed.

- Required: No
- Type: array

## Outputs

| Output | Type | Description |
Expand Down
Loading