- Create a file `gandi.toml`, then copy and paste the contents of [`example.toml`](https://raw.githubusercontent.com/SeriousBug/gandi-live-dns-rust/master/example.toml)
`gandi-live-dns-rust` has Docker images available for x86_64, arm64, armv6, and armv7 platforms.
Follow the steps below to use these images.
- Create a file `gandi.toml`, then copy and paste the contents of [`example.toml`](https://raw.githubusercontent.com/SeriousBug/gandi-live-dns-rust/master/example.toml)
- Follow the instructions in the example config to get your API key and put it in the config
- Follow the examples in the config to set up the entries you want to update
- Run `docker run --rm -it -v $(pwd)/gandi.toml:/gandi.toml:ro seriousbug/gandi-live-dns-rust:latest`
> Docker doesn't [support IPv6](https://docs.docker.com/config/daemon/ipv6/) out
> of the box. Check the linked page to enable it, or use the native option.
> If you get [errors](https://stackoverflow.com/questions/42248198/how-to-mount-a-single-file-in-a-volume) about not finding the config file, make sure your command
> has a full path to the config file (`$(pwd)/gandi.toml` part). Otherwise
> Docker will create a directory.
## Development
### Local builds
`cargo build` and `cargo build --release` are sufficient for development and release builds.
No special instructions are needed.
### Making a release
To make a release, first set up `cross` and `docker`. Make sure you log into
Docker with `docker login`. Then follow these steps:
- bump up the version in `Cargo.toml` according to [semver](https://semver.org/)
- run `./make-release.sh`
> This will build binaries, then package them into archives, as well as
> build and upload docker images.
- Create a release on Github
- Make sure to create a tag for the release version on `master`
- Upload the binary archives to the Github release