{"id":13574737,"url":"https://github.com/pragkent/alidns-webhook","last_synced_at":"2025-04-07T14:13:01.430Z","repository":{"id":44749614,"uuid":"203926322","full_name":"pragkent/alidns-webhook","owner":"pragkent","description":"Cert manager acme dns01 webhook provider for alidns","archived":false,"fork":false,"pushed_at":"2024-05-24T07:12:27.000Z","size":80,"stargazers_count":188,"open_issues_count":10,"forks_count":80,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-31T12:05:34.416Z","etag":null,"topics":["alidns","alidns-provider-solver","cert-manager","cert-manager-webhook","letsencrypt"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pragkent.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-08-23T04:54:00.000Z","updated_at":"2025-03-24T08:57:47.000Z","dependencies_parsed_at":"2024-06-20T05:52:39.090Z","dependency_job_id":null,"html_url":"https://github.com/pragkent/alidns-webhook","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pragkent%2Falidns-webhook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pragkent%2Falidns-webhook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pragkent%2Falidns-webhook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pragkent%2Falidns-webhook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pragkent","download_url":"https://codeload.github.com/pragkent/alidns-webhook/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247666014,"owners_count":20975788,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["alidns","alidns-provider-solver","cert-manager","cert-manager-webhook","letsencrypt"],"created_at":"2024-08-01T15:00:54.264Z","updated_at":"2025-04-07T14:13:01.395Z","avatar_url":"https://github.com/pragkent.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# alidns-webhook\n\nCert-manager ACME DNS webhook provider for alidns.\n\n## Install\n\n### Install cert manager\nPlease find document here: https://cert-manager.io/docs/installation/kubernetes/\n\n### Install webhook (Cert manager v0.11 and above)\n1. Install alidns-webhook\n\n  ```bash\n  # Install alidns-webhook to cert-manager namespace. \n  kubectl apply -f https://raw.githubusercontent.com/pragkent/alidns-webhook/master/deploy/bundle.yaml\n  ```\n\n2. Create secret contains alidns credentials\n  ```yaml\n  apiVersion: v1\n  kind: Secret\n  metadata:\n    name: alidns-secret\n    namespace: cert-manager\n  data:\n    access-key: YOUR_ACCESS_KEY\n    secret-key: YOUR_SECRET_KEY\n\n  ```\n\n3. Example Issuer\n  ```yaml\n  apiVersion: cert-manager.io/v1alpha2\n  kind: ClusterIssuer\n  metadata:\n    name: letsencrypt-staging\n  spec:\n    acme:\n      # Change to your letsencrypt email\n      email: certmaster@example.com\n      server: https://acme-staging-v02.api.letsencrypt.org/directory\n      privateKeySecretRef:\n        name: letsencrypt-staging-account-key\n      solvers:\n      - dns01:\n          webhook:\n            groupName: acme.yourcompany.com\n            solverName: alidns\n            config:\n              region: \"\"\n              accessKeySecretRef:\n                name: alidns-secret\n                key: access-key\n              secretKeySecretRef:\n                name: alidns-secret\n                key: secret-key\n  ```\n\n4. Issue a certificate\n```yaml\napiVersion: cert-manager.io/v1alpha2\nkind: Certificate\nmetadata:\n  name: example-tls\nspec:\n  secretName: example-com-tls\n  commonName: example.com\n  dnsNames:\n  - example.com\n  - \"*.example.com\"\n  issuerRef:\n    name: letsencrypt-staging\n    kind: ClusterIssuer\n```\n\n### Install webhook (Cert manager prior to v0.11)\n1. Install alidns-webhook\n\n  ```bash\n  # Install alidns-webhook to cert-manager namespace. \n  kubectl apply -f https://raw.githubusercontent.com/pragkent/alidns-webhook/master/deploy/legacy.yaml\n  ```\n\n2. Create secret contains alidns credentials\n  ```yaml\n  apiVersion: v1\n  kind: Secret\n  metadata:\n    name: alidns-secret\n    namespace: cert-manager\n  data:\n    access-key: YOUR_ACCESS_KEY\n    secret-key: YOUR_SECRET_KEY\n\n  ```\n\n3. Example Issuer\n  ```yaml\n  apiVersion: certmanager.k8s.io/v1alpha1\n  kind: ClusterIssuer\n  metadata:\n    name: letsencrypt-staging\n  spec:\n    acme:\n      email: certmaster@example.com\n      server: https://acme-staging-v02.api.letsencrypt.org/directory\n      privateKeySecretRef:\n        name: letsencrypt-staging-account-key\n      solvers:\n      - dns01:\n          webhook:\n            groupName: acme.yourcompany.com\n            solverName: alidns\n            config:\n              region: \"\"\n              accessKeySecretRef:\n                name: alidns-secret\n                key: access-key\n              secretKeySecretRef:\n                name: alidns-secret\n                key: secret-key\n  ```\n\n4. Issue a certificate\n```yaml\napiVersion: certmanager.k8s.io/v1alpha1\nkind: Certificate\nmetadata:\n  name: example-tls\nspec:\n  secretName: example-com-tls\n  commonName: example.com\n  dnsNames:\n  - example.com\n  - \"*.example.com\"\n  issuerRef:\n    name: letsencrypt-staging\n    kind: ClusterIssuer\n```\n\n## Development\n### Running the test suite\n\n1. Edit `testdata/alidns/alidns-secret.yaml` and `testdata/alidns/config.json`.\n\n2. Run test suites:\n\n```bash\n$ ./scripts/fetch-test-binaries.sh\n$ TEST_ZONE_NAME=example.com go test .\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpragkent%2Falidns-webhook","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpragkent%2Falidns-webhook","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpragkent%2Falidns-webhook/lists"}