https://github.com/qqshfox/cert-manager-webhook-dnspod
DNSPod Webhook for Cert Manager
https://github.com/qqshfox/cert-manager-webhook-dnspod
acme cert-manager cert-manager-webhook dnspod letsencrypt webhook
Last synced: 4 months ago
JSON representation
DNSPod Webhook for Cert Manager
- Host: GitHub
- URL: https://github.com/qqshfox/cert-manager-webhook-dnspod
- Owner: qqshfox
- License: apache-2.0
- Created: 2019-06-15T13:43:31.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2022-03-22T08:46:46.000Z (about 4 years ago)
- Last Synced: 2024-11-05T10:45:06.352Z (over 1 year ago)
- Topics: acme, cert-manager, cert-manager-webhook, dnspod, letsencrypt, webhook
- Language: Go
- Homepage:
- Size: 95.7 KB
- Stars: 54
- Watchers: 2
- Forks: 34
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# DNSPod Webhook for Cert Manager
This is a webhook solver for [DNSPod](https://www.dnspod.cn).
## Prerequisites
* [cert-manager](https://github.com/jetstack/cert-manager) >= 0.11
- [Installing on Kubernetes](https://docs.cert-manager.io/en/release-0.11/getting-started/install/kubernetes.html)
*Note: use version < 0.3 with cert-manager < 0.11*
## Installation
Generate API ID and API Token from DNSPod (https://support.dnspod.cn/Kb/showarticle/tsid/227/).
```console
$ helm install --name cert-manager-webhook-dnspod ./deploy/cert-manager-webhook-dnspod \
--namespace \
--set groupName= \
--set secrets.apiID=,secrets.apiToken= \
--set clusterIssuer.enabled=true,clusterIssuer.email=
```
### Automatically creating Certificates for Ingress resources
See [this](https://cert-manager.io/docs/usage/ingress/#optional-configuration).
## Development
All DNS providers **must** run the DNS01 provider conformance testing suite,
else they will have undetermined behaviour when used with cert-manager.
**It is essential that you configure and run the test suite when creating a
DNS01 webhook.**
An example Go test file has been provided in [main_test.go]().
Before you can run the test suite, you need to download the test binaries:
```console
$ mkdir __main__
$ wget -O- https://storage.googleapis.com/kubebuilder-tools/kubebuilder-tools-1.14.1-darwin-amd64.tar.gz | tar x -
$ mv kubebuilder __main__/hack
```
Then modify `testdata/my-custom-solver/config.json` to setup the configs.
Now you can run the test suite with:
```bash
$ TEST_ZONE_NAME=example.com go test .
```