From 5457d781e1a11a2c36d7ccdfbf209f00e7a52b83 Mon Sep 17 00:00:00 2001 From: Williams Alejandro Date: Tue, 13 Feb 2024 12:36:57 -0600 Subject: [PATCH 1/2] update v0.54.0 Signed-off-by: Williams Alejandro --- api/v1alpha1/upstream_types.go | 3 +++ controllers/client_controller.go | 2 +- pkg/client/builder/configmap_builder.go | 2 +- pkg/client/builder/pod_builder.go | 2 +- pkg/client/models/config.go | 3 +++ pkg/client/utils/template.go | 20 ++++++++++++-------- 6 files changed, 21 insertions(+), 11 deletions(-) diff --git a/api/v1alpha1/upstream_types.go b/api/v1alpha1/upstream_types.go index df70a4e..2bf0c74 100644 --- a/api/v1alpha1/upstream_types.go +++ b/api/v1alpha1/upstream_types.go @@ -27,6 +27,9 @@ type UpstreamSpec struct { } type UpstreamSpec_TCP struct { + Name string `json:"name"` + Type string `json:"type"` + SubDomain string `json:"subdomain"` Host string `json:"host"` Port int `json:"port"` Server UpstreamSpec_TCP_Server `json:"server"` diff --git a/controllers/client_controller.go b/controllers/client_controller.go index b45ae0c..5df74ed 100644 --- a/controllers/client_controller.go +++ b/controllers/client_controller.go @@ -151,7 +151,7 @@ func (r *ClientReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctr pod, err := builder.NewPodBuilder(). SetName(client.Name). SetNamespace(client.Namespace). - SetImage("fatedier/frpc:v0.43.0"). + SetImage("fatedier/frpc:v0.54.0"). Build() if err != nil { return ctrl.Result{}, err diff --git a/pkg/client/builder/configmap_builder.go b/pkg/client/builder/configmap_builder.go index 2d4d1f4..ffade40 100644 --- a/pkg/client/builder/configmap_builder.go +++ b/pkg/client/builder/configmap_builder.go @@ -32,7 +32,7 @@ func (n *ConfigMapBuilder) SetNamespace(namespace string) *ConfigMapBuilder { func (n *ConfigMapBuilder) Build() (*corev1.ConfigMap, error) { data := make(map[string]string) - data["config.ini"] = n.Config + data["config.toml"] = n.Config configMap := &corev1.ConfigMap{ ObjectMeta: metav1.ObjectMeta{ diff --git a/pkg/client/builder/pod_builder.go b/pkg/client/builder/pod_builder.go index 022b52c..4f9ab8d 100644 --- a/pkg/client/builder/pod_builder.go +++ b/pkg/client/builder/pod_builder.go @@ -49,7 +49,7 @@ func (n *PodBuilder) Build() (*corev1.Pod, error) { { Name: "frpc", Image: n.Image, - Command: []string{"frpc", "-c", "/frp/config.ini"}, + Command: []string{"frpc", "-c", "/frp/config.toml"}, Ports: []corev1.ContainerPort{ {ContainerPort: int32(4040)}, }, diff --git a/pkg/client/models/config.go b/pkg/client/models/config.go index d35d025..26e4509 100644 --- a/pkg/client/models/config.go +++ b/pkg/client/models/config.go @@ -55,6 +55,9 @@ type Upstream struct { } type Upstream_TCP struct { + Name string + Type string + SubDomain string Host string Port int ServerPort int diff --git a/pkg/client/utils/template.go b/pkg/client/utils/template.go index 8cbd2e8..86cbe5e 100644 --- a/pkg/client/utils/template.go +++ b/pkg/client/utils/template.go @@ -1,23 +1,27 @@ package utils const CLIENT_TEMPLATE = ` +# frpc.toml [common] -server_addr = {{ .Common.ServerAddress }} -server_port = {{ .Common.ServerPort }} +serverAddr = {{ .Common.ServerAddress }} +serverPort = {{ .Common.ServerPort }} {{ if eq .Common.ServerAuthentication.Type 1 }} -token = {{ .Common.ServerAuthentication.Token }} +auth.method = "token" +auth.token = {{ .Common.ServerAuthentication.Token }} {{ end }} -admin_addr = {{ .Common.AdminAddress }} -admin_port = {{ .Common.AdminPort }} -admin_user = {{ .Common.AdminUsername }} -admin_pwd = {{ .Common.AdminPassword }} +webServer.addr = {{ .Common.AdminAddress }} +webServer.port = {{ .Common.AdminPort }} +webServer.user = {{ .Common.AdminUsername }} +webServer.password = {{ .Common.AdminPassword }} {{ range $upstream := .Upstreams }} [{{ $upstream.Name }}] {{ if eq $upstream.Type 1 }} -type = tcp +name = {{ $upstream.TCP.Name }} +type = {{ $upstream.TCP.Type }} +subdomain = {{ $upstream.TCP.SubDomain }} local_ip = {{ $upstream.TCP.Host }} local_port = {{ $upstream.TCP.Port }} remote_port = {{ $upstream.TCP.ServerPort }} From 15aa05855965e21aed756b11ee89b071ee0f8a60 Mon Sep 17 00:00:00 2001 From: Williams Alejandro Date: Tue, 13 Feb 2024 12:44:45 -0600 Subject: [PATCH 2/2] Update template.go Signed-off-by: Williams Alejandro --- pkg/client/utils/template.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkg/client/utils/template.go b/pkg/client/utils/template.go index 86cbe5e..c2b285a 100644 --- a/pkg/client/utils/template.go +++ b/pkg/client/utils/template.go @@ -22,13 +22,13 @@ webServer.password = {{ .Common.AdminPassword }} name = {{ $upstream.TCP.Name }} type = {{ $upstream.TCP.Type }} subdomain = {{ $upstream.TCP.SubDomain }} -local_ip = {{ $upstream.TCP.Host }} -local_port = {{ $upstream.TCP.Port }} -remote_port = {{ $upstream.TCP.ServerPort }} +localIP = {{ $upstream.TCP.Host }} +localPort = {{ $upstream.TCP.Port }} +remotePort = {{ $upstream.TCP.ServerPort }} {{ if $upstream.TCP.ProxyProtocol }} -proxy_protocol_version = {{ $upstream.TCP.ProxyProtocol }} +transport.proxyProtocolVersion = {{ $upstream.TCP.ProxyProtocol }} {{ end }} -use_encryption = true +transport.useEncryption = true {{ end }} {{ end }} `