You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+25Lines changed: 25 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -33,6 +33,7 @@ Additional PRs we should create in upstream, so that we can use upstream instead
33
33
34
34
PRs which are **not** needed in upstream, because upstream has this feature:
35
35
36
+
*[PR hotreload credentials, when mounted secret changed](https://github.com/syself/hetzner-cloud-controller-manager/pull/49)
36
37
*[PR getInstanceTypeOfRobotServer: convert invalid characters to dashes](https://github.com/syself/hetzner-cloud-controller-manager/pull/40)
37
38
*[Make robot client optional for lb client](https://github.com/syself/hetzner-cloud-controller-manager/pull/37): upstream uses ROBOT_ENABLED. We need to set that env var.
38
39
*[Fix InstanceExists for baremetal servers, check node name](https://github.com/syself/hetzner-cloud-controller-manager/pull/32)
See [CAPH docs](https://syself.com/docs/caph/topics/baremetal/creating-workload-cluster#deploying-the-hetzner-cloud-controller-manager) for more details.
72
73
74
+
## Usage
75
+
76
+
We recommend to mount the secret `hetzner` as volume and make it avaiable for the container as `/etc/hetzner-secret`.
77
+
Then the credentials are automatically reloaded, when the secret changes.
78
+
You see an example in the [ccm helm chart](https://github.com/syself/charts/tree/main/charts/ccm-hetzner)
79
+
80
+
## Env Variables
81
+
82
+
ROBOT_DEBUG: When set to `true`, then api calls to the hetzner robot API will be logged.
83
+
84
+
CACHE_TIMEOUT: Timeout of the Robot API Cache. See [ParseDuration](https://pkg.go.dev/time#ParseDuration) for supported syntax.
85
+
86
+
HCLOUD_ENDPOINT: Defaults to `https://api.hetzner.cloud/v1`
87
+
88
+
Additional Env Variables are defined at the top of [cloud.go](https://github.com/syself/hetzner-cloud-controller-manager/blob/master/hcloud/cloud.go)
klog.Infof("Not enabling robot API debugging. Set env var %s=true to enable it.", robotDebugENVVar)
156
+
varhttpClient*http.Client
157
+
ifos.Getenv(robotDebugENVVar) =="true" {
158
+
httpClient=&http.Client{
159
+
Transport: &LoggingTransport{
160
+
roundTripper: http.DefaultTransport,
161
+
},
177
162
}
178
-
robotClient=cache.NewClient(c, cacheTimeout)
179
-
} else {
180
-
klog.Infof("Hetzner robot is not support because of insufficient credentials. Robot user name specified: %v. Robot password specified: %v", robotUserName!="", robotPassword!="")
0 commit comments