Skip to content

authenticvision/zonesync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zonesync

Synchronize a zone file to CloudFlare or INWX.

The $ORIGIN directive must be set to identify the zone.

Warning: Be very careful when using this, API interactions are not well tested and might produce unexpected records.

Usage

Quick dev setup install:

$ uv tool install -e .

zonesync is now available in your $PATH according to uv's bin dir selection rules.

Any changes you make to zonesync are available immediately. Dependency or Python version changes require running uv sync again from zonesync's repo directory.

$ export INWX_USER=… INWX_PASSWORD=…
$ zonesync -p inwx example.org.zone
None -> RR(name='something.example.org.', ttl=3600, type='CNAME', content='example.org.', cf_zone_id=None, cf_id=None)
None -> RR(name='something-else.example.org.', ttl=3600, type='CNAME', content='example.org.', cf_zone_id=None, cf_id=None)
Apply actions? (Y/n) y
adding RR(name='something.example.org.', ttl=3600, type='CNAME', content='example.org.', cf_zone_id=None, cf_id=None)
adding RR(name='something-else.example.org.', ttl=3600, type='CNAME', content='example.org.', cf_zone_id=None, cf_id=None)

CloudFlare API token setup

Obtain a CloudFlare API Token

Go to My Profile -> API Tokens -> Create Token

Click on Edit zone DNS -> Use template

Set a Token name (including your name).

Under Zone Resources select Include All zones

Continue to Summary -> Create Token

Export it as CLOUDFLARE_API_TOKEN for zonesync to use.

About

Synchronize a zone file to CloudFlare or INWX

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages