From 2a3b696d85aca0e059a77e4b6b0e279dc6c26a71 Mon Sep 17 00:00:00 2001 From: Kevin Pollet Date: Tue, 7 Oct 2025 15:38:05 +0200 Subject: [PATCH] Fix provider option descriptions --- .../configuration-options.md | 30 ++++++++--------- pkg/config/static/static_config.go | 33 +++++++++---------- 2 files changed, 31 insertions(+), 32 deletions(-) diff --git a/docs/content/reference/install-configuration/configuration-options.md b/docs/content/reference/install-configuration/configuration-options.md index 4c82fb1fb..de1b9fd26 100644 --- a/docs/content/reference/install-configuration/configuration-options.md +++ b/docs/content/reference/install-configuration/configuration-options.md @@ -230,7 +230,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | ping.entrypoint | EntryPoint | traefik | | ping.manualrouting | Manual routing | false | | ping.terminatingstatuscode | Terminating status code | 503 | -| providers.consul | Enable Consul backend with default settings. | false | +| providers.consul | Enables Consul provider. | false | | providers.consul.endpoints | KV store endpoints. | 127.0.0.1:8500 | | providers.consul.namespaces | Sets the namespaces used to discover the configuration (Consul Enterprise only). | | | providers.consul.rootkey | Root key used for KV store. | traefik | @@ -239,7 +239,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.consul.tls.insecureskipverify | TLS insecure skip verify | false | | providers.consul.tls.key | TLS key | | | providers.consul.token | Per-request ACL token. | | -| providers.consulcatalog | Enable ConsulCatalog backend with default settings. | false | +| providers.consulcatalog | Enables Consul Catalog provider. | false | | providers.consulcatalog.cache | Use local agent caching for catalog reads. | false | | providers.consulcatalog.connectaware | Enable Consul Connect support. | false | | providers.consulcatalog.connectbydefault | Consider every service as Connect capable by default. | false | @@ -265,7 +265,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.consulcatalog.stale | Use stale consistency for catalog reads. | false | | providers.consulcatalog.strictchecks | A list of service health statuses to allow taking traffic. | passing, warning | | providers.consulcatalog.watch | Watch Consul API events. | false | -| providers.docker | Enable Docker backend with default settings. | false | +| providers.docker | Enables Docker provider. | false | | providers.docker.allowemptyservices | Disregards the Docker containers health checks with respect to the creation or removal of the corresponding services. | false | | providers.docker.constraints | Constraints is an expression that Traefik matches against the container's labels to determine whether to create any route for that container. | | | providers.docker.defaultrule | Default rule. | Host(`{{ normalize .Name }}`) | @@ -281,7 +281,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.docker.usebindportip | Use the ip address from the bound port, rather than from the inner network. | false | | providers.docker.username | Username for Basic HTTP authentication. | | | providers.docker.watch | Watch Docker events. | true | -| providers.ecs | Enable AWS ECS backend with default settings. | false | +| providers.ecs | Enables AWS ECS provider. | false | | providers.ecs.accesskeyid | AWS credentials access key ID to use for making requests. | | | providers.ecs.autodiscoverclusters | Auto discover cluster. | false | | providers.ecs.clusters | ECS Cluster names. | default | @@ -293,7 +293,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.ecs.refreshseconds | Polling interval (in seconds). | 15 | | providers.ecs.region | AWS region to use for requests. | | | providers.ecs.secretaccesskey | AWS credentials access key to use for making requests. | | -| providers.etcd | Enable Etcd backend with default settings. | false | +| providers.etcd | Enables Etcd provider. | false | | providers.etcd.endpoints | KV store endpoints. | 127.0.0.1:2379 | | providers.etcd.password | Password for authentication. | | | providers.etcd.rootkey | Root key used for KV store. | traefik | @@ -306,7 +306,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.file.directory | Load dynamic configuration from one or more .yml or .toml files in a directory. | | | providers.file.filename | Load dynamic configuration from a file. | | | providers.file.watch | Watch provider. | true | -| providers.http | Enable HTTP backend with default settings. | false | +| providers.http | Enables HTTP provider. | false | | providers.http.endpoint | Load configuration from this endpoint. | | | providers.http.headers._name_ | Define custom headers to be sent to the endpoint. | | | providers.http.pollinterval | Polling interval for endpoint. | 5 | @@ -315,7 +315,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.http.tls.cert | TLS cert | | | providers.http.tls.insecureskipverify | TLS insecure skip verify | false | | providers.http.tls.key | TLS key | | -| providers.kubernetescrd | Enable Kubernetes backend with default settings. | false | +| providers.kubernetescrd | Enables Kubernetes CRD provider. | false | | providers.kubernetescrd.allowcrossnamespace | Allow cross namespace resource reference. | false | | providers.kubernetescrd.allowemptyservices | Allow the creation of services without endpoints. | false | | providers.kubernetescrd.allowexternalnameservices | Allow ExternalName services. | false | @@ -328,7 +328,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.kubernetescrd.nativelbbydefault | Defines whether to use Native Kubernetes load-balancing mode by default. | false | | providers.kubernetescrd.throttleduration | Ingress refresh throttle duration | 0 | | providers.kubernetescrd.token | Kubernetes bearer token (not needed for in-cluster client). It accepts either a token value or a file path to the token. | | -| providers.kubernetesgateway | Enable Kubernetes gateway api provider with default settings. | false | +| providers.kubernetesgateway | Enables Kubernetes Gateway API provider. | false | | providers.kubernetesgateway.certauthfilepath | Kubernetes certificate authority file path (not needed for in-cluster client). | | | providers.kubernetesgateway.endpoint | Kubernetes server endpoint (required for external cluster client). | | | providers.kubernetesgateway.experimentalchannel | Toggles Experimental Channel resources support (TCPRoute, TLSRoute...). | false | @@ -342,7 +342,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.kubernetesgateway.statusaddress.service.namespace | Namespace of the Kubernetes service. | | | providers.kubernetesgateway.throttleduration | Kubernetes refresh throttle duration | 0 | | providers.kubernetesgateway.token | Kubernetes bearer token (not needed for in-cluster client). It accepts either a token value or a file path to the token. | | -| providers.kubernetesingress | Enable Kubernetes backend with default settings. | false | +| providers.kubernetesingress | Enables Kubernetes Ingress provider. | false | | providers.kubernetesingress.allowemptyservices | Allow creation of services without endpoints. | false | | providers.kubernetesingress.allowexternalnameservices | Allow ExternalName services. | false | | providers.kubernetesingress.certauthfilepath | Kubernetes certificate authority file path (not needed for in-cluster client). | | @@ -359,7 +359,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.kubernetesingress.strictprefixmatching | Make prefix matching strictly comply with the Kubernetes Ingress specification (path-element-wise matching instead of character-by-character string matching). | false | | providers.kubernetesingress.throttleduration | Ingress refresh throttle duration | 0 | | providers.kubernetesingress.token | Kubernetes bearer token (not needed for in-cluster client). It accepts either a token value or a file path to the token. | | -| providers.kubernetesingressnginx | Enable Kubernetes Ingress NGINX provider. | false | +| providers.kubernetesingressnginx | Enables Kubernetes Ingress NGINX provider. | false | | providers.kubernetesingressnginx.certauthfilepath | Kubernetes certificate authority file path (not needed for in-cluster client). | | | providers.kubernetesingressnginx.controllerclass | Ingress Class Controller value this controller satisfies. | k8s.io/ingress-nginx | | providers.kubernetesingressnginx.defaultbackendservice | Service used to serve HTTP requests not matching any known server name (catch-all). Takes the form 'namespace/name'. | | @@ -374,7 +374,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.kubernetesingressnginx.watchingresswithoutclass | Define if Ingress Controller should also watch for Ingresses without an IngressClass or the annotation specified. | false | | providers.kubernetesingressnginx.watchnamespace | Namespace the controller watches for updates to Kubernetes objects. All namespaces are watched if this parameter is left empty. | | | providers.kubernetesingressnginx.watchnamespaceselector | Selector selects namespaces the controller watches for updates to Kubernetes objects. | | -| providers.nomad | Enable Nomad backend with default settings. | false | +| providers.nomad | Enables Nomad provider. | false | | providers.nomad.allowemptyservices | Allow the creation of services without endpoints. | false | | providers.nomad.constraints | Constraints is an expression that Traefik matches against the Nomad service's tags to determine whether to create route(s) for that service. | | | providers.nomad.defaultrule | Default rule. | Host(`{{ normalize .Name }}`) | @@ -395,7 +395,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.nomad.watch | Watch Nomad Service events. | false | | providers.plugin._name_ | Plugins configuration. | | | providers.providersthrottleduration | Backends throttle duration: minimum duration between 2 events from providers before applying a new configuration. It avoids unnecessary reloads if multiples events are sent in a short amount of time. | 2 | -| providers.redis | Enable Redis backend with default settings. | false | +| providers.redis | Enables Redis provider. | false | | providers.redis.db | Database to be selected after connecting to the server. | 0 | | providers.redis.endpoints | KV store endpoints. | 127.0.0.1:6379 | | providers.redis.password | Password for authentication. | | @@ -412,9 +412,9 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.redis.tls.insecureskipverify | TLS insecure skip verify | false | | providers.redis.tls.key | TLS key | | | providers.redis.username | Username for authentication. | | -| providers.rest | Enable Rest backend with default settings. | false | +| providers.rest | Enables Rest provider. | false | | providers.rest.insecure | Activate REST Provider directly on the entryPoint named traefik. | false | -| providers.swarm | Enable Docker Swarm backend with default settings. | false | +| providers.swarm | Enables Docker Swarm provider. | false | | providers.swarm.allowemptyservices | Disregards the Docker containers health checks with respect to the creation or removal of the corresponding services. | false | | providers.swarm.constraints | Constraints is an expression that Traefik matches against the container's labels to determine whether to create any route for that container. | | | providers.swarm.defaultrule | Default rule. | Host(`{{ normalize .Name }}`) | @@ -431,7 +431,7 @@ THIS FILE MUST NOT BE EDITED BY HAND | providers.swarm.usebindportip | Use the ip address from the bound port, rather than from the inner network. | false | | providers.swarm.username | Username for Basic HTTP authentication. | | | providers.swarm.watch | Watch Docker events. | true | -| providers.zookeeper | Enable ZooKeeper backend with default settings. | false | +| providers.zookeeper | Enables ZooKeeper provider. | false | | providers.zookeeper.endpoints | KV store endpoints. | 127.0.0.1:2181 | | providers.zookeeper.password | Password for authentication. | | | providers.zookeeper.rootkey | Root key used for KV store. | traefik | diff --git a/pkg/config/static/static_config.go b/pkg/config/static/static_config.go index 33729e069..fb15a0b18 100644 --- a/pkg/config/static/static_config.go +++ b/pkg/config/static/static_config.go @@ -232,23 +232,22 @@ func (t *Tracing) SetDefaults() { type Providers struct { ProvidersThrottleDuration ptypes.Duration `description:"Backends throttle duration: minimum duration between 2 events from providers before applying a new configuration. It avoids unnecessary reloads if multiples events are sent in a short amount of time." json:"providersThrottleDuration,omitempty" toml:"providersThrottleDuration,omitempty" yaml:"providersThrottleDuration,omitempty" export:"true"` - Docker *docker.Provider `description:"Enable Docker backend with default settings." json:"docker,omitempty" toml:"docker,omitempty" yaml:"docker,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - Swarm *docker.SwarmProvider `description:"Enable Docker Swarm backend with default settings." json:"swarm,omitempty" toml:"swarm,omitempty" yaml:"swarm,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - - File *file.Provider `description:"Enable File backend with default settings." json:"file,omitempty" toml:"file,omitempty" yaml:"file,omitempty" export:"true"` - KubernetesIngress *ingress.Provider `description:"Enable Kubernetes backend with default settings." json:"kubernetesIngress,omitempty" toml:"kubernetesIngress,omitempty" yaml:"kubernetesIngress,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - KubernetesIngressNGINX *ingressnginx.Provider `description:"Enable Kubernetes Ingress NGINX provider." json:"kubernetesIngressNGINX,omitempty" toml:"kubernetesIngressNGINX,omitempty" yaml:"kubernetesIngressNGINX,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - KubernetesCRD *crd.Provider `description:"Enable Kubernetes backend with default settings." json:"kubernetesCRD,omitempty" toml:"kubernetesCRD,omitempty" yaml:"kubernetesCRD,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - KubernetesGateway *gateway.Provider `description:"Enable Kubernetes gateway api provider with default settings." json:"kubernetesGateway,omitempty" toml:"kubernetesGateway,omitempty" yaml:"kubernetesGateway,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - Rest *rest.Provider `description:"Enable Rest backend with default settings." json:"rest,omitempty" toml:"rest,omitempty" yaml:"rest,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - ConsulCatalog *consulcatalog.ProviderBuilder `description:"Enable ConsulCatalog backend with default settings." json:"consulCatalog,omitempty" toml:"consulCatalog,omitempty" yaml:"consulCatalog,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - Nomad *nomad.ProviderBuilder `description:"Enable Nomad backend with default settings." json:"nomad,omitempty" toml:"nomad,omitempty" yaml:"nomad,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - Ecs *ecs.Provider `description:"Enable AWS ECS backend with default settings." json:"ecs,omitempty" toml:"ecs,omitempty" yaml:"ecs,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - Consul *consul.ProviderBuilder `description:"Enable Consul backend with default settings." json:"consul,omitempty" toml:"consul,omitempty" yaml:"consul,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - Etcd *etcd.Provider `description:"Enable Etcd backend with default settings." json:"etcd,omitempty" toml:"etcd,omitempty" yaml:"etcd,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - ZooKeeper *zk.Provider `description:"Enable ZooKeeper backend with default settings." json:"zooKeeper,omitempty" toml:"zooKeeper,omitempty" yaml:"zooKeeper,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - Redis *redis.Provider `description:"Enable Redis backend with default settings." json:"redis,omitempty" toml:"redis,omitempty" yaml:"redis,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` - HTTP *http.Provider `description:"Enable HTTP backend with default settings." json:"http,omitempty" toml:"http,omitempty" yaml:"http,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + Docker *docker.Provider `description:"Enables Docker provider." json:"docker,omitempty" toml:"docker,omitempty" yaml:"docker,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + Swarm *docker.SwarmProvider `description:"Enables Docker Swarm provider." json:"swarm,omitempty" toml:"swarm,omitempty" yaml:"swarm,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + File *file.Provider `description:"Enables File provider." json:"file,omitempty" toml:"file,omitempty" yaml:"file,omitempty" export:"true"` + KubernetesIngress *ingress.Provider `description:"Enables Kubernetes Ingress provider." json:"kubernetesIngress,omitempty" toml:"kubernetesIngress,omitempty" yaml:"kubernetesIngress,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + KubernetesIngressNGINX *ingressnginx.Provider `description:"Enables Kubernetes Ingress NGINX provider." json:"kubernetesIngressNGINX,omitempty" toml:"kubernetesIngressNGINX,omitempty" yaml:"kubernetesIngressNGINX,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + KubernetesCRD *crd.Provider `description:"Enables Kubernetes CRD provider." json:"kubernetesCRD,omitempty" toml:"kubernetesCRD,omitempty" yaml:"kubernetesCRD,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + KubernetesGateway *gateway.Provider `description:"Enables Kubernetes Gateway API provider." json:"kubernetesGateway,omitempty" toml:"kubernetesGateway,omitempty" yaml:"kubernetesGateway,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + Rest *rest.Provider `description:"Enables Rest provider." json:"rest,omitempty" toml:"rest,omitempty" yaml:"rest,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + ConsulCatalog *consulcatalog.ProviderBuilder `description:"Enables Consul Catalog provider." json:"consulCatalog,omitempty" toml:"consulCatalog,omitempty" yaml:"consulCatalog,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + Nomad *nomad.ProviderBuilder `description:"Enables Nomad provider." json:"nomad,omitempty" toml:"nomad,omitempty" yaml:"nomad,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + Ecs *ecs.Provider `description:"Enables AWS ECS provider." json:"ecs,omitempty" toml:"ecs,omitempty" yaml:"ecs,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + Consul *consul.ProviderBuilder `description:"Enables Consul provider." json:"consul,omitempty" toml:"consul,omitempty" yaml:"consul,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + Etcd *etcd.Provider `description:"Enables Etcd provider." json:"etcd,omitempty" toml:"etcd,omitempty" yaml:"etcd,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + ZooKeeper *zk.Provider `description:"Enables ZooKeeper provider." json:"zooKeeper,omitempty" toml:"zooKeeper,omitempty" yaml:"zooKeeper,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + Redis *redis.Provider `description:"Enables Redis provider." json:"redis,omitempty" toml:"redis,omitempty" yaml:"redis,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` + HTTP *http.Provider `description:"Enables HTTP provider." json:"http,omitempty" toml:"http,omitempty" yaml:"http,omitempty" label:"allowEmpty" file:"allowEmpty" export:"true"` Plugin map[string]PluginConf `description:"Plugins configuration." json:"plugin,omitempty" toml:"plugin,omitempty" yaml:"plugin,omitempty"` }