From 90b3d6bb64240793f5fbe00551c6e35899aa6d66 Mon Sep 17 00:00:00 2001 From: AJ ONeal Date: Fri, 7 Jun 2019 07:57:54 +0000 Subject: [PATCH] fill out readme --- README.md | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 68 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 888f3a6..3c0041c 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,76 @@ # [acme-dns-01-digitalocean](https://git.rootprojects.org/root/acme-dns-01-digitalocean) | a [Root](https://rootrpojects.org) project -Digital Ocean DNS for Let's Encrypt / ACME dns-01 challenges with ACME.js and Greenlock.js (Node.js). +Digital Ocean DNS + Let's Encrypt for Node.js +This handles ACME dns-01 challenges, compatible with ACME.js and Greenlock.js. + +# Install + +```bash +npm install --save acme-dns-01-digitalocean@3.x +``` + +# Usage + +First you create an instance with your credentials: + +```js +var dns01 = require('acme-dns-01-digitalocean').create({ + token: 'xxxx' +}); +``` + +Then you can use it with any compatible ACME module, +such as Greenlock.js or ACME.js. + + +### Greenlock.js + +```js +var Greenlock = require('greenlock-express'); +var greenlock = Greenlock.create({ + challenges: { + 'dns-01': dns01, + // ... + } +}); +``` + +See [Greenlockā„¢ Express](https://git.rootprojects.org/root/greenlock-express.js) +and/or [Greenlock.js](https://git.rootprojects.org/root/greenlock.js) documentation for more details. + +### ACME.js + + +```js +// TODO +``` + +See the [ACME.js](https://git.rootprojects.org/root/acme-v2.js) for more details. + +### Build your own + +```js +dns01 + .set({ + identifier: { value: 'foo.example.com' }, + wildcard: false, + dnsHost: '_acme-challenge.foo.example.com' + dnsAuthorization: 'xxx_secret_xxx' + }) + .then(function () { + console.log("TXT record set"); + }) + .catch(function () { + console.log("Failed to set TXT record"); + }); +``` + +See [acme-challenge-test](https://git.rootprojects.org/root/acme-challenge-test.js) +for more implementation details. # Tests -``` +```bash # node ./test.js domain-zone api-token node ./test.js example.com xxxxxx ```