GithubHelp home page GithubHelp logo

mecodia / cert-manager-webhook-hetzner Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cert-manager/webhook-example

17.0 17.0 12.0 214 KB

A cert-manager integration with Hetzner DNS

License: Apache License 2.0

Dockerfile 2.78% Go 77.25% Makefile 7.87% Mustache 12.10%
cert-manager cert-manager-webhook hcloud hetzner hetzner-cloud kubernetes

cert-manager-webhook-hetzner's People

Contributors

diaphteiros avatar jakexks avatar jetstack-bot avatar mattiasgees avatar munnerz avatar notanormalnerd avatar toabi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

cert-manager-webhook-hetzner's Issues

Arm64 build

With hetzner now providing arm64 builds, it would be good if images were built and pulled for those as well.

Helm Chart repo

Hello,
can you provide an helm repo for the installation? Via GitHub Pages or https://artifacthub.io/
We use k3s Helm Controller to install charts in our K8S infrastructure. We're evaluating to move off the forked one (it seems not up-to-date)

Thank you

Problem with multiples zones

Good afternoon!

I'm having a problem using the solver, in my case, I have several zones created.

I0613 15:22:57.860221       1 dns.go:88] cert-manager/challenges/Present "msg"="presenting DNS01 challenge for domain" "dnsName"="echo.domain1.com" "domain"="echo.domain1.com" "resource_kind"="Challenge" "resource_name"="echo-wildcard-tls-secret-<omited>" "resource_namespace"="default" "resource_version"="v1" "type"="DNS-01"
E0613 15:22:58.360720       1 controller.go:167] cert-manager/challenges "msg"="re-queuing item due to error processing" "error"="domain did not yield exactly 1 zone result but 2: [Zone 'domain2.com' (<omited>) Zone 'domain1.com' (<omited>)]" "key"="default/echo-wildcard-tls-secret-<omited>"

I have tried to make the query through the api:

https://dns.hetzner.com/api/v1/zones?search_name=domain1.com

And it only returns a zone.

I've been looking at the code, and my suspicions are that the value of "zone" is not being retrieved correctly:

req, err := http.NewRequest("GET", "https://dns.hetzner.com/api/v1/zones?search_name="+zone, nil)

Feature Request: Helm Repository additional to Git-Repo

Hi Folks,

thanks for you work!
I want to try this webhook, during experimenting i saw that there is no Helm-Repo.

My Cert-Manager is deployed via ArgoCD which references a umbrella-chart. (Cert-Manager helm-chart is dependency in the Chart.yaml of the umbrella-chart). It would be really nice if i could just add your chart as a dependency. At the moment i have to deploy an additional Argo-App or clone the chart into my repo.

name: cert-manager-rms-umbrella
version: 0.0.0
dependencies:
  - name: cert-manager
    repository: https://charts.jetstack.io
    version: 1.11.0
  - name: cert-manager-webhook-hetzner
    repository: https://vadimkim.github.io/cert-manager-webhook-hetzner
    version: 1.1.1

Crash on Certificate request

When trying to request a certificate from LetsEncrypt the thing just crashes. I don't what happens exactly but this the error message:

goroutine 1899465 [running]:
golang.org/x/net/http2.(*serverConn).runHandler.func1(0xc0003bcb50, 0xc00097ff8e, 0xc00096a480)
	/go/pkg/mod/golang.org/x/[email protected]/http2/server.go:2140 +0x193
panic(0x1abc060, 0xc000adb2c0)
	/usr/local/go/src/runtime/panic.go:965 +0x1b9
k8s.io/apimachinery/pkg/util/runtime.HandleCrash(0xc00097fc98, 0x1, 0x1)
	/go/pkg/mod/k8s.io/[email protected]/pkg/util/runtime/runtime.go:55 +0x109
panic(0x1abc060, 0xc000adb2c0)
	/usr/local/go/src/runtime/panic.go:965 +0x1b9
k8s.io/apiserver/pkg/server/filters.(*timeoutHandler).ServeHTTP(0xc00000d068, 0x2077100, 0xc00011cc40, 0xc000469b00)
	/go/pkg/mod/k8s.io/[email protected]/pkg/server/filters/timeout.go:119 +0x43b
k8s.io/apiserver/pkg/server/filters.WithWaitGroup.func1(0x2077100, 0xc00011cc40, 0xc000469a00)
	/go/pkg/mod/k8s.io/[email protected]/pkg/server/filters/waitgroup.go:59 +0x137
net/http.HandlerFunc.ServeHTTP(0xc0006136b0, 0x2077100, 0xc00011cc40, 0xc000469a00)
	/usr/local/go/src/net/http/server.go:2069 +0x44
