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_linux_function_app azurerm_linux_function_app_slot expose virtual_network_subnet_id for vNet integration #17494

Merged
merged 26 commits into from
Jul 28, 2022

Conversation

bubbletroubles
Copy link
Contributor

@bubbletroubles bubbletroubles commented Jul 4, 2022

Fixes #15213, #17480 for the azurerm_linux_function_app and azurerm_linux_function_app_slot resource.

This PR exposes the virtual_network_subnet_id in these resources which enables associating a web app with a subnet with delegated permissions.

@bubbletroubles
Copy link
Contributor Author

bubbletroubles commented Jul 5, 2022

Tests for azurerm_linux_function_app are passing

image

$ make acctests SERVICE='appservice' TESTARGS='-run=TestAccLinuxFunctionApp_' TESTTIMEOUT='1000m'
==> 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/appservice -run=TestAccLinuxFunctionApp_ -timeout 1000m -ldflags="-X=github.com/hashicorp/terraform-provider-azurerm/version.ProviderVersion=acc"
=== RUN   TestAccLinuxFunctionApp_basicBasicPlan
=== PAUSE TestAccLinuxFunctionApp_basicBasicPlan
=== RUN   TestAccLinuxFunctionApp_basicConsumptionPlan
=== PAUSE TestAccLinuxFunctionApp_basicConsumptionPlan
=== RUN   TestAccLinuxFunctionApp_basicElasticPremiumPlan
=== PAUSE TestAccLinuxFunctionApp_basicElasticPremiumPlan
=== RUN   TestAccLinuxFunctionApp_basicPremiumAppServicePlan
=== PAUSE TestAccLinuxFunctionApp_basicPremiumAppServicePlan
=== RUN   TestAccLinuxFunctionApp_basicStandardPlan
=== PAUSE TestAccLinuxFunctionApp_basicStandardPlan
=== RUN   TestAccLinuxFunctionApp_withAppSettingsBasic
=== PAUSE TestAccLinuxFunctionApp_withAppSettingsBasic
=== RUN   TestAccLinuxFunctionApp_withAppSettingsConsumption
=== PAUSE TestAccLinuxFunctionApp_withAppSettingsConsumption
=== RUN   TestAccLinuxFunctionApp_withAppSettingsElasticPremiumPlan
=== PAUSE TestAccLinuxFunctionApp_withAppSettingsElasticPremiumPlan
=== RUN   TestAccLinuxFunctionApp_withCustomContentShareElasticPremiumPlan
=== PAUSE TestAccLinuxFunctionApp_withCustomContentShareElasticPremiumPlan
=== RUN   TestAccLinuxFunctionApp_withAppSettingsPremiumPlan
=== PAUSE TestAccLinuxFunctionApp_withAppSettingsPremiumPlan
=== RUN   TestAccLinuxFunctionApp_withAppSettingsStandardPlan
=== PAUSE TestAccLinuxFunctionApp_withAppSettingsStandardPlan
=== RUN   TestAccLinuxFunctionApp_withAppSettingsUserSettingUpdate
=== PAUSE TestAccLinuxFunctionApp_withAppSettingsUserSettingUpdate
=== RUN   TestAccLinuxFunctionApp_addAppSettings
=== PAUSE TestAccLinuxFunctionApp_addAppSettings
=== RUN   TestAccLinuxFunctionApp_stickySettings
=== PAUSE TestAccLinuxFunctionApp_stickySettings
=== RUN   TestAccLinuxFunctionApp_stickySettingsUpdate
=== PAUSE TestAccLinuxFunctionApp_stickySettingsUpdate
=== RUN   TestAccLinuxFunctionApp_withBackupElasticPremiumPlan
=== PAUSE TestAccLinuxFunctionApp_withBackupElasticPremiumPlan
=== RUN   TestAccLinuxFunctionApp_withBackupPremiumPlan
=== PAUSE TestAccLinuxFunctionApp_withBackupPremiumPlan
=== RUN   TestAccLinuxFunctionApp_withBackupStandardPlan
=== PAUSE TestAccLinuxFunctionApp_withBackupStandardPlan
=== RUN   TestAccLinuxFunctionApp_consumptionComplete
=== PAUSE TestAccLinuxFunctionApp_consumptionComplete
=== RUN   TestAccLinuxFunctionApp_consumptionCompleteUpdate
=== PAUSE TestAccLinuxFunctionApp_consumptionCompleteUpdate
=== RUN   TestAccLinuxFunctionApp_elasticPremiumComplete
=== PAUSE TestAccLinuxFunctionApp_elasticPremiumComplete
=== RUN   TestAccLinuxFunctionApp_standardComplete
=== PAUSE TestAccLinuxFunctionApp_standardComplete
=== RUN   TestAccLinuxFunctionApp_withAuthSettingsStandard
=== PAUSE TestAccLinuxFunctionApp_withAuthSettingsStandard
=== RUN   TestAccLinuxFunctionApp_scmIpRestrictionSubnet
=== PAUSE TestAccLinuxFunctionApp_scmIpRestrictionSubnet
=== RUN   TestAccLinuxFunctionApp_withAuthSettingsConsumption
=== PAUSE TestAccLinuxFunctionApp_withAuthSettingsConsumption
=== RUN   TestAccLinuxFunctionApp_builtInLogging
=== PAUSE TestAccLinuxFunctionApp_builtInLogging
=== RUN   TestAccLinuxFunctionApp_withConnectionStrings
=== PAUSE TestAccLinuxFunctionApp_withConnectionStrings
=== RUN   TestAccLinuxFunctionApp_withConnectionStringsUpdate
=== PAUSE TestAccLinuxFunctionApp_withConnectionStringsUpdate
=== RUN   TestAccLinuxFunctionApp_dailyTimeQuotaConsumptionPlan
=== PAUSE TestAccLinuxFunctionApp_dailyTimeQuotaConsumptionPlan
=== RUN   TestAccLinuxFunctionApp_dailyTimeQuotaElasticPremiumPlan
=== PAUSE TestAccLinuxFunctionApp_dailyTimeQuotaElasticPremiumPlan
=== RUN   TestAccLinuxFunctionApp_healthCheckPath
=== PAUSE TestAccLinuxFunctionApp_healthCheckPath
=== RUN   TestAccLinuxFunctionApp_healthCheckPathWithEviction
=== PAUSE TestAccLinuxFunctionApp_healthCheckPathWithEviction
=== RUN   TestAccLinuxFunctionApp_healthCheckPathWithEvictionUpdate
=== PAUSE TestAccLinuxFunctionApp_healthCheckPathWithEvictionUpdate
=== RUN   TestAccLinuxFunctionApp_appServiceLogging
=== PAUSE TestAccLinuxFunctionApp_appServiceLogging
=== RUN   TestAccLinuxFunctionApp_appServiceLoggingUpdate
=== PAUSE TestAccLinuxFunctionApp_appServiceLoggingUpdate
=== RUN   TestAccLinuxFunctionApp_appStackDotNet31
=== PAUSE TestAccLinuxFunctionApp_appStackDotNet31
=== RUN   TestAccLinuxFunctionApp_appStackDotNet6
=== PAUSE TestAccLinuxFunctionApp_appStackDotNet6
=== RUN   TestAccLinuxFunctionApp_appStackDotNet6Isolated
=== PAUSE TestAccLinuxFunctionApp_appStackDotNet6Isolated
=== RUN   TestAccLinuxFunctionApp_appStackPython
=== PAUSE TestAccLinuxFunctionApp_appStackPython
=== RUN   TestAccLinuxFunctionApp_appStackPythonUpdate
=== PAUSE TestAccLinuxFunctionApp_appStackPythonUpdate
=== RUN   TestAccLinuxFunctionApp_appStackNode
=== PAUSE TestAccLinuxFunctionApp_appStackNode
=== RUN   TestAccLinuxFunctionApp_appStackNodeUpdate
=== PAUSE TestAccLinuxFunctionApp_appStackNodeUpdate
=== RUN   TestAccLinuxFunctionApp_appStackJava
=== PAUSE TestAccLinuxFunctionApp_appStackJava
=== RUN   TestAccLinuxFunctionApp_appStackJavaUpdate
=== PAUSE TestAccLinuxFunctionApp_appStackJavaUpdate
=== RUN   TestAccLinuxFunctionApp_appStackDocker
=== PAUSE TestAccLinuxFunctionApp_appStackDocker
=== RUN   TestAccLinuxFunctionApp_appStackDockerManagedServiceIdentity
=== PAUSE TestAccLinuxFunctionApp_appStackDockerManagedServiceIdentity
=== RUN   TestAccLinuxFunctionApp_appStackPowerShellCore
=== PAUSE TestAccLinuxFunctionApp_appStackPowerShellCore
=== RUN   TestAccLinuxFunctionApp_identity
=== PAUSE TestAccLinuxFunctionApp_identity
=== RUN   TestAccLinuxFunctionApp_identityKeyVaultIdentity
=== PAUSE TestAccLinuxFunctionApp_identityKeyVaultIdentity
=== RUN   TestAccLinuxFunctionApp_updateServicePlan
=== PAUSE TestAccLinuxFunctionApp_updateServicePlan
=== RUN   TestAccLinuxFunctionApp_updateStorageAccount
=== PAUSE TestAccLinuxFunctionApp_updateStorageAccount
=== RUN   TestAccLinuxFunctionApp_msiStorageAccount
=== PAUSE TestAccLinuxFunctionApp_msiStorageAccount
=== RUN   TestAccLinuxFunctionApp_msiStorageAccountUpdate
=== PAUSE TestAccLinuxFunctionApp_msiStorageAccountUpdate
=== RUN   TestAccLinuxFunctionApp_storageAccountKeyVaultSecret
=== PAUSE TestAccLinuxFunctionApp_storageAccountKeyVaultSecret
=== RUN   TestAccLinuxFunctionApp_storageAccountKeyVaultSecretVersionless
=== PAUSE TestAccLinuxFunctionApp_storageAccountKeyVaultSecretVersionless
=== RUN   TestAccLinuxFunctionApp_consumptionPlanBackupShouldError
=== PAUSE TestAccLinuxFunctionApp_consumptionPlanBackupShouldError
=== RUN   TestAccLinuxFunctionApp_basicPlanBackupShouldError
=== PAUSE TestAccLinuxFunctionApp_basicPlanBackupShouldError
=== RUN   TestAccLinuxFunctionApp_vNetIntegration
=== PAUSE TestAccLinuxFunctionApp_vNetIntegration
=== RUN   TestAccLinuxFunctionApp_vNetIntegrationUpdate
=== PAUSE TestAccLinuxFunctionApp_vNetIntegrationUpdate
=== CONT  TestAccLinuxFunctionApp_basicBasicPlan
=== CONT  TestAccLinuxFunctionApp_vNetIntegrationUpdate
=== CONT  TestAccLinuxFunctionApp_vNetIntegration
=== CONT  TestAccLinuxFunctionApp_basicPlanBackupShouldError
--- PASS: TestAccLinuxFunctionApp_basicPlanBackupShouldError (158.49s)
=== CONT  TestAccLinuxFunctionApp_consumptionPlanBackupShouldError
--- PASS: TestAccLinuxFunctionApp_consumptionPlanBackupShouldError (99.81s)
=== CONT  TestAccLinuxFunctionApp_storageAccountKeyVaultSecretVersionless
--- PASS: TestAccLinuxFunctionApp_basicBasicPlan (277.17s)
=== CONT  TestAccLinuxFunctionApp_storageAccountKeyVaultSecret
--- PASS: TestAccLinuxFunctionApp_vNetIntegration (361.40s)
=== CONT  TestAccLinuxFunctionApp_msiStorageAccountUpdate
--- PASS: TestAccLinuxFunctionApp_vNetIntegrationUpdate (644.53s)
=== CONT  TestAccLinuxFunctionApp_msiStorageAccount
--- PASS: TestAccLinuxFunctionApp_storageAccountKeyVaultSecretVersionless (402.29s)
=== CONT  TestAccLinuxFunctionApp_updateStorageAccount
--- PASS: TestAccLinuxFunctionApp_storageAccountKeyVaultSecret (393.24s)
=== CONT  TestAccLinuxFunctionApp_updateServicePlan
--- PASS: TestAccLinuxFunctionApp_msiStorageAccountUpdate (385.54s)
=== CONT  TestAccLinuxFunctionApp_identityKeyVaultIdentity
--- PASS: TestAccLinuxFunctionApp_msiStorageAccount (276.24s)
=== CONT  TestAccLinuxFunctionApp_identity
--- PASS: TestAccLinuxFunctionApp_identityKeyVaultIdentity (251.48s)
=== CONT  TestAccLinuxFunctionApp_appStackPowerShellCore
--- PASS: TestAccLinuxFunctionApp_updateStorageAccount (388.57s)
=== CONT  TestAccLinuxFunctionApp_appStackDockerManagedServiceIdentity
--- PASS: TestAccLinuxFunctionApp_updateServicePlan (466.14s)
=== CONT  TestAccLinuxFunctionApp_appStackDocker
--- PASS: TestAccLinuxFunctionApp_appStackPowerShellCore (278.80s)
=== CONT  TestAccLinuxFunctionApp_appStackJavaUpdate
--- PASS: TestAccLinuxFunctionApp_appStackDockerManagedServiceIdentity (242.01s)
=== CONT  TestAccLinuxFunctionApp_appStackJava
--- PASS: TestAccLinuxFunctionApp_appStackDocker (193.72s)
=== CONT  TestAccLinuxFunctionApp_appStackNodeUpdate
--- PASS: TestAccLinuxFunctionApp_identity (563.77s)
=== CONT  TestAccLinuxFunctionApp_appStackNode
--- PASS: TestAccLinuxFunctionApp_appStackJava (229.03s)
=== CONT  TestAccLinuxFunctionApp_appStackPythonUpdate
--- PASS: TestAccLinuxFunctionApp_appStackNode (215.68s)
=== CONT  TestAccLinuxFunctionApp_appStackPython
--- PASS: TestAccLinuxFunctionApp_appStackJavaUpdate (428.46s)
=== CONT  TestAccLinuxFunctionApp_appStackDotNet6Isolated
--- PASS: TestAccLinuxFunctionApp_appStackNodeUpdate (470.59s)
=== CONT  TestAccLinuxFunctionApp_appStackDotNet6
--- PASS: TestAccLinuxFunctionApp_appStackPythonUpdate (415.54s)
=== CONT  TestAccLinuxFunctionApp_appStackDotNet31
--- PASS: TestAccLinuxFunctionApp_appStackDotNet6Isolated (255.91s)
=== CONT  TestAccLinuxFunctionApp_appServiceLoggingUpdate
--- PASS: TestAccLinuxFunctionApp_appStackPython (264.69s)
=== CONT  TestAccLinuxFunctionApp_appServiceLogging
--- PASS: TestAccLinuxFunctionApp_appStackDotNet6 (197.01s)
=== CONT  TestAccLinuxFunctionApp_healthCheckPathWithEvictionUpdate
--- PASS: TestAccLinuxFunctionApp_appStackDotNet31 (227.75s)
=== CONT  TestAccLinuxFunctionApp_healthCheckPathWithEviction
--- PASS: TestAccLinuxFunctionApp_appServiceLogging (226.07s)
=== CONT  TestAccLinuxFunctionApp_healthCheckPath
--- PASS: TestAccLinuxFunctionApp_healthCheckPathWithEvictionUpdate (449.09s)
=== CONT  TestAccLinuxFunctionApp_dailyTimeQuotaElasticPremiumPlan
--- PASS: TestAccLinuxFunctionApp_healthCheckPathWithEviction (307.01s)
=== CONT  TestAccLinuxFunctionApp_dailyTimeQuotaConsumptionPlan
--- PASS: TestAccLinuxFunctionApp_healthCheckPath (310.49s)
=== CONT  TestAccLinuxFunctionApp_withConnectionStringsUpdate
--- PASS: TestAccLinuxFunctionApp_appServiceLoggingUpdate (578.17s)
=== CONT  TestAccLinuxFunctionApp_withConnectionStrings
=== CONT  TestAccLinuxFunctionApp_builtInLogging
--- PASS: TestAccLinuxFunctionApp_dailyTimeQuotaElasticPremiumPlan (312.14s)
--- PASS: TestAccLinuxFunctionApp_dailyTimeQuotaConsumptionPlan (301.49s)
=== CONT  TestAccLinuxFunctionApp_withAuthSettingsConsumption
--- PASS: TestAccLinuxFunctionApp_withConnectionStrings (337.34s)
=== CONT  TestAccLinuxFunctionApp_scmIpRestrictionSubnet
--- PASS: TestAccLinuxFunctionApp_builtInLogging (333.83s)
=== CONT  TestAccLinuxFunctionApp_withAuthSettingsStandard
--- PASS: TestAccLinuxFunctionApp_withAuthSettingsConsumption (322.43s)
=== CONT  TestAccLinuxFunctionApp_standardComplete
--- PASS: TestAccLinuxFunctionApp_scmIpRestrictionSubnet (288.19s)
=== CONT  TestAccLinuxFunctionApp_elasticPremiumComplete
--- PASS: TestAccLinuxFunctionApp_withConnectionStringsUpdate (700.52s)
=== CONT  TestAccLinuxFunctionApp_consumptionCompleteUpdate
--- PASS: TestAccLinuxFunctionApp_standardComplete (240.47s)
=== CONT  TestAccLinuxFunctionApp_consumptionComplete
--- PASS: TestAccLinuxFunctionApp_withAuthSettingsStandard (272.89s)
=== CONT  TestAccLinuxFunctionApp_withBackupStandardPlan
--- PASS: TestAccLinuxFunctionApp_elasticPremiumComplete (342.57s)
=== CONT  TestAccLinuxFunctionApp_withBackupPremiumPlan
--- PASS: TestAccLinuxFunctionApp_consumptionComplete (236.08s)
=== CONT  TestAccLinuxFunctionApp_withBackupElasticPremiumPlan
--- PASS: TestAccLinuxFunctionApp_withBackupStandardPlan (235.11s)
=== CONT  TestAccLinuxFunctionApp_stickySettingsUpdate
--- PASS: TestAccLinuxFunctionApp_consumptionCompleteUpdate (463.49s)
=== CONT  TestAccLinuxFunctionApp_stickySettings
=== CONT  TestAccLinuxFunctionApp_addAppSettings
--- PASS: TestAccLinuxFunctionApp_withBackupPremiumPlan (230.95s)
--- PASS: TestAccLinuxFunctionApp_withBackupElasticPremiumPlan (270.41s)
=== CONT  TestAccLinuxFunctionApp_withAppSettingsUserSettingUpdate
--- PASS: TestAccLinuxFunctionApp_stickySettings (253.51s)
=== CONT  TestAccLinuxFunctionApp_withAppSettingsStandardPlan
--- PASS: TestAccLinuxFunctionApp_withAppSettingsStandardPlan (197.23s)
=== CONT  TestAccLinuxFunctionApp_withAppSettingsPremiumPlan
--- PASS: TestAccLinuxFunctionApp_withAppSettingsUserSettingUpdate (336.32s)
=== CONT  TestAccLinuxFunctionApp_withCustomContentShareElasticPremiumPlan
--- PASS: TestAccLinuxFunctionApp_addAppSettings (446.21s)
=== CONT  TestAccLinuxFunctionApp_withAppSettingsElasticPremiumPlan
--- PASS: TestAccLinuxFunctionApp_stickySettingsUpdate (699.73s)
=== CONT  TestAccLinuxFunctionApp_withAppSettingsConsumption
--- PASS: TestAccLinuxFunctionApp_withAppSettingsPremiumPlan (209.36s)
=== CONT  TestAccLinuxFunctionApp_withAppSettingsBasic
--- PASS: TestAccLinuxFunctionApp_withCustomContentShareElasticPremiumPlan (245.89s)
=== CONT  TestAccLinuxFunctionApp_basicStandardPlan
--- PASS: TestAccLinuxFunctionApp_withAppSettingsElasticPremiumPlan (269.43s)
=== CONT  TestAccLinuxFunctionApp_basicPremiumAppServicePlan
--- PASS: TestAccLinuxFunctionApp_withAppSettingsConsumption (209.07s)
=== CONT  TestAccLinuxFunctionApp_basicElasticPremiumPlan
--- PASS: TestAccLinuxFunctionApp_withAppSettingsBasic (226.10s)
=== CONT  TestAccLinuxFunctionApp_basicConsumptionPlan
--- PASS: TestAccLinuxFunctionApp_basicStandardPlan (204.70s)
--- PASS: TestAccLinuxFunctionApp_basicPremiumAppServicePlan (212.04s)
--- PASS: TestAccLinuxFunctionApp_basicConsumptionPlan (264.49s)
--- PASS: TestAccLinuxFunctionApp_basicElasticPremiumPlan (345.01s)
PASS
ok      github.com/hashicorp/terraform-provider-azurerm/internal/services/appservice    4860.254s

@bubbletroubles
Copy link
Contributor Author

bubbletroubles commented Jul 5, 2022

Tests for azurerm_linux_function_app_slot are passing

image

$ make acctests SERVICE='appservice' TESTARGS='-run=TestAccLinuxFunctionAppSlot_' TESTTIMEOUT='1000m'
==> 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/appservice -run=TestAccLinuxFunctionAppSlot_ -timeout 1000m -ldflags="-X=github.com/hashicorp/terraform-provider-azurerm/version.ProviderVersion=acc"
=== RUN   TestAccLinuxFunctionAppSlot_basicConsumptionPlan
=== PAUSE TestAccLinuxFunctionAppSlot_basicConsumptionPlan
=== RUN   TestAccLinuxFunctionAppSlot_basicElasticPremiumPlan
=== PAUSE TestAccLinuxFunctionAppSlot_basicElasticPremiumPlan
=== RUN   TestAccLinuxFunctionAppSlot_basicPremiumAppServicePlan
=== PAUSE TestAccLinuxFunctionAppSlot_basicPremiumAppServicePlan
=== RUN   TestAccLinuxFunctionAppSlot_basicStandardPlan
=== PAUSE TestAccLinuxFunctionAppSlot_basicStandardPlan
=== RUN   TestAccLinuxFunctionAppSlot_withAppSettingsConsumption
=== PAUSE TestAccLinuxFunctionAppSlot_withAppSettingsConsumption
=== RUN   TestAccLinuxFunctionAppSlot_withAppSettingsElasticPremiumPlan
=== PAUSE TestAccLinuxFunctionAppSlot_withAppSettingsElasticPremiumPlan
=== RUN   TestAccLinuxFunctionAppSlot_withCustomContentShareElasticPremiumPla
=== PAUSE TestAccLinuxFunctionAppSlot_withCustomContentShareElasticPremiumPla
=== RUN   TestAccLinuxFunctionAppSlot_withAppSettingsPremiumPlan
=== PAUSE TestAccLinuxFunctionAppSlot_withAppSettingsPremiumPlan
=== RUN   TestAccLinuxFunctionAppSlot_withAppSettingsStandardPlan
=== PAUSE TestAccLinuxFunctionAppSlot_withAppSettingsStandardPlan
=== RUN   TestAccLinuxFunctionAppSlot_withAppSettingsUserSettingUpdate
=== PAUSE TestAccLinuxFunctionAppSlot_withAppSettingsUserSettingUpdate
=== RUN   TestAccLinuxFunctionAppSlot_withBackupElasticPremiumPlan
=== PAUSE TestAccLinuxFunctionAppSlot_withBackupElasticPremiumPlan
=== RUN   TestAccLinuxFunctionAppSlot_withBackupPremiumPlan
=== PAUSE TestAccLinuxFunctionAppSlot_withBackupPremiumPlan
=== RUN   TestAccLinuxFunctionAppSlot_withBackupStandardPlan
=== PAUSE TestAccLinuxFunctionAppSlot_withBackupStandardPlan
=== RUN   TestAccLinuxFunctionAppSlot_consumptionComplete
=== PAUSE TestAccLinuxFunctionAppSlot_consumptionComplete
=== RUN   TestAccLinuxFunctionAppSlot_consumptionCompleteUpdate
=== PAUSE TestAccLinuxFunctionAppSlot_consumptionCompleteUpdate
=== RUN   TestAccLinuxFunctionAppSlot_elasticPremiumComplete
=== PAUSE TestAccLinuxFunctionAppSlot_elasticPremiumComplete
=== RUN   TestAccLinuxFunctionAppSlot_standardComplete
=== PAUSE TestAccLinuxFunctionAppSlot_standardComplete
=== RUN   TestAccLinuxFunctionAppSlot_withAuthSettingsStandard
=== PAUSE TestAccLinuxFunctionAppSlot_withAuthSettingsStandard
=== RUN   TestAccLinuxFunctionAppSlot_scmIpRestrictionSubnet
=== PAUSE TestAccLinuxFunctionAppSlot_scmIpRestrictionSubnet
=== RUN   TestAccLinuxFunctionAppSlot_withAuthSettingsConsumption
=== PAUSE TestAccLinuxFunctionAppSlot_withAuthSettingsConsumption
=== RUN   TestAccLinuxFunctionAppSlot_builtInLogging
=== PAUSE TestAccLinuxFunctionAppSlot_builtInLogging
=== RUN   TestAccLinuxFunctionAppSlot_withConnectionStrings
=== PAUSE TestAccLinuxFunctionAppSlot_withConnectionStrings
=== RUN   TestAccLinuxFunctionAppSlot_withConnectionStringsUpdate
=== PAUSE TestAccLinuxFunctionAppSlot_withConnectionStringsUpdate
=== RUN   TestAccLinuxFunctionAppSlot_dailyTimeQuotaConsumptionPlan
=== PAUSE TestAccLinuxFunctionAppSlot_dailyTimeQuotaConsumptionPlan
=== RUN   TestAccLinuxFunctionAppSlot_dailyTimeQuotaElasticPremiumPlan
=== PAUSE TestAccLinuxFunctionAppSlot_dailyTimeQuotaElasticPremiumPlan
=== RUN   TestAccLinuxFunctionAppSlot_healthCheckPath
=== PAUSE TestAccLinuxFunctionAppSlot_healthCheckPath
=== RUN   TestAccLinuxFunctionAppSlot_healthCheckPathWithEviction
=== PAUSE TestAccLinuxFunctionAppSlot_healthCheckPathWithEviction
=== RUN   TestAccLinuxFunctionAppSlot_healthCheckPathWithEvictionUpdate
=== PAUSE TestAccLinuxFunctionAppSlot_healthCheckPathWithEvictionUpdate
=== RUN   TestAccLinuxFunctionAppSlot_appServiceLogging
=== PAUSE TestAccLinuxFunctionAppSlot_appServiceLogging
=== RUN   TestAccLinuxFunctionAppSlot_appServiceLoggingUpdate
=== PAUSE TestAccLinuxFunctionAppSlot_appServiceLoggingUpdate
=== RUN   TestAccLinuxFunctionAppSlot_appStackDotNet31
=== PAUSE TestAccLinuxFunctionAppSlot_appStackDotNet31
=== RUN   TestAccLinuxFunctionAppSlot_appStackDotNet6
=== PAUSE TestAccLinuxFunctionAppSlot_appStackDotNet6
=== RUN   TestAccLinuxFunctionAppSlot_appStackDotNet6Isolated
=== PAUSE TestAccLinuxFunctionAppSlot_appStackDotNet6Isolated
=== RUN   TestAccLinuxFunctionAppSlot_appStackPython
=== PAUSE TestAccLinuxFunctionAppSlot_appStackPython
=== RUN   TestAccLinuxFunctionAppSlot_appStackPythonUpdate
=== PAUSE TestAccLinuxFunctionAppSlot_appStackPythonUpdate
=== RUN   TestAccLinuxFunctionAppSlot_appStackNode
=== PAUSE TestAccLinuxFunctionAppSlot_appStackNode
=== RUN   TestAccLinuxFunctionAppSlot_appStackNodeUpdate
=== PAUSE TestAccLinuxFunctionAppSlot_appStackNodeUpdate
=== RUN   TestAccLinuxFunctionAppSlot_appStackJava
=== PAUSE TestAccLinuxFunctionAppSlot_appStackJava
=== RUN   TestAccLinuxFunctionAppSlot_appStackJavaUpdate
=== PAUSE TestAccLinuxFunctionAppSlot_appStackJavaUpdate
=== RUN   TestAccLinuxFunctionAppSlot_appStackDocker
=== PAUSE TestAccLinuxFunctionAppSlot_appStackDocker
=== RUN   TestAccLinuxFunctionAppSlot_appStackDockerManagedServiceIdentity
=== PAUSE TestAccLinuxFunctionAppSlot_appStackDockerManagedServiceIdentity
=== RUN   TestAccLinuxFunctionAppSlot_appStackPowerShellCore
=== PAUSE TestAccLinuxFunctionAppSlot_appStackPowerShellCore
=== RUN   TestAccLinuxFunctionAppSlot_identity
=== PAUSE TestAccLinuxFunctionAppSlot_identity
=== RUN   TestAccLinuxFunctionAppSlot_updateStorageAccount
=== PAUSE TestAccLinuxFunctionAppSlot_updateStorageAccount
=== RUN   TestAccLinuxFunctionAppSlot_identityKeyVaultIdentity
=== PAUSE TestAccLinuxFunctionAppSlot_identityKeyVaultIdentity
=== RUN   TestAccLinuxFunctionAppSlot_msiStorageAccount
=== PAUSE TestAccLinuxFunctionAppSlot_msiStorageAccount
=== RUN   TestAccLinuxFunctionAppSlot_storageAccountKeyVaultSecret
=== PAUSE TestAccLinuxFunctionAppSlot_storageAccountKeyVaultSecret
=== RUN   TestAccLinuxFunctionAppSlot_storageAccountKeyVaultSecretVersionless
=== PAUSE TestAccLinuxFunctionAppSlot_storageAccountKeyVaultSecretVersionless
=== RUN   TestAccLinuxFunctionAppSlot_vNetIntegration
=== PAUSE TestAccLinuxFunctionAppSlot_vNetIntegration
=== RUN   TestAccLinuxFunctionAppSlot_vNetIntegrationUpdate
=== PAUSE TestAccLinuxFunctionAppSlot_vNetIntegrationUpdate
=== CONT  TestAccLinuxFunctionAppSlot_basicConsumptionPlan
=== CONT  TestAccLinuxFunctionAppSlot_healthCheckPath
=== CONT  TestAccLinuxFunctionAppSlot_consumptionComplete
=== CONT  TestAccLinuxFunctionAppSlot_appStackJavaUpdate
--- PASS: TestAccLinuxFunctionAppSlot_basicConsumptionPlan (320.98s)
=== CONT  TestAccLinuxFunctionAppSlot_dailyTimeQuotaElasticPremiumPlan
--- PASS: TestAccLinuxFunctionAppSlot_consumptionComplete (327.72s)
=== CONT  TestAccLinuxFunctionAppSlot_dailyTimeQuotaConsumptionPlan
--- PASS: TestAccLinuxFunctionAppSlot_healthCheckPath (336.91s)
=== CONT  TestAccLinuxFunctionAppSlot_withConnectionStringsUpdate
--- PASS: TestAccLinuxFunctionAppSlot_appStackJavaUpdate (443.21s)
=== CONT  TestAccLinuxFunctionAppSlot_withConnectionStrings
--- PASS: TestAccLinuxFunctionAppSlot_dailyTimeQuotaConsumptionPlan (231.20s)
=== CONT  TestAccLinuxFunctionAppSlot_builtInLogging
=== CONT  TestAccLinuxFunctionAppSlot_withAuthSettingsConsumption
--- PASS: TestAccLinuxFunctionAppSlot_dailyTimeQuotaElasticPremiumPlan (355.60s)
--- PASS: TestAccLinuxFunctionAppSlot_withConnectionStrings (284.96s)
=== CONT  TestAccLinuxFunctionAppSlot_scmIpRestrictionSubnet
--- PASS: TestAccLinuxFunctionAppSlot_builtInLogging (295.31s)
=== CONT  TestAccLinuxFunctionAppSlot_withAuthSettingsStandard
--- PASS: TestAccLinuxFunctionAppSlot_withAuthSettingsConsumption (235.98s)
=== CONT  TestAccLinuxFunctionAppSlot_standardComplete
--- PASS: TestAccLinuxFunctionAppSlot_withConnectionStringsUpdate (590.76s)
=== CONT  TestAccLinuxFunctionAppSlot_elasticPremiumComplete
--- PASS: TestAccLinuxFunctionAppSlot_scmIpRestrictionSubnet (278.07s)
=== CONT  TestAccLinuxFunctionAppSlot_consumptionCompleteUpdate
--- PASS: TestAccLinuxFunctionAppSlot_withAuthSettingsStandard (259.59s)
=== CONT  TestAccLinuxFunctionAppSlot_identityKeyVaultIdentity
--- PASS: TestAccLinuxFunctionAppSlot_standardComplete (276.95s)
=== CONT  TestAccLinuxFunctionAppSlot_vNetIntegrationUpdate
--- PASS: TestAccLinuxFunctionAppSlot_elasticPremiumComplete (278.15s)
=== CONT  TestAccLinuxFunctionAppSlot_vNetIntegration
--- PASS: TestAccLinuxFunctionAppSlot_identityKeyVaultIdentity (239.44s)
=== CONT  TestAccLinuxFunctionAppSlot_storageAccountKeyVaultSecretVersionless
--- PASS: TestAccLinuxFunctionAppSlot_consumptionCompleteUpdate (440.59s)
=== CONT  TestAccLinuxFunctionAppSlot_storageAccountKeyVaultSecret
--- PASS: TestAccLinuxFunctionAppSlot_vNetIntegration (322.12s)
=== CONT  TestAccLinuxFunctionAppSlot_msiStorageAccount
--- PASS: TestAccLinuxFunctionAppSlot_storageAccountKeyVaultSecretVersionless (400.36s)
=== CONT  TestAccLinuxFunctionAppSlot_appStackDotNet6Isolated
--- PASS: TestAccLinuxFunctionAppSlot_msiStorageAccount (407.25s)
=== CONT  TestAccLinuxFunctionAppSlot_appStackJava
--- PASS: TestAccLinuxFunctionAppSlot_vNetIntegrationUpdate (839.85s)
=== CONT  TestAccLinuxFunctionAppSlot_appStackNodeUpdate
--- PASS: TestAccLinuxFunctionAppSlot_storageAccountKeyVaultSecret (599.53s)
=== CONT  TestAccLinuxFunctionAppSlot_appStackNode
--- PASS: TestAccLinuxFunctionAppSlot_appStackDotNet6Isolated (317.31s)
=== CONT  TestAccLinuxFunctionAppSlot_appStackPythonUpdate
--- PASS: TestAccLinuxFunctionAppSlot_appStackJava (257.38s)
=== CONT  TestAccLinuxFunctionAppSlot_appStackPython
--- PASS: TestAccLinuxFunctionAppSlot_appStackNode (265.21s)
=== CONT  TestAccLinuxFunctionAppSlot_appServiceLoggingUpdate
--- PASS: TestAccLinuxFunctionAppSlot_appStackNodeUpdate (342.42s)
=== CONT  TestAccLinuxFunctionAppSlot_appStackDotNet6
--- PASS: TestAccLinuxFunctionAppSlot_appStackPythonUpdate (403.00s)
=== CONT  TestAccLinuxFunctionAppSlot_appStackDotNet31
--- PASS: TestAccLinuxFunctionAppSlot_appStackPython (306.93s)
=== CONT  TestAccLinuxFunctionAppSlot_withAppSettingsPremiumPlan
--- PASS: TestAccLinuxFunctionAppSlot_appStackDotNet6 (270.13s)
=== CONT  TestAccLinuxFunctionAppSlot_withBackupStandardPlan
--- PASS: TestAccLinuxFunctionAppSlot_appStackDotNet31 (312.74s)
=== CONT  TestAccLinuxFunctionAppSlot_withBackupPremiumPlan
--- PASS: TestAccLinuxFunctionAppSlot_withAppSettingsPremiumPlan (342.71s)
=== CONT  TestAccLinuxFunctionAppSlot_withBackupElasticPremiumPlan
--- PASS: TestAccLinuxFunctionAppSlot_appServiceLoggingUpdate (565.02s)
=== CONT  TestAccLinuxFunctionAppSlot_withAppSettingsUserSettingUpdate
--- PASS: TestAccLinuxFunctionAppSlot_withBackupStandardPlan (383.46s)
=== CONT  TestAccLinuxFunctionAppSlot_withAppSettingsStandardPlan
--- PASS: TestAccLinuxFunctionAppSlot_withBackupPremiumPlan (408.08s)
=== CONT  TestAccLinuxFunctionAppSlot_withAppSettingsConsumption
--- PASS: TestAccLinuxFunctionAppSlot_withBackupElasticPremiumPlan (379.44s)
=== CONT  TestAccLinuxFunctionAppSlot_withCustomContentShareElasticPremiumPla
--- PASS: TestAccLinuxFunctionAppSlot_withAppSettingsStandardPlan (308.91s)
=== CONT  TestAccLinuxFunctionAppSlot_withAppSettingsElasticPremiumPlan
--- PASS: TestAccLinuxFunctionAppSlot_withAppSettingsUserSettingUpdate (591.36s)
=== CONT  TestAccLinuxFunctionAppSlot_healthCheckPathWithEvictionUpdate
--- PASS: TestAccLinuxFunctionAppSlot_withAppSettingsConsumption (332.01s)
=== CONT  TestAccLinuxFunctionAppSlot_appServiceLogging
--- PASS: TestAccLinuxFunctionAppSlot_withCustomContentShareElasticPremiumPla (392.51s)
=== CONT  TestAccLinuxFunctionAppSlot_basicPremiumAppServicePlan
--- PASS: TestAccLinuxFunctionAppSlot_withAppSettingsElasticPremiumPlan (425.93s)
=== CONT  TestAccLinuxFunctionAppSlot_basicStandardPlan
--- PASS: TestAccLinuxFunctionAppSlot_appServiceLogging (398.84s)
=== CONT  TestAccLinuxFunctionAppSlot_healthCheckPathWithEviction
--- PASS: TestAccLinuxFunctionAppSlot_basicPremiumAppServicePlan (324.09s)
=== CONT  TestAccLinuxFunctionAppSlot_basicElasticPremiumPlan
--- PASS: TestAccLinuxFunctionAppSlot_healthCheckPathWithEvictionUpdate (571.94s)
=== CONT  TestAccLinuxFunctionAppSlot_appStackPowerShellCore
--- PASS: TestAccLinuxFunctionAppSlot_basicStandardPlan (306.20s)
=== CONT  TestAccLinuxFunctionAppSlot_updateStorageAccount
--- PASS: TestAccLinuxFunctionAppSlot_healthCheckPathWithEviction (282.20s)
=== CONT  TestAccLinuxFunctionAppSlot_identity
--- PASS: TestAccLinuxFunctionAppSlot_basicElasticPremiumPlan (344.88s)
=== CONT  TestAccLinuxFunctionAppSlot_appStackDockerManagedServiceIdentity
--- PASS: TestAccLinuxFunctionAppSlot_appStackPowerShellCore (270.52s)
=== CONT  TestAccLinuxFunctionAppSlot_appStackDocker
--- PASS: TestAccLinuxFunctionAppSlot_updateStorageAccount (474.99s)
--- PASS: TestAccLinuxFunctionAppSlot_appStackDocker (321.60s)
--- PASS: TestAccLinuxFunctionAppSlot_appStackDockerManagedServiceIdentity (367.59s)
--- PASS: TestAccLinuxFunctionAppSlot_identity (770.12s)
PASS
ok      github.com/hashicorp/terraform-provider-azurerm/internal/services/appservice    4981.831s

@bubbletroubles bubbletroubles marked this pull request as ready for review July 5, 2022 06:51
@bubbletroubles bubbletroubles changed the title azurerm_linux_web_app azurerm_linux_function_app_slot expose virtual_network_subnet_id for vNet integration azurerm_linux_function_app azurerm_linux_function_app_slot expose virtual_network_subnet_id for vNet integration Jul 5, 2022
@bubbletroubles
Copy link
Contributor Author

@tombuildsstuff @katbyte @jackofallops @catriona-m @stephybun this one is now ready for review. I couldn't press "Request review" in the PR so if there is a better way let me know.

@bubbletroubles
Copy link
Contributor Author

Resources have been updated to no longer require ForceNew and to handle changes successfully. Tests have been updated to

  • deploy the resource with no vNet integration
  • associate with a subnet
  • associate with a different subnet
  • disassociate from the subnet

Tests are passing for the azurerm_linux_function_app and azurerm_linux_function_app_slot resources.

azurerm_linux_function_app tests

==> 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/appservice -run=TestAccLinuxFunctionApp_vNetIntegration -timeout 600m -ldflags="-X=github.com/hashicorp/terraform-provider-azurerm/version.ProviderVersion=acc"
=== RUN   TestAccLinuxFunctionApp_vNetIntegration
=== PAUSE TestAccLinuxFunctionApp_vNetIntegration
=== RUN   TestAccLinuxFunctionApp_vNetIntegrationUpdate
=== PAUSE TestAccLinuxFunctionApp_vNetIntegrationUpdate
=== CONT  TestAccLinuxFunctionApp_vNetIntegration
=== CONT  TestAccLinuxFunctionApp_vNetIntegrationUpdate
--- PASS: TestAccLinuxFunctionApp_vNetIntegration (279.17s)
--- PASS: TestAccLinuxFunctionApp_vNetIntegrationUpdate (661.42s)
PASS
ok  	github.com/hashicorp/terraform-provider-azurerm/internal/services/appservice	661.439s

azurerm_linux_function_app_slot tests

==> 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/appservice -run=TestAccLinuxFunctionAppSlot_vNetIntegration -timeout 600m -ldflags="-X=github.com/hashicorp/terraform-provider-azurerm/version.ProviderVersion=acc"
=== RUN   TestAccLinuxFunctionAppSlot_vNetIntegration
=== PAUSE TestAccLinuxFunctionAppSlot_vNetIntegration
=== RUN   TestAccLinuxFunctionAppSlot_vNetIntegrationUpdate
=== PAUSE TestAccLinuxFunctionAppSlot_vNetIntegrationUpdate
=== CONT  TestAccLinuxFunctionAppSlot_vNetIntegration
=== CONT  TestAccLinuxFunctionAppSlot_vNetIntegrationUpdate
--- PASS: TestAccLinuxFunctionAppSlot_vNetIntegration (358.80s)
--- PASS: TestAccLinuxFunctionAppSlot_vNetIntegrationUpdate (734.09s)
PASS
ok  	github.com/hashicorp/terraform-provider-azurerm/internal/services/appservice	734.111s

Copy link
Member

@jackofallops jackofallops left a comment

Choose a reason for hiding this comment

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

Thanks @bubbletroubles - LGTM 🚀

@jackofallops
Copy link
Member

Tests look good:

image

@jackofallops jackofallops merged commit 14877c0 into hashicorp:main Jul 28, 2022
@jackofallops jackofallops added this to the v3.16.0 milestone Jul 28, 2022
jackofallops added a commit that referenced this pull request Jul 28, 2022
@bubbletroubles bubbletroubles deleted the linux_function_app branch July 28, 2022 11:59
@github-actions
Copy link

github-actions bot commented Aug 1, 2022

This functionality has been released in v3.16.0 of the Terraform Provider. Please see the Terraform documentation on provider versioning or reach out if you need any assistance upgrading.

For further feature requests or bug reports with this functionality, please create a new GitHub issue following the template. Thank you!

@github-actions
Copy link

github-actions bot commented Sep 1, 2022

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 Sep 1, 2022
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.

azurerm_app_service_virtual_network_swift_connection - Require permission subnet/write
2 participants