From 37c263ec726edd922ad48bb6dbed134a10daa1de Mon Sep 17 00:00:00 2001 From: Boris Besemer Date: Fri, 11 Jul 2025 15:37:23 +0200 Subject: [PATCH 1/2] feat: allow 1d and 1w for deployment retention policy --- vercel/resource_project_deployment_retention.go | 16 ++++++++-------- ...resource_project_deployment_retention_test.go | 9 +++++---- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/vercel/resource_project_deployment_retention.go b/vercel/resource_project_deployment_retention.go index e7556d70..2d5b2999 100644 --- a/vercel/resource_project_deployment_retention.go +++ b/vercel/resource_project_deployment_retention.go @@ -66,37 +66,37 @@ For more detailed information, please see the [Vercel documentation](https://ver "expiration_preview": schema.StringAttribute{ Optional: true, Computed: true, - Description: "The retention period for preview deployments. Should be one of '1m', '2m', '3m', '6m', '1y', 'unlimited'.", + Description: "The retention period for preview deployments. Should be one of '1d', '1w', '1m', '2m', '3m', '6m', '1y', 'unlimited'.", Default: stringdefault.StaticString("unlimited"), Validators: []validator.String{ - stringvalidator.OneOf("1m", "2m", "3m", "6m", "1y", "unlimited"), + stringvalidator.OneOf("1d", "1w", "1m", "2m", "3m", "6m", "1y", "unlimited"), }, }, "expiration_production": schema.StringAttribute{ Optional: true, Computed: true, - Description: "The retention period for production deployments. Should be one of '1m', '2m', '3m', '6m', '1y', 'unlimited'.", + Description: "The retention period for production deployments. Should be one of '1d', '1w', '1m', '2m', '3m', '6m', '1y', 'unlimited'.", Default: stringdefault.StaticString("unlimited"), Validators: []validator.String{ - stringvalidator.OneOf("1m", "2m", "3m", "6m", "1y", "unlimited"), + stringvalidator.OneOf("1d", "1w", "1m", "2m", "3m", "6m", "1y", "unlimited"), }, }, "expiration_canceled": schema.StringAttribute{ Optional: true, Computed: true, - Description: "The retention period for canceled deployments. Should be one of '1m', '2m', '3m', '6m', '1y', 'unlimited'.", + Description: "The retention period for canceled deployments. Should be one of '1d', '1w', '1m', '2m', '3m', '6m', '1y', 'unlimited'.", Default: stringdefault.StaticString("unlimited"), Validators: []validator.String{ - stringvalidator.OneOf("1m", "2m", "3m", "6m", "1y", "unlimited"), + stringvalidator.OneOf("1d", "1w", "1m", "2m", "3m", "6m", "1y", "unlimited"), }, }, "expiration_errored": schema.StringAttribute{ Optional: true, Computed: true, - Description: "The retention period for errored deployments. Should be one of '1m', '2m', '3m', '6m', '1y', 'unlimited'.", + Description: "The retention period for errored deployments. Should be one of '1d', '1w', '1m', '2m', '3m', '6m', '1y', 'unlimited'.", Default: stringdefault.StaticString("unlimited"), Validators: []validator.String{ - stringvalidator.OneOf("1m", "2m", "3m", "6m", "1y", "unlimited"), + stringvalidator.OneOf("1d", "1w", "1m", "2m", "3m", "6m", "1y", "unlimited"), }, }, "project_id": schema.StringAttribute{ diff --git a/vercel/resource_project_deployment_retention_test.go b/vercel/resource_project_deployment_retention_test.go index d2143131..38ef7598 100644 --- a/vercel/resource_project_deployment_retention_test.go +++ b/vercel/resource_project_deployment_retention_test.go @@ -49,9 +49,10 @@ func TestAcc_ProjectDeploymentRetention(t *testing.T) { Config: cfg(testAccProjectDeploymentRetentionsConfig(nameSuffix, testGithubRepo(t))), Check: resource.ComposeAggregateTestCheckFunc( testAccProjectDeploymentRetentionExists(testClient(t), "vercel_project_deployment_retention.example", testTeam(t)), - resource.TestCheckResourceAttr("vercel_project_deployment_retention.example", "expiration_preview", "1m"), + + resource.TestCheckResourceAttr("vercel_project_deployment_retention.example", "expiration_preview", "1w"), resource.TestCheckResourceAttr("vercel_project_deployment_retention.example", "expiration_production", "2m"), - resource.TestCheckResourceAttr("vercel_project_deployment_retention.example", "expiration_canceled", "3m"), + resource.TestCheckResourceAttr("vercel_project_deployment_retention.example", "expiration_canceled", "1d"), resource.TestCheckResourceAttr("vercel_project_deployment_retention.example", "expiration_errored", "1y"), ), }, @@ -92,9 +93,9 @@ resource "vercel_project" "example" { resource "vercel_project_deployment_retention" "example" { project_id = vercel_project.example.id - expiration_preview = "1m" + expiration_preview = "1w" expiration_production = "2m" - expiration_canceled = "3m" + expiration_canceled = "1d" expiration_errored = "1y" } `, projectName, githubRepo) From babe1d237aad1d7abc55731aff4c7ad655b51a77 Mon Sep 17 00:00:00 2001 From: Boris Besemer Date: Fri, 11 Jul 2025 15:46:36 +0200 Subject: [PATCH 2/2] feat: manually update docs my local tfplugindocs is adding wonky text to every doc --- docs/resources/project_deployment_retention.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/resources/project_deployment_retention.md b/docs/resources/project_deployment_retention.md index feadd710..658b0019 100644 --- a/docs/resources/project_deployment_retention.md +++ b/docs/resources/project_deployment_retention.md @@ -60,10 +60,10 @@ resource "vercel_project_deployment_retention" "example_customized" { ### Optional -- `expiration_canceled` (String) The retention period for canceled deployments. Should be one of '1m', '2m', '3m', '6m', '1y', 'unlimited'. -- `expiration_errored` (String) The retention period for errored deployments. Should be one of '1m', '2m', '3m', '6m', '1y', 'unlimited'. -- `expiration_preview` (String) The retention period for preview deployments. Should be one of '1m', '2m', '3m', '6m', '1y', 'unlimited'. -- `expiration_production` (String) The retention period for production deployments. Should be one of '1m', '2m', '3m', '6m', '1y', 'unlimited'. +- `expiration_canceled` (String) The retention period for canceled deployments. Should be one of '1d', '1w', '1m', '2m', '3m', '6m', '1y', 'unlimited'. +- `expiration_errored` (String) The retention period for errored deployments. Should be one of '1d', '1w', '1m', '2m', '3m', '6m', '1y', 'unlimited'. +- `expiration_preview` (String) The retention period for preview deployments. Should be one of '1d', '1w', '1m', '2m', '3m', '6m', '1y', 'unlimited'. +- `expiration_production` (String) The retention period for production deployments. Should be one of '1d', '1w', '1m', '2m', '3m', '6m', '1y', 'unlimited'. - `team_id` (String) The ID of the Vercel team. ## Import