Skip to content

Commit e37211d

Browse files
sicoyleyaron2
andauthored
feat: add nameresolution comps + fixes (#3955)
Signed-off-by: Samantha Coyle <[email protected]> Co-authored-by: Yaron Schneider <[email protected]>
1 parent 1c09c95 commit e37211d

File tree

10 files changed

+192
-2
lines changed

10 files changed

+192
-2
lines changed
File renamed without changes.

nameresolution/consul/configuration.go renamed to nameresolution/hashicorp/consul/configuration.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ func newIntermediateConfig() intermediateConfig {
6060
}
6161
}
6262

63-
func parseConfig(rawConfig interface{}) (configSpec, error) {
63+
func parseConfig(rawConfig any) (configSpec, error) {
6464
var result configSpec
6565
rawConfig, err := config.Normalize(rawConfig)
6666
if err != nil {
File renamed without changes.
Lines changed: 157 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,157 @@
1+
# yaml-language-server: $schema=../../../component-metadata-schema.json
2+
schemaVersion: v1
3+
type: nameresolution
4+
name: hashicorp.consul
5+
version: v1
6+
status: alpha
7+
title: "HashiCorp Consul"
8+
urls:
9+
- title: Reference
10+
url: https://docs.dapr.io/reference/components-reference/supported-name-resolution/setup-nr-consul/
11+
authenticationProfiles:
12+
- title: "Token Authentication"
13+
description: "Connect to Consul using a token for authentication."
14+
metadata:
15+
- name: token
16+
type: string
17+
required: true
18+
description: The Consul ACL token for authentication.
19+
sensitive: true
20+
example: "consul-token"
21+
- title: "Username/Password Authentication"
22+
description: "Connect to Consul using a username and password."
23+
metadata:
24+
- name: username
25+
type: string
26+
required: false
27+
description: Username for HTTP basic authentication.
28+
example: "username"
29+
- name: password
30+
type: string
31+
required: false
32+
description: Password for HTTP basic authentication.
33+
sensitive: true
34+
example: "password"
35+
- title: "TLS Authentication"
36+
description: "Connect to Consul using TLS encryption with certificates."
37+
metadata:
38+
- name: tlsAddress
39+
type: string
40+
required: true
41+
description: The TLS address of the Consul server.
42+
example: "localhost:8501"
43+
- name: caFile
44+
type: string
45+
required: true
46+
description: Path to the CA certificate file.
47+
example: "/path/to/ca.crt"
48+
- name: certFile
49+
type: string
50+
required: true
51+
description: Path to the client certificate file.
52+
example: "/path/to/client.crt"
53+
- name: keyFile
54+
type: string
55+
required: true
56+
description: Path to the client private key file.
57+
example: "/path/to/client.key"
58+
- name: insecureSkipVerify
59+
type: bool
60+
required: false
61+
description: Skip TLS certificate verification.
62+
example: false
63+
default: false
64+
metadata:
65+
- name: address
66+
type: string
67+
required: true
68+
description: The address of the Consul server.
69+
example: "localhost:8500"
70+
- name: scheme
71+
type: string
72+
required: false
73+
description: The scheme to use for connecting to Consul (http or https).
74+
example: "https"
75+
default: "http"
76+
- name: datacenter
77+
type: string
78+
required: false
79+
description: The Consul datacenter to use.
80+
example: "dc1"
81+
- name: waitTime
82+
type: string
83+
required: false
84+
description: The wait time for Consul operations.
85+
example: "10s"
86+
- name: tokenFile
87+
type: string
88+
required: false
89+
description: Path to a file containing the Consul ACL token.
90+
example: "/path/to/token"
91+
- name: daprPortMetaKey
92+
type: string
93+
required: false
94+
description: The metadata key used to store the Dapr port.
95+
example: "DAPR_PORT"
96+
default: "DAPR_PORT"
97+
- name: selfRegister
98+
type: bool
99+
required: false
100+
description: Whether to register this service with Consul.
101+
example: true
102+
default: false
103+
- name: selfDeregister
104+
type: bool
105+
required: false
106+
description: Whether to deregister this service from Consul on shutdown.
107+
example: true
108+
default: false
109+
- name: useCache
110+
type: bool
111+
required: false
112+
description: Whether to use caching for service lookups.
113+
example: true
114+
default: false
115+
- name: tags
116+
type: string
117+
required: false
118+
description: Tags to associate with the service registration.
119+
example: "dapr,v1"
120+
- name: namespace
121+
type: string
122+
required: false
123+
description: The Consul namespace to use for queries.
124+
example: "default"
125+
- name: partition
126+
type: string
127+
required: false
128+
description: The Consul partition to use for queries.
129+
example: "default"
130+
- name: queryDatacenter
131+
type: string
132+
required: false
133+
description: The Consul datacenter to use for queries.
134+
example: "dc1"
135+
- name: queryToken
136+
type: string
137+
required: false
138+
description: The Consul ACL token to use for queries.
139+
sensitive: true
140+
example: "query-token"
141+
- name: queryWaitTime
142+
type: string
143+
required: false
144+
description: The wait time for Consul queries.
145+
example: "5s"
146+
- name: allowStale
147+
type: bool
148+
required: false
149+
description: Whether to allow stale results in queries.
150+
example: true
151+
default: false
152+
- name: requireConsistent
153+
type: bool
154+
required: false
155+
description: Whether to require consistent reads in queries.
156+
example: false
157+
default: false
File renamed without changes.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# yaml-language-server: $schema=../../../component-metadata-schema.json
2+
schemaVersion: v1
3+
type: nameresolution
4+
name: kubernetes
5+
version: v1
6+
status: stable
7+
title: "Kubernetes"
8+
urls:
9+
- title: Reference
10+
url: https://docs.dapr.io/reference/components-reference/supported-name-resolution/nr-kubernetes/
11+
metadata: []

nameresolution/mdns/metadata.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# yaml-language-server: $schema=../../../component-metadata-schema.json
2+
schemaVersion: v1
3+
type: nameresolution
4+
name: mdns
5+
version: v1
6+
status: stable
7+
title: "mDNS"
8+
urls:
9+
- title: Reference
10+
url: https://docs.dapr.io/reference/components-reference/supported-name-resolution/nr-mdns/
11+
metadata: []
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# yaml-language-server: $schema=../../../component-metadata-schema.json
2+
schemaVersion: v1
3+
type: nameresolution
4+
name: sqlite
5+
version: v1
6+
status: stable
7+
title: "SQLite"
8+
urls:
9+
- title: Reference
10+
url: https://docs.dapr.io/reference/components-reference/supported-name-resolution/nr-sqlite/
11+
metadata: []

tests/certification/embedded/components.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import (
1818
"github.com/dapr/kit/logger"
1919

2020
// Name resolutions.
21-
nrConsul "github.com/dapr/components-contrib/nameresolution/consul"
21+
nrConsul "github.com/dapr/components-contrib/nameresolution/hashicorp/consul"
2222
nrKubernetes "github.com/dapr/components-contrib/nameresolution/kubernetes"
2323
nrMdns "github.com/dapr/components-contrib/nameresolution/mdns"
2424

0 commit comments

Comments
 (0)