https://github.com/stefansundin/route53-update
Program that updates Amazon Route 53 records.
https://github.com/stefansundin/route53-update
Last synced: 6 months ago
JSON representation
Program that updates Amazon Route 53 records.
- Host: GitHub
- URL: https://github.com/stefansundin/route53-update
- Owner: stefansundin
- License: gpl-3.0
- Created: 2023-04-10T06:34:44.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-17T22:30:47.000Z (over 1 year ago)
- Last Synced: 2025-02-13T05:15:43.198Z (8 months ago)
- Language: Rust
- Size: 89.8 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
This is a tiny program that can update DNS records in Amazon Route 53.
The program is brand new so the command line arguments may change. Use with caution.
Please note that some features like `--clear` will delete records which can be disastrous if used incorrectly. Please do not experiment in a production environment!
## Installation
I will publish precompiled binaries once the program has become more stable. For the time being, you can compile from source by running the following command:
```shell
cargo install --git https://github.com/stefansundin/route53-update.git --branch main
```## Docker
There's a beta docker image available on ECR: https://gallery.ecr.aws/stefansundin/route53-update
```
public.ecr.aws/stefansundin/route53-update:beta
```For example usage with Amazon ECS, see [examples](examples).
## Usage
```
Usage: route53-update [OPTIONS] --record-nameOptions:
--hosted-zone-id
The Hosted Zone ID (optional, will be looked up automatically based on --record-name if omitted)
--hosted-zone-name
Look up the Hosted Zone ID based on this name instead of using the record name (optional, conflicts with --hosted-zone-id)
--hosted-zone-type
Filter the hosted zones based on the type (supported: 'prefer-public', 'public' or 'private') [default: prefer-public]
--record-name
Record name to update (e.g. service.example.com)
--record-type
Record type (optional, is auto-detected from --value or --value-from-url when possible, TXT is used as fallback)
-v, --value
Record value (can be specified multiple times)
--value-from
Get the value from a specific source (supported: 'auto', 'ec2-metadata', or 'ecs-metadata')
--value-from-url
Get the value from a URL (e.g. https://checkip.amazonaws.com/)
--ip-address-type
Use a specific IP address type (supported: 'public' or 'private') [default: public]
--ttl
TTL for the DNS record (optional, if an existing record exists then its TTL will be copied, 300 is used as fallback)
--comment
Change batch comment
--wait
Wait for the change to propagate in Route 53
--clear
Delete potentially conflicting records (A, AAAA, CNAME)
-h, --help
Print help
```