summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Normalize the target DNS name much earlier in the program.Owen Jacobson2024-07-25
| | | | Also clean up some naming.
* Refactor converge.rs to make the overall flow clearer.Owen Jacobson2024-07-24
| | | | This entails moving a bunch of things into more appropriate modules, as well.
* Use new route53 paginator support, get rid of ad-hoc paginationOwen Jacobson2024-07-24
|
* Legibility improvements to main.Owen Jacobson2024-07-24
| | | | | | The explicit panic is a conscious decision; clap doesn't have a better way to represent mutually-exclusive options, so we have to use two boolean fields, but it will actually prevent the user from passing both options and triggering that code path. Since it's one of the rare situations where design choices converge on a truly unreachable case, I thought I'd make it easier to discover when I'm wrong and it is actually reachable. The old logic treated (true, true) like (false, false).
* Be more specific about zero vs. two or more ASGs matching the name.Owen Jacobson2024-07-24
| | | | This also lets me remove the clever-but-silly Single trait.
* Stop converting a vec into a vec needlessly during dry-runOwen Jacobson2024-07-24
|
* Upgrade AWS libraries.Owen Jacobson2024-07-24
| | | | This comes with some substantial removals, because the AWS libs no longer treat every last field as optional when it's inappropriate to do so. Hooray!
* Update trust-dns-proto to latestOwen Jacobson2024-07-24
|
* Update tokio to latest and prune featuresOwen Jacobson2024-07-24
|
* Update futures to latestOwen Jacobson2024-07-24
|
* Update clap to latestOwen Jacobson2024-07-24
|
* Update anyhow to latestOwen Jacobson2024-07-24
|
* Switch to futures for (stream).try_next().Owen Jacobson2024-07-24
| | | | This was an oversight; I missed that this trait existed!
* Update dependencies [cargo update]Owen Jacobson2024-07-24
|
* aws_context is now reliably the first non-self argument, rather than ↵Owen Jacobson2024-07-24
| | | | sporadically the last one
* chore: Release aws-autoscaling-dns version 0.2.1-alpha.1Owen Jacobson2024-07-23
|
* chore: Release aws-autoscaling-dns version 0.2.0v0.2.0Owen Jacobson2024-07-23
|
* Equivalent and preferred [clippy]Owen Jacobson2024-07-23
|
* Some code cleanup on the process of identifying the resource record sets for ↵Owen Jacobson2024-07-23
| | | | an ASG.
* Retire the `result` module.Owen Jacobson2024-07-23
| | | | It didn't add much to have our own Result definition, over using `anyhow::Result` directly.
* Move CLI glue inside of the lib crate.Owen Jacobson2024-07-23
| | | | | | This allows me to stop exporting symbols that were only exported for the purposes of making the CLI work. This commit makes the minimum version for the next release 0.2.0, as it retires multiple symbols that are part of the lib crate's API in v0.1.x.
* chore: Release aws-autoscaling-dns version 0.1.1-alpha.1Owen Jacobson2024-03-12
|
* chore: Release aws-autoscaling-dns version 0.1.0v0.1.0Owen Jacobson2024-03-12
|
* Set up a Debian-based builder, to make it easier to distribute this to AMIs.Owen Jacobson2024-03-12
|
* Dependency updates (cargo update)Owen Jacobson2023-11-01
|
* Refactor the internals of the live apply method.Owen Jacobson2023-11-01
| | | | Using iterator combinators here feels like it's more in line with how I think about the problem.
* Reduce the default TTL to 60 seconds.Owen Jacobson2023-10-31
| | | | The TTL also controls how long a service is unavailable because of cached DNS entries. For most services, a brief caching interval of 60s is more than adequate.
* Only manage the actual DNS entry named by the `dns-name` argument.Owen Jacobson2023-10-31
| | | | | | The original version of this program (written for another project) laid claim to the entire subtree under the target DNS name, as part of a broader feature of adding both per-instance hostnames and a per-ASG hostname with multiple records. This program doesn't do that; however, I forgot to remove this behaviour when porting the code. This was caught in production, of course, though without any damage. An attempt to manage `grimoire.ca` failed because the AWS identity it ran under didn't have permission to do anything other than modify A and AAAA records.
* CLI tool for updating Route53 DNS for an ASG.Owen Jacobson2023-10-17