2023-04-10 21:36:32 -04:00
2023-03-23 19:02:57 -04:00
2023-03-20 01:01:44 -04:00
2023-04-10 21:36:32 -04:00
2023-04-10 14:16:23 -04:00
2023-09-21 17:07:58 -04:00
2023-09-25 12:50:43 -04:00

CLI tool to manage cloudflare DNS records

Installation

Using go

 go install go.balki.me/cloudflare-dns-cli@latest

# Run directly without installing
 go run go.balki.me/cloudflare-dns-cli@latest -h

Using docker

 mkdir -p $HOME/bin
 docker run --pull=always --rm -v "$HOME/bin:/op" golang sh -c "go install go.balki.me/cloudflare-dns-cli@latest && install -o $(id -u) -g $(id -g) /go/bin/cloudflare-dns-cli /op/"

# Run directly without installing
 docker run --pull=always --rm golang go run go.balki.me/cloudflare-dns-cli@latest -h

Features

  1. Add/Modify A, AAAA, CNAME, MX records
  2. List/Delete records
  3. Save all records in JSON format

Usage

Usage of cloudflare-dns-cli:
  -a string
        Cloudflare API Token. env var: CF_TOKEN
  -c string
        CNAME target
  -d string
        Domain name, e.g. example.com. env var: DOMAIN
  -i value
        IP address (default 127.0.0.1)
  -m    Set mx record with cname value
  -o string
        Path to save all records as json, e.g. ./records.json
  -s string
        Subdomain, e.g. blog. Use @ for root (default "<UNSET>")
  -x    Delete records of subdomain

Demo

===> HERE <===

Similar

Why another cli?

  1. Keep it simple with minimum dependency and features
  2. Uses libdns library maintained by caddy team. libdns provides uniform api for many dns providers. Mostly s/cloudflare/XYZ/ should work when moving to a different dns provider
Description
CLI tool to manage cloudflare DNS records
Readme 72 KiB
Version 0.2.1 Latest
2024-04-22 23:13:42 -04:00
Languages
Go 100%