From c39d856867f5cef980f29886e935c3e5805dbf67 Mon Sep 17 00:00:00 2001 From: Zdenek Farana Date: Tue, 7 Jul 2026 19:03:22 +0200 Subject: [PATCH] upgrade to cloudfront-js-2.0 --- .../cloudformation/stack/static_site_test.go | 35 +++++++++++++++++++ .../workloads/static-site-test.stack.yml | 2 +- .../testdata/workloads/static-site.stack.yml | 2 +- .../workloads/services/static-site/cf.yml | 2 +- 4 files changed, 38 insertions(+), 3 deletions(-) diff --git a/internal/pkg/deploy/cloudformation/stack/static_site_test.go b/internal/pkg/deploy/cloudformation/stack/static_site_test.go index ebe869310d8..c4bd8023c5d 100644 --- a/internal/pkg/deploy/cloudformation/stack/static_site_test.go +++ b/internal/pkg/deploy/cloudformation/stack/static_site_test.go @@ -240,6 +240,41 @@ func TestStaticSite_Template(t *testing.T) { // THEN require.EqualError(t, err, "some error") }) + + t.Run("renders CloudFront Function with runtime 2.0", func(t *testing.T) { + // GIVEN + static, err := NewStaticSite(&StaticSiteConfig{ + App: &config.Application{ + Name: testAppName, + }, + EnvManifest: &manifest.Environment{ + Workload: manifest.Workload{ + Name: aws.String(testEnvName), + }, + }, + Manifest: &manifest.StaticSite{ + Workload: manifest.Workload{ + Name: aws.String("frontend"), + }, + }, + ArtifactBucketName: "mockBucket", + RuntimeConfig: RuntimeConfig{ + Region: "us-west-2", + }, + Addons: mockAddons{}, + }) + require.NoError(t, err) + static.parser = realEmbedFS + + // WHEN + tpl, err := static.Template() + + // THEN + require.NoError(t, err) + require.Contains(t, tpl, "Runtime: cloudfront-js-2.0") + require.NotContains(t, tpl, "Runtime: cloudfront-js-1.0") + require.Contains(t, tpl, "function handler(event){var request=event.request;var uri=request.uri;if(uri.endsWith('/')){request.uri+='index.html'}else if(!uri.includes('.')){request.uri+='/index.html'}return request}") + }) } func TestStaticSite_Parameters(t *testing.T) { diff --git a/internal/pkg/deploy/cloudformation/stack/testdata/workloads/static-site-test.stack.yml b/internal/pkg/deploy/cloudformation/stack/testdata/workloads/static-site-test.stack.yml index bc18c6edf22..c7ec06ac516 100644 --- a/internal/pkg/deploy/cloudformation/stack/testdata/workloads/static-site-test.stack.yml +++ b/internal/pkg/deploy/cloudformation/stack/testdata/workloads/static-site-test.stack.yml @@ -103,7 +103,7 @@ Resources: function handler(event){var request=event.request;var uri=request.uri;if(uri.endsWith('/')){request.uri+='index.html'}else if(!uri.includes('.')){request.uri+='/index.html'}return request} FunctionConfig: Comment: CloudFront Function to rewrite viewer request to index.html - Runtime: cloudfront-js-1.0 + Runtime: cloudfront-js-2.0 Name: my-app-test-static CloudFrontDistribution: diff --git a/internal/pkg/deploy/cloudformation/stack/testdata/workloads/static-site.stack.yml b/internal/pkg/deploy/cloudformation/stack/testdata/workloads/static-site.stack.yml index 8c4e971cbf0..a8f635fa1a8 100644 --- a/internal/pkg/deploy/cloudformation/stack/testdata/workloads/static-site.stack.yml +++ b/internal/pkg/deploy/cloudformation/stack/testdata/workloads/static-site.stack.yml @@ -103,7 +103,7 @@ Resources: function handler(event){var request=event.request;var uri=request.uri;if(uri.endsWith('/')){request.uri+='index.html'}else if(!uri.includes('.')){request.uri+='/index.html'}return request} FunctionConfig: Comment: CloudFront Function to rewrite viewer request to index.html - Runtime: cloudfront-js-1.0 + Runtime: cloudfront-js-2.0 Name: my-app-my-env-static CloudFrontDistribution: diff --git a/internal/pkg/template/templates/workloads/services/static-site/cf.yml b/internal/pkg/template/templates/workloads/services/static-site/cf.yml index 77577316d6d..d46ddbd93f2 100644 --- a/internal/pkg/template/templates/workloads/services/static-site/cf.yml +++ b/internal/pkg/template/templates/workloads/services/static-site/cf.yml @@ -116,7 +116,7 @@ Resources: function handler(event){var request=event.request;var uri=request.uri;if(uri.endsWith('/')){request.uri+='index.html'}else if(!uri.includes('.')){request.uri+='/index.html'}return request} FunctionConfig: Comment: CloudFront Function to rewrite viewer request to index.html - Runtime: cloudfront-js-1.0 + Runtime: cloudfront-js-2.0 # Truncate the name to allow at most 64 characters. Name: {{truncateWithHashPadding (printf "%s-%s-%s" .AppName .EnvName .WorkloadName) 58 6}}