Godaddy cert-manager ACME webhook
Installing
To install with helm, run:
$ helm repo add cert-manager-godaddy-webhook https://github.com/simplefxn/cert-manager-godaddy-webhook
$ helm install cert-manager-godaddy-webhook cert-manager-godaddy-webhook/cert-manager-godaddy-webhook
Without helm, run:
$ make rendered-manifest.yaml
$ kubectl apply -f _out/rendered-manifest.yaml
Issuer/ClusterIssuer
An example issuer:
apiVersion: v1
kind: Secret
metadata:
name: godaddy-secret
type: Opaque
data:
access-key: <GODADDY-ACCESS-KEY>
secret-key: <GODADDY-SECRET-KEY>
---
apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
name: letsencrypt-staging
spec:
acme:
email: certificates@simplefxn.com
server: https://acme-staging-v02.api.letsencrypt.org/directory
privateKeySecretRef:
name: letsencrypt-staging-account-key
solvers:
- dns01:
webhook:
config:
apiKeyRef:
name: godaddy-api-key
key: access-key
apiSecretRef:
name: godaddy-api-key
key: secret-key
production: true
ttl: 600
groupName: acme.mycompany.com
solverName: godaddy
And then you can issue a cert:
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: test-simplefxn-com
namespace: default
spec:
secretName: simplefxn-com-tls
dnsNames:
- test.simplefxn.com
issuerRef:
name: letsencrypt-staging
kind: Issuer
group: cert-manager.io
Development
Running the test suite
You can run the test suite with:
-
Copy testdata/godaddy/apikey.yml.sample
and testdata/godaddy/config.json.sample
and fill in the appropriate values
-
Run tests
$ ./scripts/fetch-test-binaries.sh
$ TEST_ZONE_NAME=example.com. go test .