UNPKG

namecheap-dynamic-dns

Version:

This is an implementation of Namecheap Dynamic DNS in Node.js.

49 lines (39 loc) 890 B
#!/usr/bin/env node const path = require('path') const axios = require('axios') const dotenv = require('dotenv') const handleError = err => { console.error(err) process.exit(1) } const returnResponse = res => res.data const readConfig = () => { return new Promise((resolve, reject) => { const result = dotenv.config({ path: path.join(__dirname, '.env') }) if (result.error) { reject(result.error) } else { resolve(result.parsed) } }) } const updateDNS = config => { return axios.request({ url: '/update', method: 'get', baseURL: 'https://dynamicdns.park-your-domain.com', params: { host: config.host, domain: config.domain, password: config.password } }) } const update = () => { return readConfig() .then(updateDNS) .then(returnResponse) } update() .then(console.log) .catch(handleError)