mirror of
				https://github.com/therootcompany/acme-dns-01-godaddy.js.git
				synced 2024-11-16 17:28:59 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			79 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # [acme-dns-01-godaddy](https://git.rootprojects.org/root/acme-dns-01-godaddy.js) | a [Root](https://rootprojects.org) project
 | |
| 
 | |
| Godaddy DNS + Let's Encrypt for Node.js
 | |
| 
 | |
| This handles ACME dns-01 challenges, compatible with ACME.js and Greenlock.js.
 | |
| Passes [acme-dns-01-test](https://git.rootprojects.org/root/acme-dns-01-test.js).
 | |
| 
 | |
| # Install
 | |
| 
 | |
| ```bash
 | |
| npm install --save acme-dns-01-godaddy@3.x
 | |
| ```
 | |
| 
 | |
| # Usage
 | |
| 
 | |
| First you create an instance with your API token:
 | |
| 
 | |
| ```js
 | |
| var dns01 = require('acme-dns-01-godaddy').create({
 | |
| 	baseUrl: 'https://api.godaddy.com/v1', // default
 | |
| 	key: 'xxxx',
 | |
| 	secret: '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-dns-01-test](https://git.rootprojects.org/root/acme-dns-01-test.js)
 | |
| for more implementation details.
 | |
| 
 | |
| # Tests
 | |
| 
 | |
| ```bash
 | |
| # node ./test.js domain-zone api-key api-secret
 | |
| node ./test.js example.com xxxxxx xxxxxx
 | |
| ```
 |