From 9303efabccfb8a8e86ef746ac56eb6c2662f4a8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Filho?= Date: Tue, 10 Feb 2026 16:06:30 -0300 Subject: [PATCH] fix: enable HTTP/3 and QUIC by default in workload - Add 'http3' to default HTTP versions array - Set default QUIC ports to [443] instead of null - Update WORKLOAD_HTTP_VERSIONS constant to include 'http3' - Update WorkloadHTTPVersion type to support 'http3' - Remove explicit protocol configuration from all presets to use new defaults - Update schema defaults and strategy implementation --- packages/config/src/configProcessor/helpers/schema.ts | 6 +++--- .../implementations/workloadProcessConfigStrategy.test.ts | 4 ++-- .../implementations/workloadProcessConfigStrategy.ts | 4 ++-- packages/config/src/constants.ts | 2 +- packages/config/src/types.ts | 2 +- packages/presets/src/presets/angular/config.ts | 8 -------- packages/presets/src/presets/astro/config.ts | 8 -------- packages/presets/src/presets/docusaurus/config.ts | 8 -------- packages/presets/src/presets/eleventy/config.ts | 8 -------- packages/presets/src/presets/emscripten/config.ts | 8 -------- packages/presets/src/presets/gatsby/config.ts | 8 -------- packages/presets/src/presets/hexo/config.ts | 8 -------- packages/presets/src/presets/html/config.ts | 8 -------- packages/presets/src/presets/hugo/config.ts | 8 -------- packages/presets/src/presets/javascript/config.ts | 8 -------- packages/presets/src/presets/jekyll/config.ts | 8 -------- packages/presets/src/presets/next/config.ts | 8 -------- packages/presets/src/presets/nuxt/config.ts | 8 -------- packages/presets/src/presets/opennextjs/config.ts | 8 -------- packages/presets/src/presets/preact/config.ts | 8 -------- packages/presets/src/presets/qwik/config.ts | 8 -------- packages/presets/src/presets/react/config.ts | 8 -------- packages/presets/src/presets/rustwasm/config.ts | 8 -------- packages/presets/src/presets/stencil/config.ts | 8 -------- packages/presets/src/presets/svelte/config.ts | 8 -------- packages/presets/src/presets/typescript/config.ts | 8 -------- packages/presets/src/presets/vitepress/config.ts | 8 -------- packages/presets/src/presets/vue/config.ts | 8 -------- packages/presets/src/presets/vuepress/config.ts | 8 -------- 29 files changed, 9 insertions(+), 201 deletions(-) diff --git a/packages/config/src/configProcessor/helpers/schema.ts b/packages/config/src/configProcessor/helpers/schema.ts index d7cdf720..b900b633 100644 --- a/packages/config/src/configProcessor/helpers/schema.ts +++ b/packages/config/src/configProcessor/helpers/schema.ts @@ -1121,7 +1121,7 @@ const azionConfigSchema = { type: 'string', enum: WORKLOAD_HTTP_VERSIONS, }, - default: ['http1', 'http2'], + default: ['http1', 'http2', 'http3'], }, httpPorts: { type: 'array', @@ -1144,10 +1144,10 @@ const azionConfigSchema = { }, default: { http: { - versions: ['http1', 'http2'], + versions: ['http1', 'http2', 'http3'], httpPorts: [80], httpsPorts: [443], - quicPorts: null, + quicPorts: [443], }, }, additionalProperties: false, diff --git a/packages/config/src/configProcessor/processStrategy/implementations/workloadProcessConfigStrategy.test.ts b/packages/config/src/configProcessor/processStrategy/implementations/workloadProcessConfigStrategy.test.ts index b8409ef9..2270e4db 100644 --- a/packages/config/src/configProcessor/processStrategy/implementations/workloadProcessConfigStrategy.test.ts +++ b/packages/config/src/configProcessor/processStrategy/implementations/workloadProcessConfigStrategy.test.ts @@ -48,10 +48,10 @@ describe('WorkloadProcessConfigStrategy', () => { }, protocols: { http: { - versions: ['http1', 'http2'], + versions: ['http1', 'http2', 'http3'], http_ports: [80], https_ports: [443], - quic_ports: null, + quic_ports: [443], }, }, }), diff --git a/packages/config/src/configProcessor/processStrategy/implementations/workloadProcessConfigStrategy.ts b/packages/config/src/configProcessor/processStrategy/implementations/workloadProcessConfigStrategy.ts index 0f1d8437..96eb442c 100644 --- a/packages/config/src/configProcessor/processStrategy/implementations/workloadProcessConfigStrategy.ts +++ b/packages/config/src/configProcessor/processStrategy/implementations/workloadProcessConfigStrategy.ts @@ -25,10 +25,10 @@ class WorkloadProcessConfigStrategy extends ProcessConfigStrategy { }, protocols: { http: { - versions: workload.protocols?.http?.versions || ['http1', 'http2'], + versions: workload.protocols?.http?.versions || ['http1', 'http2', 'http3'], http_ports: workload.protocols?.http?.httpPorts || [80], https_ports: workload.protocols?.http?.httpsPorts || [443], - quic_ports: workload.protocols?.http?.quicPorts || null, + quic_ports: workload.protocols?.http?.quicPorts || [443], }, }, mtls: workload.mtls diff --git a/packages/config/src/constants.ts b/packages/config/src/constants.ts index 20de7175..a0f3fecc 100644 --- a/packages/config/src/constants.ts +++ b/packages/config/src/constants.ts @@ -294,7 +294,7 @@ export const WORKLOAD_TLS_VERSIONS = ['', 'tls_1_0', 'tls_1_1', 'tls_1_2', 'tls_ export const WORKLOAD_MTLS_VERIFICATION = ['enforce', 'permissive'] as const; -export const WORKLOAD_HTTP_VERSIONS = ['http1', 'http2'] as const; +export const WORKLOAD_HTTP_VERSIONS = ['http1', 'http2', 'http3'] as const; // Constantes para Connector V4 export const EDGE_CONNECTOR_TYPES = ['http', 'storage', 'live_ingest'] as const; diff --git a/packages/config/src/types.ts b/packages/config/src/types.ts index 195e7977..1646efb4 100644 --- a/packages/config/src/types.ts +++ b/packages/config/src/types.ts @@ -173,7 +173,7 @@ export type WorkloadInfrastructure = 1 | 2; export type WorkloadTLSCipher = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8; export type WorkloadTLSVersion = '' | 'tls_1_0' | 'tls_1_1' | 'tls_1_2' | 'tls_1_3'; export type WorkloadMTLSVerification = 'enforce' | 'permissive'; -export type WorkloadHTTPVersion = 'http1' | 'http2'; +export type WorkloadHTTPVersion = 'http1' | 'http2' | 'http3'; // Connector types export type ConnectorType = 'http' | 'storage' | 'live_ingest'; diff --git a/packages/presets/src/presets/angular/config.ts b/packages/presets/src/presets/angular/config.ts index f5dac6f7..5f8996f1 100644 --- a/packages/presets/src/presets/angular/config.ts +++ b/packages/presets/src/presets/angular/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/astro/config.ts b/packages/presets/src/presets/astro/config.ts index 6a4439c1..a2b3b9d8 100644 --- a/packages/presets/src/presets/astro/config.ts +++ b/packages/presets/src/presets/astro/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/docusaurus/config.ts b/packages/presets/src/presets/docusaurus/config.ts index f8cd1421..83923284 100644 --- a/packages/presets/src/presets/docusaurus/config.ts +++ b/packages/presets/src/presets/docusaurus/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/eleventy/config.ts b/packages/presets/src/presets/eleventy/config.ts index b61fcf65..948c6427 100644 --- a/packages/presets/src/presets/eleventy/config.ts +++ b/packages/presets/src/presets/eleventy/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/emscripten/config.ts b/packages/presets/src/presets/emscripten/config.ts index 563c6b13..44a5bed0 100644 --- a/packages/presets/src/presets/emscripten/config.ts +++ b/packages/presets/src/presets/emscripten/config.ts @@ -82,14 +82,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/gatsby/config.ts b/packages/presets/src/presets/gatsby/config.ts index 7aa44ce3..3307dd85 100644 --- a/packages/presets/src/presets/gatsby/config.ts +++ b/packages/presets/src/presets/gatsby/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/hexo/config.ts b/packages/presets/src/presets/hexo/config.ts index 7aa44ce3..3307dd85 100644 --- a/packages/presets/src/presets/hexo/config.ts +++ b/packages/presets/src/presets/hexo/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/html/config.ts b/packages/presets/src/presets/html/config.ts index 442415cb..b3a9eb5a 100644 --- a/packages/presets/src/presets/html/config.ts +++ b/packages/presets/src/presets/html/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/hugo/config.ts b/packages/presets/src/presets/hugo/config.ts index 7aa44ce3..3307dd85 100644 --- a/packages/presets/src/presets/hugo/config.ts +++ b/packages/presets/src/presets/hugo/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/javascript/config.ts b/packages/presets/src/presets/javascript/config.ts index d4903462..1a3ffa84 100644 --- a/packages/presets/src/presets/javascript/config.ts +++ b/packages/presets/src/presets/javascript/config.ts @@ -53,14 +53,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/jekyll/config.ts b/packages/presets/src/presets/jekyll/config.ts index b61fcf65..948c6427 100644 --- a/packages/presets/src/presets/jekyll/config.ts +++ b/packages/presets/src/presets/jekyll/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/next/config.ts b/packages/presets/src/presets/next/config.ts index 10a64757..40ff59cf 100644 --- a/packages/presets/src/presets/next/config.ts +++ b/packages/presets/src/presets/next/config.ts @@ -156,14 +156,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/nuxt/config.ts b/packages/presets/src/presets/nuxt/config.ts index 395361d3..2bf7aaa2 100644 --- a/packages/presets/src/presets/nuxt/config.ts +++ b/packages/presets/src/presets/nuxt/config.ts @@ -246,14 +246,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/opennextjs/config.ts b/packages/presets/src/presets/opennextjs/config.ts index c87a0ecb..dab2abe0 100644 --- a/packages/presets/src/presets/opennextjs/config.ts +++ b/packages/presets/src/presets/opennextjs/config.ts @@ -159,14 +159,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/preact/config.ts b/packages/presets/src/presets/preact/config.ts index 84b14393..760f66d5 100644 --- a/packages/presets/src/presets/preact/config.ts +++ b/packages/presets/src/presets/preact/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/qwik/config.ts b/packages/presets/src/presets/qwik/config.ts index 84b14393..760f66d5 100644 --- a/packages/presets/src/presets/qwik/config.ts +++ b/packages/presets/src/presets/qwik/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/react/config.ts b/packages/presets/src/presets/react/config.ts index 84b14393..760f66d5 100644 --- a/packages/presets/src/presets/react/config.ts +++ b/packages/presets/src/presets/react/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/rustwasm/config.ts b/packages/presets/src/presets/rustwasm/config.ts index bd88d19e..7ffa3265 100644 --- a/packages/presets/src/presets/rustwasm/config.ts +++ b/packages/presets/src/presets/rustwasm/config.ts @@ -79,14 +79,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/stencil/config.ts b/packages/presets/src/presets/stencil/config.ts index 442415cb..b3a9eb5a 100644 --- a/packages/presets/src/presets/stencil/config.ts +++ b/packages/presets/src/presets/stencil/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/svelte/config.ts b/packages/presets/src/presets/svelte/config.ts index 51a086ed..b88f1a21 100644 --- a/packages/presets/src/presets/svelte/config.ts +++ b/packages/presets/src/presets/svelte/config.ts @@ -216,14 +216,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/typescript/config.ts b/packages/presets/src/presets/typescript/config.ts index 6ef3a119..1dd649f0 100644 --- a/packages/presets/src/presets/typescript/config.ts +++ b/packages/presets/src/presets/typescript/config.ts @@ -53,14 +53,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/vitepress/config.ts b/packages/presets/src/presets/vitepress/config.ts index d8d9820b..0a47617e 100644 --- a/packages/presets/src/presets/vitepress/config.ts +++ b/packages/presets/src/presets/vitepress/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/vue/config.ts b/packages/presets/src/presets/vue/config.ts index 84b14393..760f66d5 100644 --- a/packages/presets/src/presets/vue/config.ts +++ b/packages/presets/src/presets/vue/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME', diff --git a/packages/presets/src/presets/vuepress/config.ts b/packages/presets/src/presets/vuepress/config.ts index d8d9820b..0a47617e 100644 --- a/packages/presets/src/presets/vuepress/config.ts +++ b/packages/presets/src/presets/vuepress/config.ts @@ -49,14 +49,6 @@ const config: AzionConfig = { name: '$WORKLOAD_NAME', active: true, infrastructure: 1, - protocols: { - http: { - versions: ['http1', 'http2'], - httpPorts: [80], - httpsPorts: [443], - quicPorts: null, - }, - }, deployments: [ { name: '$DEPLOYMENT_NAME',