k8s.io/apiserver/pkg/endpoints/filters.WithRequestInfo.func1(0x2077100, 0xc00011cc40, 0xc000469900)
	/go/pkg/mod/k8s.io/[email protected]/pkg/endpoints/filters/requestinfo.go:39 +0x287
net/http.HandlerFunc.ServeHTTP(0xc0006136e0, 0x2077100, 0xc00011cc40, 0xc000469900)
	/usr/local/go/src/net/http/server.go:2069 +0x44
k8s.io/apiserver/pkg/endpoints/filters.WithWarningRecorder.func1(0x2077100, 0xc00011cc40, 0xc000469800)
	/go/pkg/mod/k8s.io/[email protected]/pkg/endpoints/filters/warning.go:35 +0x1a8
net/http.HandlerFunc.ServeHTTP(0xc00000d098, 0x2077100, 0xc00011cc40, 0xc000469800)
	/usr/local/go/src/net/http/server.go:2069 +0x44
k8s.io/apiserver/pkg/endpoints/filters.WithCacheControl.func1(0x2077100, 0xc00011cc40, 0xc000469800)
	/go/pkg/mod/k8s.io/[email protected]/pkg/endpoints/filters/cachecontrol.go:31 +0xa8
net/http.HandlerFunc.ServeHTTP(0xc00000d0b0, 0x2077100, 0xc00011cc40, 0xc000469800)
	/usr/local/go/src/net/http/server.go:2069 +0x44
k8s.io/apiserver/pkg/server/httplog.WithLogging.func1(0x206d5c0, 0xc0003bcb50, 0xc000bd2600)
	/go/pkg/mod/k8s.io/[email protected]/pkg/server/httplog/httplog.go:91 +0x2f1
net/http.HandlerFunc.ServeHTTP(0xc00008be40, 0x206d5c0, 0xc0003bcb50, 0xc000bd2600)
	/usr/local/go/src/net/http/server.go:2069 +0x44
k8s.io/apiserver/pkg/server/filters.withPanicRecovery.func1(0x206d5c0, 0xc0003bcb50, 0xc000bd2600)
	/go/pkg/mod/k8s.io/[email protected]/pkg/server/filters/wrap.go:51 +0xe6
net/http.HandlerFunc.ServeHTTP(0xc00008be60, 0x206d5c0, 0xc0003bcb50, 0xc000bd2600)
	/usr/local/go/src/net/http/server.go:2069 +0x44
k8s.io/apiserver/pkg/server.(*APIServerHandler).ServeHTTP(0xc000613710, 0x206d5c0, 0xc0003bcb50, 0xc000bd2600)
	/go/pkg/mod/k8s.io/[email protected]/pkg/server/handler.go:189 +0x51
net/http.serverHandler.ServeHTTP(0xc0005b8fc0, 0x206d5c0, 0xc0003bcb50, 0xc000bd2600)
	/usr/local/go/src/net/http/server.go:2887 +0xa3
net/http.initALPNRequest.ServeHTTP(0x207ad78, 0xc0007232c0, 0xc0007d6700, 0xc0005b8fc0, 0x206d5c0, 0xc0003bcb50, 0xc000bd2600)
	/usr/local/go/src/net/http/server.go:3459 +0x8d
golang.org/x/net/http2.(*serverConn).runHandler(0xc00096a480, 0xc0003bcb50, 0xc000bd2600, 0xc0008cac60)
	/go/pkg/mod/golang.org/x/[email protected]/http2/server.go:2147 +0x8b
created by golang.org/x/net/http2.(*serverConn).processHeaders
	/go/pkg/mod/golang.org/x/[email protected]/http2/server.go:1881 +0x505

My deployment:

certManager:
  namespace: cert-manager
extraArgs:
- --dns01-recursive-nameservers-only
- --dns01-recursive-nameservers="8.8.8.8:53"
ingressShim:
  defaultIssuerGroup: cert-manager.io
  defaultIssuerKind: ClusterIssuer
  defaultIssuerName: letsencrypt-prod
installCRDs: true
prometheus:
  enabled: true
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
  name: letsencrypt-prod
spec:
  acme:
    email: [email protected]
    preferredChain: ""
    privateKeySecretRef:
      name: letsencrypt-prod
    server: https://acme-v02.api.letsencrypt.org/directory
    solvers:
    - dns01:
        webhook:
          config:
            APIKey: MYKEY=
          groupName: dns.hetzner.cloud
          solverName: hetzner

Cannot install Webhook - deploy not found

The installation instructions state:

helm install --namespace kube-system cert-manager-webhook-hetzner ./deploy/cert-manager-webhook-hetzner

However, there is no "deploy" subdirectory anywhere in the repository.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.