Skip to content

Command line client to set DNS records in Proteus

License

Notifications You must be signed in to change notification settings

virtUOS/proteuscmd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Proteus Command Line Client

A simple command line client to modify DNS entries in Proteus.

Installation

Use pip to install proteuscmd:

❯ pip install proteuscmd

Configuration

Configure access credentials in ~/.proteus.json:

{
	"user": "api-user",
	"password": "super.secret!",
	"url": "https://proteus.example.com"
}

Additionally, you can specify a map of automatic replacements for domains. This can be useful if, for example, all your domains also have an alternate domain with a DNAME record.

{
	...
	"replace": {
		".ex.com": ".example.com"
	}
}

Usage

❯ proteuscmd
Usage: python -m proteuscmd [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.

Commands:
  dns  Get information about or update DNS entries.
  ip   Register IP addresses.

Get information about a DNS record:

❯ proteuscmd dns get lktest.uni-osnabrueck.de

Shell Completion

The proteuscmd command line tool supports shell completion for several major shells:

For Bash, add to ~/.bashrc:

eval "$(_PROTEUSCMD_COMPLETE=bash_source proteuscmd)"

For ZSH, add to ~/.zshrc:

eval "$(_PROTEUSCMD_COMPLETE=zsh_source proteuscmd)"

For fish, add to ~/.config/fish/completions/proteuscmd.fish:

_PROTEUSCMD_COMPLETE=fish_source proteuscmd | source