{"id":21595295,"url":"https://github.com/euank/ecs-zonar","last_synced_at":"2025-03-18T11:09:46.346Z","repository":{"id":66058081,"uuid":"43118799","full_name":"euank/ecs-zonar","owner":"euank","description":"An ECS → Route53 registration program","archived":false,"fork":false,"pushed_at":"2015-09-25T15:45:25.000Z","size":132,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-24T17:20:03.167Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/euank.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-09-25T08:07:04.000Z","updated_at":"2015-09-25T08:11:26.000Z","dependencies_parsed_at":"2023-02-19T22:00:45.433Z","dependency_job_id":null,"html_url":"https://github.com/euank/ecs-zonar","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euank%2Fecs-zonar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euank%2Fecs-zonar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euank%2Fecs-zonar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/euank%2Fecs-zonar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/euank","download_url":"https://codeload.github.com/euank/ecs-zonar/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244207736,"owners_count":20416107,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-24T17:36:03.441Z","updated_at":"2025-03-18T11:09:46.321Z","avatar_url":"https://github.com/euank.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ECS Zonar\n\nThis is a simple Route53 registration program for ECS tasks.\nIt's probably the wrong tool for the job, but it's still kinda neat and can be\nused to bootstrap membership discovery, as a really bad form of service\ndiscovery, or as a lesson in what not to do.\n\n# Usage\n\nIn order to use it, simply add the environment variable `_ECS_R53_DNS` to a\ntask's container with the value of the dns entry you would like to to fill.\nThe dns entry should be a subdomain of a domain you've got in Route53, but the\nspecific subdomain does not have to be exist and will be created if it does\nnot.\n\nFor example, if you have a Route53 zone named `example.com` and you have a task\nwith the environment variable `_ECS_R53_DNS=foo.example.com`, the A record\nRoute53 value for `foo.example.com` will be set to all ips of EC2 Instances\nrunning said task.\n\nIf you need a single task to have multiple DNS entries, you can add additional\nnumbered variables, such as `_ECS_R53_DNS1` and so on.\n\n# How consistent is this?\n\n**Eventually**, aka as consistent as DNS. I like to think that it has roughly\nthe consistency of uncooked cookie dough \u0026mdash; it's tempting, but ultimately\nwill make you sick.\n\n# TODO\n\n1. Do something more sane than overloading an environment variable for figuring\n   out the mapping.\n2. Register SRV records to capture dynamic ports?\n3. Allow configurable TTL per task maybe?\n4. Something something Route53 healthchecks something something bad idea.\n5. Tests\n\n# That name is bad\n\nThanks.\n\n# License\n\nPublic domain.\n\nThis isn't a restriction or anything, but if you do make changes and want to\ncontribute them back that would be awesome.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feuank%2Fecs-zonar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feuank%2Fecs-zonar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feuank%2Fecs-zonar/lists"}