update crds

This commit is contained in:
2026-06-17 14:56:34 +01:00
parent 8e57124a0c
commit 3a8c946438
62 changed files with 3942 additions and 400 deletions
@@ -1,5 +1,5 @@
{
"description": "Middleware is the CRD implementation of a Traefik Middleware.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/overview/",
"description": "Middleware is the CRD implementation of a Traefik Middleware.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/overview/",
"properties": {
"apiVersion": {
"description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
@@ -16,7 +16,7 @@
"description": "MiddlewareSpec defines the desired state of a Middleware.",
"properties": {
"addPrefix": {
"description": "AddPrefix holds the add prefix middleware configuration.\nThis middleware updates the path of a request before forwarding it.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/addprefix/",
"description": "AddPrefix holds the add prefix middleware configuration.\nThis middleware updates the path of a request before forwarding it.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/addprefix/",
"properties": {
"prefix": {
"description": "Prefix is the string to add before the current path in the requested URL.\nIt should include a leading slash (/).",
@@ -33,10 +33,10 @@
"additionalProperties": false
},
"basicAuth": {
"description": "BasicAuth holds the basic auth middleware configuration.\nThis middleware restricts access to your services to known users.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/basicauth/",
"description": "BasicAuth holds the basic auth middleware configuration.\nThis middleware restricts access to your services to known users.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/basicauth/",
"properties": {
"headerField": {
"description": "HeaderField defines a header field to store the authenticated user.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/basicauth/#headerfield",
"description": "HeaderField defines a header field to store the authenticated user.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/basicauth/#headerfield",
"type": "string"
},
"realm": {
@@ -56,7 +56,7 @@
"additionalProperties": false
},
"buffering": {
"description": "Buffering holds the buffering middleware configuration.\nThis middleware retries or limits the size of requests that can be forwarded to backends.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/buffering/#maxrequestbodybytes",
"description": "Buffering holds the buffering middleware configuration.\nThis middleware retries or limits the size of requests that can be forwarded to backends.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/buffering/#maxrequestbodybytes",
"properties": {
"maxRequestBodyBytes": {
"description": "MaxRequestBodyBytes defines the maximum allowed body size for the request (in bytes).\nIf the request exceeds the allowed size, it is not forwarded to the service, and the client gets a 413 (Request Entity Too Large) response.\nDefault: 0 (no maximum).",
@@ -79,7 +79,7 @@
"type": "integer"
},
"retryExpression": {
"description": "RetryExpression defines the retry conditions.\nIt is a logical combination of functions with operators AND (&&) and OR (||).\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/buffering/#retryexpression",
"description": "RetryExpression defines the retry conditions.\nIt is a logical combination of functions with operators AND (&&) and OR (||).\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/buffering/#retryexpression",
"type": "string"
}
},
@@ -87,7 +87,7 @@
"additionalProperties": false
},
"chain": {
"description": "Chain holds the configuration of the chain middleware.\nThis middleware enables to define reusable combinations of other pieces of middleware.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/chain/",
"description": "Chain holds the configuration of the chain middleware.\nThis middleware enables to define reusable combinations of other pieces of middleware.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/chain/",
"properties": {
"middlewares": {
"description": "Middlewares is the list of MiddlewareRef which composes the chain.",
@@ -171,7 +171,7 @@
"additionalProperties": false
},
"compress": {
"description": "Compress holds the compress middleware configuration.\nThis middleware compresses responses before sending them to the client, using gzip, brotli, or zstd compression.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/compress/",
"description": "Compress holds the compress middleware configuration.\nThis middleware compresses responses before sending them to the client, using gzip, brotli, or zstd compression.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/compress/",
"properties": {
"defaultEncoding": {
"description": "DefaultEncoding specifies the default encoding if the `Accept-Encoding` header is not in the request or contains a wildcard (`*`).",
@@ -219,10 +219,10 @@
"additionalProperties": false
},
"digestAuth": {
"description": "DigestAuth holds the digest auth middleware configuration.\nThis middleware restricts access to your services to known users.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/digestauth/",
"description": "DigestAuth holds the digest auth middleware configuration.\nThis middleware restricts access to your services to known users.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/digestauth/",
"properties": {
"headerField": {
"description": "HeaderField defines a header field to store the authenticated user.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/digestauth/#headerfield",
"description": "HeaderField defines a header field to store the authenticated user.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/digestauth/#headerfield",
"type": "string"
},
"realm": {
@@ -241,15 +241,50 @@
"type": "object",
"additionalProperties": false
},
"encodedCharacters": {
"description": "EncodedCharacters configures which encoded characters are allowed in the request path.",
"properties": {
"allowEncodedBackSlash": {
"description": "AllowEncodedBackSlash defines whether requests with encoded back slash characters in the path are allowed.",
"type": "boolean"
},
"allowEncodedHash": {
"description": "AllowEncodedHash defines whether requests with encoded hash characters in the path are allowed.",
"type": "boolean"
},
"allowEncodedNullCharacter": {
"description": "AllowEncodedNullCharacter defines whether requests with encoded null characters in the path are allowed.",
"type": "boolean"
},
"allowEncodedPercent": {
"description": "AllowEncodedPercent defines whether requests with encoded percent characters in the path are allowed.",
"type": "boolean"
},
"allowEncodedQuestionMark": {
"description": "AllowEncodedQuestionMark defines whether requests with encoded question mark characters in the path are allowed.",
"type": "boolean"
},
"allowEncodedSemicolon": {
"description": "AllowEncodedSemicolon defines whether requests with encoded semicolon characters in the path are allowed.",
"type": "boolean"
},
"allowEncodedSlash": {
"description": "AllowEncodedSlash defines whether requests with encoded slash characters in the path are allowed.",
"type": "boolean"
}
},
"type": "object",
"additionalProperties": false
},
"errors": {
"description": "ErrorPage holds the custom error middleware configuration.\nThis middleware returns a custom page in lieu of the default, according to configured ranges of HTTP Status codes.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/errorpages/",
"description": "ErrorPage holds the custom error middleware configuration.\nThis middleware returns a custom page in lieu of the default, according to configured ranges of HTTP Status codes.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/errorpages/",
"properties": {
"query": {
"description": "Query defines the URL for the error page (hosted by service).\nThe {status} variable can be used in order to insert the status code in the URL.\nThe {originalStatus} variable can be used in order to insert the upstream status code in the URL.\nThe {url} variable can be used in order to insert the escaped request URL.",
"type": "string"
},
"service": {
"description": "Service defines the reference to a Kubernetes Service that will serve the error page.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/errorpages/#service",
"description": "Service defines the reference to a Kubernetes Service that will serve the error page.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/errorpages/#service",
"properties": {
"healthCheck": {
"description": "Healthcheck defines health checks for ExternalName services.",
@@ -341,6 +376,28 @@
],
"type": "string"
},
"middlewares": {
"description": "Middlewares defines the list of references to Middleware resources to apply to the service.",
"items": {
"description": "MiddlewareRef is a reference to a Middleware resource.",
"properties": {
"name": {
"description": "Name defines the name of the referenced Middleware resource.",
"type": "string"
},
"namespace": {
"description": "Namespace defines the namespace of the referenced Middleware resource.",
"type": "string"
}
},
"required": [
"name"
],
"type": "object",
"additionalProperties": false
},
"type": "array"
},
"name": {
"description": "Name defines the name of the referenced Kubernetes Service or TraefikService.\nThe differentiation between the two is specified in the Kind field.",
"type": "string"
@@ -416,7 +473,7 @@
"type": "string"
},
"sticky": {
"description": "Sticky defines the sticky sessions configuration.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/load-balancing/service/#sticky-sessions",
"description": "Sticky defines the sticky sessions configuration.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/load-balancing/service/#sticky-sessions",
"properties": {
"cookie": {
"description": "Cookie defines the sticky cookie configuration.",
@@ -446,7 +503,10 @@
"enum": [
"none",
"lax",
"strict"
"strict",
"None",
"Lax",
"Strict"
],
"type": "string"
},
@@ -505,7 +565,7 @@
"additionalProperties": false
},
"forwardAuth": {
"description": "ForwardAuth holds the forward auth middleware configuration.\nThis middleware delegates the request authentication to a Service.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/",
"description": "ForwardAuth holds the forward auth middleware configuration.\nThis middleware delegates the request authentication to a Service.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/",
"properties": {
"addAuthCookiesToResponse": {
"description": "AddAuthCookiesToResponse defines the list of cookies to copy from the authentication server response to the response.",
@@ -533,7 +593,11 @@
"type": "array"
},
"authResponseHeadersRegex": {
"description": "AuthResponseHeadersRegex defines the regex to match headers to copy from the authentication server response and set on forwarded request, after stripping all headers that match the regex.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/#authresponseheadersregex",
"description": "AuthResponseHeadersRegex defines the regex to match headers to copy from the authentication server response and set on forwarded request, after stripping all headers that match the regex.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/#authresponseheadersregex",
"type": "string"
},
"authSigninURL": {
"description": "AuthSigninURL specifies the URL to redirect to when the authentication server returns 401 Unauthorized.",
"type": "string"
},
"forwardBody": {
@@ -541,7 +605,7 @@
"type": "boolean"
},
"headerField": {
"description": "HeaderField defines a header field to store the authenticated user.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/forwardauth/#headerfield",
"description": "HeaderField defines a header field to store the authenticated user.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/forwardauth/#headerfield",
"type": "string"
},
"maxBodySize": {
@@ -586,7 +650,7 @@
"additionalProperties": false
},
"trustForwardHeader": {
"description": "TrustForwardHeader defines whether to trust (ie: forward) all X-Forwarded-* headers.",
"description": "TrustForwardHeader defines whether to trust (ie: forward) all X-Forwarded-* headers.\n\nDeprecated: Use forwardedHeaders.trustedIPs at the EntryPoint level instead, and set trustForwardHeader to true on this middleware.",
"type": "boolean"
}
},
@@ -608,7 +672,7 @@
"additionalProperties": false
},
"headers": {
"description": "Headers holds the headers middleware configuration.\nThis middleware manages the requests and responses headers.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/headers/#customrequestheaders",
"description": "Headers holds the headers middleware configuration.\nThis middleware manages the requests and responses headers.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/headers/#customrequestheaders",
"properties": {
"accessControlAllowCredentials": {
"description": "AccessControlAllowCredentials defines whether the request can include user credentials.",
@@ -780,7 +844,7 @@
"additionalProperties": false
},
"inFlightReq": {
"description": "InFlightReq holds the in-flight request middleware configuration.\nThis middleware limits the number of requests being processed and served concurrently.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/inflightreq/",
"description": "InFlightReq holds the in-flight request middleware configuration.\nThis middleware limits the number of requests being processed and served concurrently.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/inflightreq/",
"properties": {
"amount": {
"description": "Amount defines the maximum amount of allowed simultaneous in-flight request.\nThe middleware responds with HTTP 429 Too Many Requests if there are already amount requests in progress (based on the same sourceCriterion strategy).",
@@ -789,10 +853,10 @@
"type": "integer"
},
"sourceCriterion": {
"description": "SourceCriterion defines what criterion is used to group requests as originating from a common source.\nIf several strategies are defined at the same time, an error will be raised.\nIf none are set, the default is to use the requestHost.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/inflightreq/#sourcecriterion",
"description": "SourceCriterion defines what criterion is used to group requests as originating from a common source.\nIf several strategies are defined at the same time, an error will be raised.\nIf none are set, the default is to use the requestHost.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/inflightreq/#sourcecriterion",
"properties": {
"ipStrategy": {
"description": "IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy",
"description": "IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy",
"properties": {
"depth": {
"description": "Depth tells Traefik to use the X-Forwarded-For header and take the IP located at the depth position (starting from the right).",
@@ -831,10 +895,10 @@
"additionalProperties": false
},
"ipAllowList": {
"description": "IPAllowList holds the IP allowlist middleware configuration.\nThis middleware limits allowed requests based on the client IP.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/",
"description": "IPAllowList holds the IP allowlist middleware configuration.\nThis middleware limits allowed requests based on the client IP.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/",
"properties": {
"ipStrategy": {
"description": "IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy",
"description": "IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy",
"properties": {
"depth": {
"description": "Depth tells Traefik to use the X-Forwarded-For header and take the IP located at the depth position (starting from the right).",
@@ -875,7 +939,7 @@
"description": "Deprecated: please use IPAllowList instead.",
"properties": {
"ipStrategy": {
"description": "IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy",
"description": "IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy",
"properties": {
"depth": {
"description": "Depth tells Traefik to use the X-Forwarded-For header and take the IP located at the depth position (starting from the right).",
@@ -909,7 +973,7 @@
"additionalProperties": false
},
"passTLSClientCert": {
"description": "PassTLSClientCert holds the pass TLS client cert middleware configuration.\nThis middleware adds the selected data from the passed client TLS certificate to a header.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/passtlsclientcert/",
"description": "PassTLSClientCert holds the pass TLS client cert middleware configuration.\nThis middleware adds the selected data from the passed client TLS certificate to a header.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/passtlsclientcert/",
"properties": {
"info": {
"description": "Info selects the specific client certificate details you want to add to the X-Forwarded-Tls-Client-Cert-Info header.",
@@ -1020,11 +1084,11 @@
"additionalProperties": {
"x-kubernetes-preserve-unknown-fields": true
},
"description": "Plugin defines the middleware plugin configuration.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/overview/#community-middlewares",
"description": "Plugin defines the middleware plugin configuration.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/overview/#community-middlewares",
"type": "object"
},
"rateLimit": {
"description": "RateLimit holds the rate limit configuration.\nThis middleware ensures that services will receive a fair amount of requests, and allows one to define what fair is.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/ratelimit/",
"description": "RateLimit holds the rate limit configuration.\nThis middleware ensures that services will receive a fair amount of requests, and allows one to define what fair is.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/ratelimit/",
"properties": {
"average": {
"description": "Average is the maximum rate, by default in requests/s, allowed for the given source.\nIt defaults to 0, which means no rate limiting.\nThe rate is actually defined by dividing Average by Period. So for a rate below 1req/s,\none needs to define a Period larger than a second.",
@@ -1146,7 +1210,7 @@
"description": "SourceCriterion defines what criterion is used to group requests as originating from a common source.\nIf several strategies are defined at the same time, an error will be raised.\nIf none are set, the default is to use the request's remote address field (as an ipStrategy).",
"properties": {
"ipStrategy": {
"description": "IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/ipallowlist/#ipstrategy",
"description": "IPStrategy holds the IP strategy configuration used by Traefik to determine the client IP.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/ipallowlist/#ipstrategy",
"properties": {
"depth": {
"description": "Depth tells Traefik to use the X-Forwarded-For header and take the IP located at the depth position (starting from the right).",
@@ -1185,7 +1249,7 @@
"additionalProperties": false
},
"redirectRegex": {
"description": "RedirectRegex holds the redirect regex middleware configuration.\nThis middleware redirects a request using regex matching and replacement.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/redirectregex/#regex",
"description": "RedirectRegex holds the redirect regex middleware configuration.\nThis middleware redirects a request using regex matching and replacement.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/redirectregex/#regex",
"properties": {
"permanent": {
"description": "Permanent defines whether the redirection is permanent (308).",
@@ -1204,7 +1268,7 @@
"additionalProperties": false
},
"redirectScheme": {
"description": "RedirectScheme holds the redirect scheme middleware configuration.\nThis middleware redirects requests from a scheme/port to another.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/redirectscheme/",
"description": "RedirectScheme holds the redirect scheme middleware configuration.\nThis middleware redirects requests from a scheme/port to another.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/redirectscheme/",
"properties": {
"permanent": {
"description": "Permanent defines whether the redirection is permanent.\nFor HTTP GET requests a 301 is returned, otherwise a 308 is returned.",
@@ -1223,7 +1287,7 @@
"additionalProperties": false
},
"replacePath": {
"description": "ReplacePath holds the replace path middleware configuration.\nThis middleware replaces the path of the request URL and store the original path in an X-Replaced-Path header.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/replacepath/",
"description": "ReplacePath holds the replace path middleware configuration.\nThis middleware replaces the path of the request URL and store the original path in an X-Replaced-Path header.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/replacepath/",
"properties": {
"path": {
"description": "Path defines the path to use as replacement in the request URL.",
@@ -1234,7 +1298,7 @@
"additionalProperties": false
},
"replacePathRegex": {
"description": "ReplacePathRegex holds the replace path regex middleware configuration.\nThis middleware replaces the path of a URL using regex matching and replacement.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/replacepathregex/",
"description": "ReplacePathRegex holds the replace path regex middleware configuration.\nThis middleware replaces the path of a URL using regex matching and replacement.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/replacepathregex/",
"properties": {
"regex": {
"description": "Regex defines the regular expression used to match and capture the path from the request URL.",
@@ -1249,13 +1313,17 @@
"additionalProperties": false
},
"retry": {
"description": "Retry holds the retry middleware configuration.\nThis middleware reissues requests a given number of times to a backend server if that server does not reply.\nAs soon as the server answers, the middleware stops retrying, regardless of the response status.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/middlewares/retry/",
"description": "Retry holds the retry middleware configuration.\nThis middleware reissues requests a given number of times to a backend server if that server does not reply.\nAs soon as the server answers, the middleware stops retrying, regardless of the response status.\nMore info: https://doc.traefik.io/traefik/v3.7/reference/routing-configuration/http/middlewares/retry/",
"properties": {
"attempts": {
"description": "Attempts defines how many times the request should be retried.",
"minimum": 0,
"type": "integer"
},
"disableRetryOnNetworkError": {
"description": "DisableRetryOnNetworkError defines whether to disable the retry if an error occurs when transmitting the request to the server.",
"type": "boolean"
},
"initialInterval": {
"anyOf": [
{
@@ -1268,13 +1336,44 @@
"description": "InitialInterval defines the first wait time in the exponential backoff series.\nThe maximum interval is calculated as twice the initialInterval.\nIf unspecified, requests will be retried immediately.\nThe value of initialInterval should be provided in seconds or as a valid duration format,\nsee https://pkg.go.dev/time#ParseDuration.",
"pattern": "^([0-9]+(ns|us|\u00b5s|ms|s|m|h)?)+$",
"x-kubernetes-int-or-string": true
},
"maxRequestBodyBytes": {
"description": "MaxRequestBodyBytes defines the maximum size for the request body.\nDefault is `-1`, which means no limit.",
"format": "int64",
"minimum": -1,
"type": "integer"
},
"retryNonIdempotentMethod": {
"description": "RetryNonIdempotentMethod activates the retry for non-idempotent methods (POST, LOCK, PATCH)",
"type": "boolean"
},
"status": {
"description": "Status defines the range of HTTP status codes to retry on.",
"items": {
"pattern": "^([1-5][0-9]{2}[,-]?)+$",
"type": "string"
},
"type": "array"
},
"timeout": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"description": "Timeout defines how much time the middleware is allowed to retry the request.\nThe value of timeout should be provided in seconds or as a valid duration format,\nsee https://pkg.go.dev/time#ParseDuration.",
"pattern": "^([0-9]+(ns|us|\u00b5s|ms|s|m|h)?)+$",
"x-kubernetes-int-or-string": true
}
},
"type": "object",
"additionalProperties": false
},
"stripPrefix": {
"description": "StripPrefix holds the strip prefix middleware configuration.\nThis middleware removes the specified prefixes from the URL path.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/stripprefix/",
"description": "StripPrefix holds the strip prefix middleware configuration.\nThis middleware removes the specified prefixes from the URL path.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/stripprefix/",
"properties": {
"forceSlash": {
"description": "Deprecated: ForceSlash option is deprecated, please remove any usage of this option.\nForceSlash ensures that the resulting stripped path is not the empty string, by replacing it with / when necessary.\nDefault: true.",
@@ -1292,7 +1391,7 @@
"additionalProperties": false
},
"stripPrefixRegex": {
"description": "StripPrefixRegex holds the strip prefix regex middleware configuration.\nThis middleware removes the matching prefixes from the URL path.\nMore info: https://doc.traefik.io/traefik/v3.6/middlewares/http/stripprefixregex/",
"description": "StripPrefixRegex holds the strip prefix regex middleware configuration.\nThis middleware removes the matching prefixes from the URL path.\nMore info: https://doc.traefik.io/traefik/v3.7/middlewares/http/stripprefixregex/",
"properties": {
"regex": {
"description": "Regex defines the regular expression to match the path prefix from the request URL.",