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

azurerm_netapp_volume - support for smb_access_based_enumeration and smb_non_browsable #24514

Conversation

Orexii
Copy link
Contributor

@Orexii Orexii commented Jan 16, 2024

This PR provides the following:

Azure NetApp Files Volume's Non-browsable shares implementation
Azure NetApp Files Volume's Access-based enumeration implementation
Documentation for both of the above features

Please note that the failing test cases below are external to the changes presented in this PR. The failures presently exist on the main branch as well. The failing test cases fall into two error categories:

  1. Pandora related polling issue, tracked in 3791. This affects tests:
    TestAccNetAppVolume_volEncryptionCmkUserAssigned
    TestAccNetAppVolume_updateExportPolicyRule
    TestAccNetAppVolume_update
  2. Seemingly api change related issue causing changes in the snapshot_directory_visible property of a volume to be ignored, and consequently casing the test to fail:
    TestAccNetAppVolume_crossRegionReplication
user [ ~/go/src/github.com/terraform-providers/terraform-provider-azurerm ]$ make acctests SERVICE='netapp' TESTARGS=' -parallel 5 -run=TestAccNetAppVolume_' TESTTIMEOUT='1200m'
==> Checking that code complies with gofmt requirements...
==> Checking that Custom Timeouts are used...
==> Checking that acceptance test packages are used...
TF_ACC=1 go test -v ./internal/services/netapp -parallel 5 -run=TestAccNetAppVolume_ -timeout 1200m -ldflags="-X=github.com/hashicorp/terraform-provider-azurerm/version.ProviderVersion=acc"
=== RUN   TestAccNetAppVolume_basic
=== PAUSE TestAccNetAppVolume_basic
=== RUN   TestAccNetAppVolume_availabilityZone
=== PAUSE TestAccNetAppVolume_availabilityZone
=== RUN   TestAccNetAppVolume_nfsv41
=== PAUSE TestAccNetAppVolume_nfsv41
=== RUN   TestAccNetAppVolume_standardNetworkFeature
=== PAUSE TestAccNetAppVolume_standardNetworkFeature
=== RUN   TestAccNetAppVolume_snapshotPolicy
=== PAUSE TestAccNetAppVolume_snapshotPolicy
=== RUN   TestAccNetAppVolume_crossRegionReplication
=== PAUSE TestAccNetAppVolume_crossRegionReplication
=== RUN   TestAccNetAppVolume_nfsv3FromSnapshot
=== PAUSE TestAccNetAppVolume_nfsv3FromSnapshot
=== RUN   TestAccNetAppVolume_nfsv3SnapshotDirectoryVisibleFalse
=== PAUSE TestAccNetAppVolume_nfsv3SnapshotDirectoryVisibleFalse
=== RUN   TestAccNetAppVolume_nfsv3SnapshotDirectoryVisibleTrue
=== PAUSE TestAccNetAppVolume_nfsv3SnapshotDirectoryVisibleTrue
=== RUN   TestAccNetAppVolume_requiresImport
=== PAUSE TestAccNetAppVolume_requiresImport
=== RUN   TestAccNetAppVolume_complete
=== PAUSE TestAccNetAppVolume_complete
=== RUN   TestAccNetAppVolume_update
=== PAUSE TestAccNetAppVolume_update
=== RUN   TestAccNetAppVolume_updateSubnet
=== PAUSE TestAccNetAppVolume_updateSubnet
=== RUN   TestAccNetAppVolume_updateExportPolicyRule
=== PAUSE TestAccNetAppVolume_updateExportPolicyRule
=== RUN   TestAccNetAppVolume_volEncryptionCmkUserAssigned
=== PAUSE TestAccNetAppVolume_volEncryptionCmkUserAssigned
=== RUN   TestAccNetAppVolume_volEncryptionCmkSystemAssigned
=== PAUSE TestAccNetAppVolume_volEncryptionCmkSystemAssigned
=== CONT  TestAccNetAppVolume_basic
=== CONT  TestAccNetAppVolume_nfsv3SnapshotDirectoryVisibleTrue
=== CONT  TestAccNetAppVolume_snapshotPolicy
=== CONT  TestAccNetAppVolume_standardNetworkFeature
=== CONT  TestAccNetAppVolume_nfsv41
--- PASS: TestAccNetAppVolume_nfsv3SnapshotDirectoryVisibleTrue (1974.94s)
=== CONT  TestAccNetAppVolume_availabilityZone
--- PASS: TestAccNetAppVolume_standardNetworkFeature (2034.46s)
=== CONT  TestAccNetAppVolume_nfsv3FromSnapshot
--- PASS: TestAccNetAppVolume_snapshotPolicy (2102.35s)
=== CONT  TestAccNetAppVolume_nfsv3SnapshotDirectoryVisibleFalse
--- PASS: TestAccNetAppVolume_nfsv41 (2180.75s)
=== CONT  TestAccNetAppVolume_updateSubnet
--- PASS: TestAccNetAppVolume_basic (2233.64s)
=== CONT  TestAccNetAppVolume_volEncryptionCmkSystemAssigned
--- PASS: TestAccNetAppVolume_availabilityZone (1684.80s)
=== CONT  TestAccNetAppVolume_volEncryptionCmkUserAssigned
    testcase.go:113: Step 1/2 error: Error running apply: exit status 1

        Error: updating Net App Account (Subscription: "<sub id>"
        Resource Group Name: "acctestRG-netapp-240215113651003320"
        Net App Account Name: "acctest-NetAppAccount-240215113651003320"): polling after AccountsUpdate: `result.Status` was nil/empty - `op.Status` was "Patching" / `op.Properties.ProvisioningState` was ""

          with azurerm_netapp_account_encryption.test,
          on terraform_plugin_test.tf line 119, in resource "azurerm_netapp_account_encryption" "test":
         119: resource "azurerm_netapp_account_encryption" "test" {

        updating Net App Account (Subscription:
        "<sub id>"
        Resource Group Name: "acctestRG-netapp-240215113651003320"
        Net App Account Name: "acctest-NetAppAccount-240215113651003320"): polling
        after AccountsUpdate: `result.Status` was nil/empty - `op.Status` was
        "Patching" / `op.Properties.ProvisioningState` was ""
--- FAIL: TestAccNetAppVolume_volEncryptionCmkUserAssigned (253.63s)
=== CONT  TestAccNetAppVolume_updateExportPolicyRule
--- PASS: TestAccNetAppVolume_nfsv3SnapshotDirectoryVisibleFalse (2021.81s)
=== CONT  TestAccNetAppVolume_complete
--- PASS: TestAccNetAppVolume_volEncryptionCmkSystemAssigned (1982.90s)
=== CONT  TestAccNetAppVolume_update
=== NAME  TestAccNetAppVolume_updateExportPolicyRule
    testcase.go:113: Step 3/4 error: Error running apply: exit status 1

        Error: updating Volume (Subscription: "<sub id>"
        Resource Group Name: "acctestRG-netapp-240215113651003253"
        Net App Account Name: "acctest-NetAppAccount-240215113651003253"
        Capacity Pool Name: "acctest-NetAppPool-240215113651003253"
        Volume Name: "acctest-NetAppVolume-240215113651003253"): polling after Update: `result.Status` was nil/empty - `op.Status` was "Patching" / `op.Properties.ProvisioningState` was ""

          with azurerm_netapp_volume.test,
          on terraform_plugin_test.tf line 93, in resource "azurerm_netapp_volume" "test":
          93: resource "azurerm_netapp_volume" "test" {

    testing_new.go:90: Error running post-test destroy, there may be dangling resources: exit status 1

        Error: deleting replicate Volume (Subscription: "<sub id>"
        Resource Group Name: "acctestRG-netapp-240215113651003253"
        Net App Account Name: "acctest-NetAppAccount-240215113651003253"
        Capacity Pool Name: "acctest-NetAppPool-240215113651003253"
        Volume Name: "acctest-NetAppVolume-240215113651003253"): unexpected status 409 with error: RequestConflict: Cannot modify resource with id '/subscriptions/<sub id>/resourceGroups/acctestRG-netapp-240215113651003253/providers/Microsoft.NetApp/netAppAccounts/acctest-NetAppAccount-240215113651003253/capacityPools/acctest-NetAppPool-240215113651003253/volumes/acctest-NetAppVolume-240215113651003253' because the resource entity provisioning state is not terminal. Please wait for the provisioning state to become terminal and then retry the request.

--- FAIL: TestAccNetAppVolume_updateExportPolicyRule (495.65s)
=== CONT  TestAccNetAppVolume_requiresImport
--- PASS: TestAccNetAppVolume_nfsv3FromSnapshot (2865.77s)
=== CONT  TestAccNetAppVolume_crossRegionReplication
=== NAME  TestAccNetAppVolume_update
    testcase.go:113: Step 3/4 error: Error running apply: exit status 1

        Error: updating Volume (Subscription: "<sub id>"
        Resource Group Name: "acctestRG-netapp-240215113651009721"
        Net App Account Name: "acctest-NetAppAccount-240215113651009721"
        Capacity Pool Name: "acctest-NetAppPool-240215113651009721"
        Volume Name: "acctest-NetAppVolume-240215113651009721"): polling after Update: `result.Status` was nil/empty - `op.Status` was "Patching" / `op.Properties.ProvisioningState` was ""

          with azurerm_netapp_volume.test,
          on terraform_plugin_test.tf line 105, in resource "azurerm_netapp_volume" "test":
         105: resource "azurerm_netapp_volume" "test" {

    testing_new.go:90: Error running post-test destroy, there may be dangling resources: exit status 1

        Error: deleting replicate Volume (Subscription: "<sub id>"
        Resource Group Name: "acctestRG-netapp-240215113651009721"
        Net App Account Name: "acctest-NetAppAccount-240215113651009721"
        Capacity Pool Name: "acctest-NetAppPool-240215113651009721"
        Volume Name: "acctest-NetAppVolume-240215113651009721"): unexpected status 409 with error: RequestConflict: Cannot modify resource with id '/subscriptions/<sub id>/resourceGroups/acctestRG-netapp-240215113651009721/providers/Microsoft.NetApp/netAppAccounts/acctest-NetAppAccount-240215113651009721/capacityPools/acctest-NetAppPool-240215113651009721/volumes/acctest-NetAppVolume-240215113651009721' because the resource entity provisioning state is not terminal. Please wait for the provisioning state to become terminal and then retry the request.

--- FAIL: TestAccNetAppVolume_update (1266.22s)
--- PASS: TestAccNetAppVolume_updateSubnet (3849.00s)
--- PASS: TestAccNetAppVolume_complete (2269.47s)
--- PASS: TestAccNetAppVolume_requiresImport (2048.56s)
=== NAME  TestAccNetAppVolume_crossRegionReplication
    testcase.go:113: Step 1/2 error: After applying this test step, the plan was not empty.
        stdout:


        Terraform used the selected providers to generate the following execution
        plan. Resource actions are indicated with the following symbols:
          ~ update in-place

        Terraform will perform the following actions:

          # azurerm_netapp_volume.test_secondary will be updated in-place
          ~ resource "azurerm_netapp_volume" "test_secondary" {
                id                                   = "/subscriptions/<sub id>/resourceGroups/acctestRG-netapp-240215113651001833/providers/Microsoft.NetApp/netAppAccounts/acctest-NetAppAccount-secondary-240215113651001833/capacityPools/acctest-NetAppPool-secondary-240215113651001833/volumes/acctest-NetAppVolume-secondary-240215113651001833"
                name                                 = "acctest-NetAppVolume-secondary-240215113651001833"
              ~ snapshot_directory_visible           = true -> false
                tags                                 = {
                    "CreatedOnDate"    = "2022-07-08T23:50:21Z"
                    "SkipASMAzSecPack" = "true"
                }
                # (17 unchanged attributes hidden)

                # (2 unchanged blocks hidden)
            }

        Plan: 0 to add, 1 to change, 0 to destroy.
--- FAIL: TestAccNetAppVolume_crossRegionReplication (2582.24s)
FAIL
FAIL    github.com/hashicorp/terraform-provider-azurerm/internal/services/netapp        7482.485s
FAIL
make: *** [GNUmakefile:99: acctests] Error 1
user [ ~/go/src/github.com/terraform-providers/terraform-provider-azurerm ]$

@Orexii Orexii marked this pull request as draft January 17, 2024 18:57
…n_enabled for create and update volume operations
@Orexii Orexii force-pushed the malmorga/add_smbNonBrowsable_and_smbAccessBasedEnumeration branch from ca5f353 to d475c36 Compare January 22, 2024 23:38
Copy link
Contributor

@paulomarquesc paulomarquesc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the latest changes.

@Orexii Orexii marked this pull request as ready for review February 16, 2024 00:42
Copy link
Collaborator

@katbyte katbyte left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks or the pr @Orexii - having a hard time running these tests due to quotas:

 Net App Account Name: "acctest-NetAppAccount-240220011629641600"
        Capacity Pool Name: "acctest-NetAppPool-240220011629641600"): performing PoolsCreateOrUpdate: unexpected status 409 with error: SizeQuotaExceeded: Creating a new capacityPool of size 8 TiB would exceed the regional quota of 25 TiB. Current usage is 24 TiB. To learn more about Azure NetApp Files capacity constraints, see Resource limits for Azure NetApp Files https://docs.microsoft.com/azure/azure-netapp-files/azure-netapp-files-resource-limits

is it possible to provision resources with a smaller quota?

@Orexii
Copy link
Contributor Author

Orexii commented Feb 20, 2024

Thanks or the pr @Orexii - having a hard time running these tests due to quotas:

 Net App Account Name: "acctest-NetAppAccount-240220011629641600"
        Capacity Pool Name: "acctest-NetAppPool-240220011629641600"): performing PoolsCreateOrUpdate: unexpected status 409 with error: SizeQuotaExceeded: Creating a new capacityPool of size 8 TiB would exceed the regional quota of 25 TiB. Current usage is 24 TiB. To learn more about Azure NetApp Files capacity constraints, see Resource limits for Azure NetApp Files https://docs.microsoft.com/azure/azure-netapp-files/azure-netapp-files-resource-limits

is it possible to provision resources with a smaller quota?

@katbyte the error message seems to indicate that you already have capacity pool resources consuming quota for that subscription in the region the test is running. This may be due to resources you have already created (or someone else with access to the subscription), or that you are running tests in parallel and therefore consuming more than the quota for that region. Unfortunately changing the test to use a smaller capacity pool is not possible, however you have two options:

  1. Request more quota for that region in your subscription. See the link provided.
  2. Remove already existing capacity pools in the subscription and run tests sequentially and not in parallel, e.g.:
    make acctests SERVICE='netapp' TESTARGS=' -parallel 1 -run=TestAccNetAppVolume_' TESTTIMEOUT='1200m'

@katbyte
Copy link
Collaborator

katbyte commented Feb 21, 2024

@Orexii - i tried reaching out to increase quota and am waiting for the capacity team to get back to us

Copy link
Collaborator

@katbyte katbyte left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have some test failures, also could you please add these properties to a test?

------- Stdout: -------
=== RUN   TestAccNetAppVolumeGroupSapHanaDataSource_basic
=== PAUSE TestAccNetAppVolumeGroupSapHanaDataSource_basic
=== CONT  TestAccNetAppVolumeGroupSapHanaDataSource_basic
    testing_new.go:90: Error running post-test destroy, there may be dangling resources: exit status 1
        
        Error: deleting `volume`: deleting Volume (Subscription: "*******"
        Resource Group Name: "acctestRG-netapp-240221201535290485"
        Net App Account Name: "acctest-NetAppAccount-240221201535290485"
        Capacity Pool Name: "acctest-NetAppPool-240221201535290485"
        Volume Name: "acctest-NetAppVolume-5-240221201535290485"): performing Delete: unexpected status 409 with error: RequestConflict: Cannot modify resource with id '/subscriptions/*******/resourceGroups/acctestRG-netapp-240221201535290485/providers/Microsoft.NetApp/netAppAccounts/acctest-NetAppAccount-240221201535290485/capacityPools/acctest-NetAppPool-240221201535290485/volumes/acctest-NetAppVolume-5-240221201535290485' because the resource entity provisioning state is not terminal. Please wait for the provisioning state to become terminal and then retry the request.
        
        deleting `volume`: deleting Volume (Subscription:
        "*******"
        Resource Group Name: "acctestRG-netapp-240221201535290485"
        Net App Account Name: "acctest-NetAppAccount-240221201535290485"
        Capacity Pool Name: "acctest-NetAppPool-240221201535290485"
        Volume Name: "acctest-NetAppVolume-5-240221201535290485"): performing Delete:
        unexpected status 409 with error: RequestConflict: Cannot modify resource
        with id
        '/subscriptions/*******/resourceGroups/acctestRG-netapp-240221201535290485/providers/Microsoft.NetApp/netAppAccounts/acctest-NetAppAccount-240221201535290485/capacityPools/acctest-NetAppPool-240221201535290485/volumes/acctest-NetAppVolume-5-240221201535290485'
        because the resource entity provisioning state is not terminal. Please wait
        for the provisioning state to become terminal and then retry the request.
--- FAIL: TestAccNetAppVolumeGroupSapHanaDataSource_basic (1073.12s)
FAIL

@Orexii
Copy link
Contributor Author

Orexii commented Feb 22, 2024

Have some test failures, also could you please add these properties to a test?

------- Stdout: -------
=== RUN   TestAccNetAppVolumeGroupSapHanaDataSource_basic
=== PAUSE TestAccNetAppVolumeGroupSapHanaDataSource_basic
=== CONT  TestAccNetAppVolumeGroupSapHanaDataSource_basic
    testing_new.go:90: Error running post-test destroy, there may be dangling resources: exit status 1
        
        Error: deleting `volume`: deleting Volume (Subscription: "*******"
        Resource Group Name: "acctestRG-netapp-240221201535290485"
        Net App Account Name: "acctest-NetAppAccount-240221201535290485"
        Capacity Pool Name: "acctest-NetAppPool-240221201535290485"
        Volume Name: "acctest-NetAppVolume-5-240221201535290485"): performing Delete: unexpected status 409 with error: RequestConflict: Cannot modify resource with id '/subscriptions/*******/resourceGroups/acctestRG-netapp-240221201535290485/providers/Microsoft.NetApp/netAppAccounts/acctest-NetAppAccount-240221201535290485/capacityPools/acctest-NetAppPool-240221201535290485/volumes/acctest-NetAppVolume-5-240221201535290485' because the resource entity provisioning state is not terminal. Please wait for the provisioning state to become terminal and then retry the request.
        
        deleting `volume`: deleting Volume (Subscription:
        "*******"
        Resource Group Name: "acctestRG-netapp-240221201535290485"
        Net App Account Name: "acctest-NetAppAccount-240221201535290485"
        Capacity Pool Name: "acctest-NetAppPool-240221201535290485"
        Volume Name: "acctest-NetAppVolume-5-240221201535290485"): performing Delete:
        unexpected status 409 with error: RequestConflict: Cannot modify resource
        with id
        '/subscriptions/*******/resourceGroups/acctestRG-netapp-240221201535290485/providers/Microsoft.NetApp/netAppAccounts/acctest-NetAppAccount-240221201535290485/capacityPools/acctest-NetAppPool-240221201535290485/volumes/acctest-NetAppVolume-5-240221201535290485'
        because the resource entity provisioning state is not terminal. Please wait
        for the provisioning state to become terminal and then retry the request.
--- FAIL: TestAccNetAppVolumeGroupSapHanaDataSource_basic (1073.12s)
FAIL

@katbyte could you please verify once more that the TestAccNetAppVolumeGroupSapHanaDataSource_basic test does indeed fail on your end? Could you possibly also verify with a colleague that failures are not local to solely your dev environment? The test does not fail on my end, and I've ran it several times:

malmorga@ZEPHYRUS-M16:~/go/src/github.com/terraform-providers/terraform-provider-azurerm$ git branch
  main
* malmorga/add_smbNonBrowsable_and_smbAccessBasedEnumeration
malmorga@ZEPHYRUS-M16:~/go/src/github.com/terraform-providers/terraform-provider-azurerm$ go version
go version go1.21.6 linux/amd64
malmorga@ZEPHYRUS-M16:~/go/src/github.com/terraform-providers/terraform-provider-azurerm$ terraform version
Terraform v1.7.4
on linux_amd64
malmorga@ZEPHYRUS-M16:~/go/src/github.com/terraform-providers/terraform-provider-azurerm$ make build
==> Checking that code complies with gofmt requirements...
==> Checking that Custom Timeouts are used...
==> Checking that acceptance test packages are used...
go generate ./internal/services/...
go generate ./internal/provider/
go install
malmorga@ZEPHYRUS-M16:~/go/src/github.com/terraform-providers/terraform-provider-azurerm$ go build
malmorga@ZEPHYRUS-M16:~/go/src/github.com/terraform-providers/terraform-provider-azurerm$ make acctests SERVICE='netapp' TESTARGS=' -parallel 5 -run=TestAccNetAppVolumeGroupSapHanaDataSource_basic' TESTTIMEOUT='1200m'
==> Checking that code complies with gofmt requirements...
==> Checking that Custom Timeouts are used...
==> Checking that acceptance test packages are used...
TF_ACC=1 go test -v ./internal/services/netapp -parallel 5 -run=TestAccNetAppVolumeGroupSapHanaDataSource_basic -timeout 1200m -ldflags="-X=github.com/hashicorp/terraform-provider-azurerm/version.ProviderVersion=acc"
=== RUN   TestAccNetAppVolumeGroupSapHanaDataSource_basic
=== PAUSE TestAccNetAppVolumeGroupSapHanaDataSource_basic
=== CONT  TestAccNetAppVolumeGroupSapHanaDataSource_basic
--- PASS: TestAccNetAppVolumeGroupSapHanaDataSource_basic (1637.41s)
PASS
ok      github.com/hashicorp/terraform-provider-azurerm/internal/services/netapp        1637.420s
malmorga@ZEPHYRUS-M16:~/go/src/github.com/terraform-providers/terraform-provider-azurerm$

@Orexii
Copy link
Contributor Author

Orexii commented Feb 22, 2024

@katbyte Historically there are no SMB-based volume tests in this repo due to requirement of a domain controller needing to be deployed and configured in addition to other complexities required to test SMB-based volume features. It is unfeasible at the moment to mitigate this historical lack of SMB-based volume testing in this repo within this PR. An internal ticket can be made to address this repo's SMB-based volume's testing deficiency at a later time

@katbyte
Copy link
Collaborator

katbyte commented Feb 23, 2024

@Orexii - this is running in our test subscription which runs nightly tests, so it has to work in this environment.

@Orexii
Copy link
Contributor Author

Orexii commented Feb 23, 2024

@Orexii - this is running in our test subscription which runs nightly tests, so it has to work in this environment.

@katbyte can you please verify that the same test, TestAccNetAppVolumeGroupSapHanaDataSource_basic, succeeds in your main branch, but fails in the malmorga/add_smbNonBrowsable_and_smbAccessBasedEnumeration branch? Your output from the failing test does not seem to clearly indicate that changes in this PR are the cause of the test's failures, especially considering that the failures are not occurring outside of your test environment. The changes in this PR should not affect volume groups at all, which leads me to believe that the failures you're experiencing may be transient or already exists if you were to run the same test in your main branch within the test environment.

If I had access to your test sub/environment, this is what I would do:

  1. Run the test TestAccNetAppVolumeGroupSapHanaDataSource_basic again on the malmorga/add_smbNonBrowsable_and_smbAccessBasedEnumeration branch to ensure the failure is not transient.
  2. If the failure persists, run the same test TestAccNetAppVolumeGroupSapHanaDataSource_basic on the main branch in the exact same environment to ensure that the failures are as a result of changes in the malmorga/add_smbNonBrowsable_and_smbAccessBasedEnumeration branch.

If you could please attempt the above steps to ensure that the error you're receiving is pertinent to this PR, I would greatly appreciate it.

Also, if you could please respond to my earlier comment regarding this repo's lack of SMB-based volume testing, that would be spectacular as well. Thanks

Copy link
Collaborator

@katbyte katbyte left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🎃

@katbyte katbyte merged commit 1ba187c into hashicorp:main Feb 26, 2024
39 checks passed
@katbyte katbyte changed the title Add smb_access_based_enumeration and smb_non_browsable azurerm_netapp_volume - support for smb_access_based_enumeration and smb_non_browsable Feb 26, 2024
@github-actions github-actions bot added this to the v3.94.0 milestone Feb 26, 2024
katbyte added a commit that referenced this pull request Feb 26, 2024
rizkybiz pushed a commit to rizkybiz/terraform-provider-azurerm that referenced this pull request Feb 29, 2024
* Implemented smb_non_browsable_enabled and smb_access_based_enumeration_enabled for create and update volume operations

* Updated documentation to include smb_non_browsable_enabled and smb_access_based_enumeration_enabled

* Added smb_non_browsable_enabled and smb_access_based_enumeration_enabled to the data source

* Addressed PR comments

---------

Co-authored-by: Malcolm Morgan <[email protected]>
rizkybiz pushed a commit to rizkybiz/terraform-provider-azurerm that referenced this pull request Feb 29, 2024
lemeurherve pushed a commit to jenkins-infra/azure that referenced this pull request Mar 11, 2024
<Actions>
<action
id="f410411e63aff4bb73a81c2aec1d373cf8a903e63b30dee2006b0030d8a94cc8">
        <h3>Bump Terraform `azurerm` provider version</h3>
<details
id="1d9343c012f5434ac9fe8a98135bae3667b399259be16d9b14302ea3bd424a24">
            <summary>Update Terraform lock file</summary>
<p>changes detected:&#xA;&#x9;&#34;hashicorp/azurerm&#34; updated from
&#34;3.93.0&#34; to &#34;3.94.0&#34; in file
&#34;.terraform.lock.hcl&#34;</p>
            <details>
                <summary>3.94.0</summary>
<pre>Changelog retrieved
from:&#xA;&#x9;https://github.com/hashicorp/terraform-provider-azurerm/releases/tag/v3.94.0&#xA;FEATURES:&#xA;&#xA;*
**New Resource**: `azurerm_kubernetes_fleet_update_run`
([#24813](https://github.com/hashicorp/terraform-provider-azurerm/issues/24813))&#xA;&#xA;ENHANCEMENTS:&#xA;&#xA;*
dependencies: updating to `v0.20240228.1142829` of
`github.com/hashicorp/go-azure-sdk`
([#25081](hashicorp/terraform-provider-azurerm#25081
`servicefabric`: updating to use the transport layer from
`hashicorp/go-azure-sdk` rather than `Azure/go-autorest`
([#25002](hashicorp/terraform-provider-azurerm#25002
`springcloud`: updating to API Version `2024-01-01-preview`
([#24937](hashicorp/terraform-provider-azurerm#24937
`securitycenter`: updating to use the transport layer from
`hashicorp/go-azure-sdk` rather than `Azure/go-autorest`
([#25081](hashicorp/terraform-provider-azurerm#25081
Data Source: `azurerm_storage_table_entities` - support for `select`
([#24987](hashicorp/terraform-provider-azurerm#24987
Data Source: `azurerm_netapp_volume` - support for the
`smb_access_based_enumeration` and `smb_non_browsable` properties
([#24514](hashicorp/terraform-provider-azurerm#24514
`azurerm_cosmosdb_account` - add support for the `minimal_tls_version`
property
([#24966](hashicorp/terraform-provider-azurerm#24966
`azurerm_federated_identity_credential` - the federated credentials can
now be changed without creating a new resource
([#25003](hashicorp/terraform-provider-azurerm#25003
`azurerm_kubernetes_cluster` - support for the
`current_kubernetes_version` property
([#25079](hashicorp/terraform-provider-azurerm#25079
`azurerm_kubernetes_cluster` - private DNS is now allowed for the
`web_app_routing` property
([#25038](hashicorp/terraform-provider-azurerm#25038
`azurerm_kubernetes_cluster` - migration between different
`outbound_type`s is now allowed
([#25021](hashicorp/terraform-provider-azurerm#25021
`azurerm_mssql_database` - support for the `recovery_point_id` and
`restore_long_term_retention_backup_id` properties
([#24904](hashicorp/terraform-provider-azurerm#24904
`azurerm_linux_virtual_machine` - support for the
`automatic_upgrade_enabled`, `disk_controller_type`,
`os_image_notification`, `treat_failure_as_deployment_failure_enabled`,
and `vm_agent_platform_updates_enabled`properties
([#23394](hashicorp/terraform-provider-azurerm#23394
`azurerm_nginx_deployment` - support for the `automatic_upgrade_channel`
property
([#24867](hashicorp/terraform-provider-azurerm#24867
`azurerm_netapp_volume` - support for the `smb_access_based_enumeration`
and `smb_non_browsable` properties
([#24514](hashicorp/terraform-provider-azurerm#24514
`azurerm_netapp_pool` - support for the `encryption_type` property
([#24993](hashicorp/terraform-provider-azurerm#24993
`azurerm_role_definition` - upgrade to the API version
`2022-05-01-preview`
([#25008](hashicorp/terraform-provider-azurerm#25008
`azurerm_redis_cache` - allow AAD auth for all SKUs
([#25006](hashicorp/terraform-provider-azurerm#25006
`azurerm_sql_managed_instance` - support for the
`zone_redundant_enabled` property
([#25089](hashicorp/terraform-provider-azurerm#25089
`azurerm_spring_cloud_gateway` - support for the
`application_performance_monitoring_ids` property
([#24919](hashicorp/terraform-provider-azurerm#24919
`azurerm_spring_cloud_configuration_service` - support for the
`refresh_interval_in_seconds` property
([#25009](hashicorp/terraform-provider-azurerm#25009
`azurerm_synapse_workspace` - support for using the
`user_assigned_identity_id` property within the `customer_managed_key`
block
([#25027](hashicorp/terraform-provider-azurerm#25027
`azurerm_windows_virtual_machine` - support for the
`automatic_upgrade_enabled`, `disk_controller_type`,
`os_image_notification`, `treat_failure_as_deployment_failure_enabled`,
and `vm_agent_platform_updates_enabled`properties
([#23394](https://github.com/hashicorp/terraform-provider-azurerm/issues/23394))&#xA;&#xA;BUG
FIXES:&#xA;&#xA;* `azurerm_api_management_notification_recipient_email`
- fixing an issue where response pages weren&#39;t iterated over
correctly
([#25055](hashicorp/terraform-provider-azurerm#25055
`azurerm_api_management_notification_recipient_user` - fixing an issue
where response pages weren&#39;t iterated over correctly
([#25055](hashicorp/terraform-provider-azurerm#25055
`azurerm_batch_pool` - fix setting the `extension.settings_json`
property
([#24976](hashicorp/terraform-provider-azurerm#24976
`azurerm_key_vault_key` - `expiration_date` can be updated if newer date
is ahead
([#25000](hashicorp/terraform-provider-azurerm#25000
`azurerm_pim_active_role_assignment` - fix an isue where the resource
would disappear or fail to import after 45 days
([#24524](hashicorp/terraform-provider-azurerm#24524
`azurerm_pim_eligible_role_assignment` - fix an isue where the resource
would disappear or fail to import after 45 days
([#24524](hashicorp/terraform-provider-azurerm#24524
`azurerm_recovery_services_vault` - validate that
`use_system_assigned_identity` and `user_assigned_identity_id` cannot be
set at the same time
([#24091](hashicorp/terraform-provider-azurerm#24091
`azurerm_recovery_vaults` will now create properly with
`SystemAssigned,UserAssigned` identity
([#24978](hashicorp/terraform-provider-azurerm#24978
`azurerm_subscription` - fixing an issue where response pages
weren&#39;t iterated over correctly
([#25055](https://github.com/hashicorp/terraform-provider-azurerm/issues/25055))&#xA;&#xA;&#xA;</pre>
            </details>
            <details>
                <summary>3.95.0</summary>
<pre>Changelog retrieved
from:&#xA;&#x9;https://github.com/hashicorp/terraform-provider-azurerm/releases/tag/v3.95.0&#xA;FEATURES:&#xA;&#xA;*
New Resource: `azurerm_container_app_custom_domain`
([#24421](hashicorp/terraform-provider-azurerm#24421
New Resource:
`azurerm_data_protection_backup_instance_kubernetes_cluster`
([#24940](hashicorp/terraform-provider-azurerm#24940
New Resource: `azurerm_static_web_app`
([#25117](hashicorp/terraform-provider-azurerm#25117
New resource: `azurerm_static_web_app_custom_domain`
([#25117](hashicorp/terraform-provider-azurerm#25117
New resource:
`azurerm_system_center_virtual_machine_manager_availability_set`
([#24975](hashicorp/terraform-provider-azurerm#24975
New Resource: `azurerm_workloads_sap_three_tier_virtual_instance`
([#24384](hashicorp/terraform-provider-azurerm#24384
New Resource: `azurerm_workloads_sap_single_node_virtual_instance`
([#24331](https://github.com/hashicorp/terraform-provider-azurerm/issues/24331))&#xA;&#xA;ENHANCEMENTS:&#xA;&#xA;*
`dependencies`: updating to v0.20240229.1102109 of
`github.com/hashicorp/go-azure-sdk`
([#25102](hashicorp/terraform-provider-azurerm#25102
`monitor`: updating to use the transport layer from
`hashicorp/go-azure-sdk` rather than `Azure/go-autorest`
[GH-#25102]&#xA;* `network`: updating to API Version `2023-09-01`
([#25095](hashicorp/terraform-provider-azurerm#25095
`azurerm_data_factory_integration_runtime_managed` - support for the
`credential_name` property
([#25033](hashicorp/terraform-provider-azurerm#25033
`azurerm_linux_function_app` - support for the `description` property in
the `ip_restriction` block
([#24527](hashicorp/terraform-provider-azurerm#24527
`azurerm_linux_function_app` - support for the
`ip_restriction_default_action` and `scm_ip_restriction_default_action`
properties
([#25131](hashicorp/terraform-provider-azurerm#25131
`azurerm_linux_function_app_slot` - support for the `description`
property in the `ip_restriction` block
([#24527](hashicorp/terraform-provider-azurerm#24527
`azurerm_linux_function_app_slot` - support for the
`ip_restriction_default_action` and `scm_ip_restriction_default_action`
properties
([#25131](hashicorp/terraform-provider-azurerm#25131
`azurerm_linux_web_app` - support for the `description` property in the
`ip_restriction` block
([#24527](hashicorp/terraform-provider-azurerm#24527
`azurerm_linux_web_app` - support for the
`ip_restriction_default_action` and `scm_ip_restriction_default_action`
properties
([#25131](hashicorp/terraform-provider-azurerm#25131
`azurerm_linux_web_app_slot` - support for the `description` property in
the `ip_restriction` block
([#24527](hashicorp/terraform-provider-azurerm#24527
`azurerm_linux_web_app_slot` - support for the
`ip_restriction_default_action` and `scm_ip_restriction_default_action`
properties
([#25131](hashicorp/terraform-provider-azurerm#25131
`azurerm_mysql_flexible_server` - setting the `storage.size_gb` property
to a smaller value now forces a new resource to be created
([#25074](hashicorp/terraform-provider-azurerm#25074
`azurerm_orbital_contact_profile` - changing the `channels` property no
longer creates a new resource
([#25129](hashicorp/terraform-provider-azurerm#25129
`azurerm_private_dns_resolver_inbound_endpoint` - the
`private_ip_address` property is no longer required when
`private_ip_allocation_method` is `Dynamic`
([#25035](hashicorp/terraform-provider-azurerm#25035
`stream_analytics_output_blob` - support for the `blob_write_mode`
property
([#25127](hashicorp/terraform-provider-azurerm#25127
`azurerm_windows_function_app` - support for the `description` property
in the `ip_restriction` block
([#24527](hashicorp/terraform-provider-azurerm#24527
`azurerm_windows_function_app` - support for the
`ip_restriction_default_action` and `scm_ip_restriction_default_action`
properties
([#25131](hashicorp/terraform-provider-azurerm#25131
`azurerm_windows_function_app_slot` - support for the `description`
property in the `ip_restriction` block
([#24527](hashicorp/terraform-provider-azurerm#24527
`azurerm_windows_function_app_slot` - support for the
`ip_restriction_default_action` and `scm_ip_restriction_default_action`
properties
([#25131](hashicorp/terraform-provider-azurerm#25131
`azurerm_windows_web_app` - support for the `description` property in
the `ip_restriction` block
([#24527](hashicorp/terraform-provider-azurerm#24527
`azurerm_windows_web_app` - support for the
`ip_restriction_default_action` and `scm_ip_restriction_default_action`
properties
([#25131](hashicorp/terraform-provider-azurerm#25131
`azurerm_windows_web_app_slot` - support for the `description` property
in the `ip_restriction` block
([#24527](hashicorp/terraform-provider-azurerm#24527
`azurerm_windows_web_app_slot` - support for the
`ip_restriction_default_action` and `scm_ip_restriction_default_action`
properties
([#25131](https://github.com/hashicorp/terraform-provider-azurerm/issues/25131))&#xA;&#xA;BUG
FIXES:&#xA;&#xA;* Data Source: `azurerm_function_app_host_keys` -
correctly set `event_grid_extension_key` by searching for the renamed
property in the API response
([#25108](hashicorp/terraform-provider-azurerm#25108
`azurerm_app_service_public_certificate` - fix issue where certificate
information was not being set correctly in the read
([#24943](hashicorp/terraform-provider-azurerm#24943
`azurerm_container_registry` - prevent recreation of the resource when
the `georeplication.tags` are updated
([#24994](hashicorp/terraform-provider-azurerm#24994
`azurerm_firewall_policy_rule_collection_group` - fix issue where the
client subscription ID was used to construct the `firewall_policy_id`
([#25145](hashicorp/terraform-provider-azurerm#25145
`azurerm_function_app_hybrid_connection` - fix issue where
`SendKeyValue` was not populated in the API payload
([#23761](hashicorp/terraform-provider-azurerm#23761
`azurerm_orbital_contact_profile` - fix creation of the resource when
`event_hub_uri` is not specified
([#25128](hashicorp/terraform-provider-azurerm#25128
`azurerm_recovery_services_vault` - prevent a panic when `immutability`
is updated
([#25132](hashicorp/terraform-provider-azurerm#25132
`azurerm_storage_account` - fix issue where the queue encryption key
type was set as the table encryption key type
([#25046](hashicorp/terraform-provider-azurerm#25046
`azurerm_web_app_hybrid_connection` - fix issue where `SendKeyValue` was
not populated in the API payload
([#23761](hashicorp/terraform-provider-azurerm#23761
`azurerm_mssql_database` - fix incorrect error due to typo when using
`restore_long_term_retention_backup_id`
([#25180](https://github.com/hashicorp/terraform-provider-azurerm/issues/25180))&#xA;&#xA;DEPRECATIONS:&#xA;&#xA;*
Deprecated Resource: `azurerm_static_site`
([#25117](hashicorp/terraform-provider-azurerm#25117
Deprecated Resource: `azurerm_static_site_custom_domain`
([#25117](hashicorp/terraform-provider-azurerm#25117
`azurerm_kubernetes_fleet_manager` - the `hub_profile` property has been
deprecated
([#25010](https://github.com/hashicorp/terraform-provider-azurerm/issues/25010))&#xA;&#xA;&#xA;</pre>
            </details>
        </details>
<a
href="https://infra.ci.jenkins.io/job/updatecli/job/azure/job/main/40/">Jenkins
pipeline link</a>
    </action>
</Actions>

---

<table>
  <tr>
    <td width="77">
<img src="https://www.updatecli.io/images/updatecli.png" alt="Updatecli
logo" width="50" height="50">
    </td>
    <td>
      <p>
Created automatically by <a
href="https://www.updatecli.io/">Updatecli</a>
      </p>
      <details><summary>Options:</summary>
        <br />
<p>Most of Updatecli configuration is done via <a
href="https://www.updatecli.io/docs/prologue/quick-start/">its
manifest(s)</a>.</p>
        <ul>
<li>If you close this pull request, Updatecli will automatically reopen
it, the next time it runs.</li>
<li>If you close this pull request and delete the base branch, Updatecli
will automatically recreate it, erasing all previous commits made.</li>
        </ul>
        <p>
Feel free to report any issues at <a
href="https://github.com/updatecli/updatecli/issues">github.com/updatecli/updatecli</a>.<br
/>
If you find this tool useful, do not hesitate to star <a
href="https://github.com/updatecli/updatecli/stargazers">our GitHub
repository</a> as a sign of appreciation, and/or to tell us directly on
our <a
href="https://matrix.to/#/#Updatecli_community:gitter.im">chat</a>!
        </p>
      </details>
    </td>
  </tr>
</table>

---------

Co-authored-by: Jenkins Infra Bot (updatecli) <[email protected]>
Copy link

I'm going to lock this pull request because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active contributions.
If you have found a problem that seems related to this change, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Apr 21, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants