Skip to content

Commit 59e3da1

Browse files
authored
azurerm_storage_account - expiration_action supports Block (hashicorp#30599)
[ENHANCEMENT] * `azurerm_storage_account` - `expiration_action` supports `Block` [hashicorpGH-30599]
1 parent a61e7e6 commit 59e3da1

3 files changed

Lines changed: 16 additions & 11 deletions

File tree

internal/services/storage/storage_account_resource.go

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -695,12 +695,10 @@ func resourceStorageAccount() *pluginsdk.Resource {
695695
Elem: &pluginsdk.Resource{
696696
Schema: map[string]*pluginsdk.Schema{
697697
"expiration_action": {
698-
Type: pluginsdk.TypeString,
699-
Optional: true,
700-
Default: string(storageaccounts.ExpirationActionLog),
701-
ValidateFunc: validation.StringInSlice([]string{
702-
string(storageaccounts.ExpirationActionLog),
703-
}, false),
698+
Type: pluginsdk.TypeString,
699+
Optional: true,
700+
Default: string(storageaccounts.ExpirationActionLog),
701+
ValidateFunc: validation.StringInSlice(storageaccounts.PossibleValuesForExpirationAction(), false),
704702
},
705703
"expiration_period": {
706704
Type: pluginsdk.TypeString,

internal/services/storage/storage_account_resource_test.go

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1686,7 +1686,14 @@ func TestAccStorageAccount_sasPolicy(t *testing.T) {
16861686
},
16871687
data.ImportStep(),
16881688
{
1689-
Config: r.sasPolicy(data),
1689+
Config: r.sasPolicy(data, "Log"),
1690+
Check: acceptance.ComposeTestCheckFunc(
1691+
check.That(data.ResourceName).ExistsInAzure(r),
1692+
),
1693+
},
1694+
data.ImportStep(),
1695+
{
1696+
Config: r.sasPolicy(data, "Block"),
16901697
Check: acceptance.ComposeTestCheckFunc(
16911698
check.That(data.ResourceName).ExistsInAzure(r),
16921699
),
@@ -4890,7 +4897,7 @@ resource "azurerm_storage_account" "test" {
48904897
`, r.cmkTemplate(data), data.RandomString)
48914898
}
48924899

4893-
func (r StorageAccountResource) sasPolicy(data acceptance.TestData) string {
4900+
func (r StorageAccountResource) sasPolicy(data acceptance.TestData, action string) string {
48944901
return fmt.Sprintf(`
48954902
provider "azurerm" {
48964903
features {}
@@ -4910,11 +4917,11 @@ resource "azurerm_storage_account" "test" {
49104917
account_replication_type = "LRS"
49114918
49124919
sas_policy {
4913-
expiration_action = "Log"
4920+
expiration_action = "%s"
49144921
expiration_period = "1.15:5:05"
49154922
}
49164923
}
4917-
`, data.RandomInteger, data.Locations.Primary, data.RandomString)
4924+
`, data.RandomInteger, data.Locations.Primary, data.RandomString, action)
49184925
}
49194926

49204927
func (r StorageAccountResource) allowedCopyScope(data acceptance.TestData, scope string) string {

website/docs/r/storage_account.html.markdown

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -427,7 +427,7 @@ A `sas_policy` block supports the following:
427427

428428
* `expiration_period` - (Required) The SAS expiration period in format of `DD.HH:MM:SS`.
429429

430-
* `expiration_action` - (Optional) The SAS expiration action. The only possible value is `Log` at this moment. Defaults to `Log`.
430+
* `expiration_action` - (Optional) The SAS expiration action. Possible values are `Log` and `Block`. Defaults to `Log`.
431431

432432
---
433433

0 commit comments

Comments
 (0)