{"id":18266279,"url":"https://github.com/ssube/home-dns","last_synced_at":"2025-04-09T02:19:37.978Z","repository":{"id":37821044,"uuid":"118372556","full_name":"ssube/home-dns","owner":"ssube","description":"route53 dynamic dns","archived":false,"fork":false,"pushed_at":"2025-01-15T21:11:48.000Z","size":155,"stargazers_count":0,"open_issues_count":4,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-14T20:40:24.301Z","etag":null,"topics":["aws-route53","dns","dynamic-dns","route53"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ssube.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-21T20:47:46.000Z","updated_at":"2021-10-18T19:56:15.000Z","dependencies_parsed_at":"2024-01-09T00:24:16.078Z","dependency_job_id":"0bd27d21-834a-45ea-8856-03a90a99e268","html_url":"https://github.com/ssube/home-dns","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/ssube%2Fhome-dns","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ssube%2Fhome-dns/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ssube%2Fhome-dns/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ssube%2Fhome-dns/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ssube","download_url":"https://codeload.github.com/ssube/home-dns/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247962677,"owners_count":21024879,"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":["aws-route53","dns","dynamic-dns","route53"],"created_at":"2024-11-05T11:22:43.471Z","updated_at":"2025-04-09T02:19:37.961Z","avatar_url":"https://github.com/ssube.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# home-dns\n\nUse [Route53](https://aws.amazon.com/route53/) for dynamic DNS.\n\nReads record name and zone from a YAML config and upserts on schedule.\n\n## Usage\n\n### Build\n\n```shell\ngo get\ngo build\n```\n\n### Config\n\nThe config file should have a `source` endpoint and each record to be updated:\n\n```yaml\nsource: \"https://api.ipify.org?format=text\"\n\nrecords:\n- cron: \"@hourly\"\n  name: home.example.com.\n  ttl: 300\n  zone: Z1ABCDEF123456\n- cron: \"@daily\"\n  name: office.example.com.\n  ttl: 86400\n  zone: Z1ABCDEF123456\n```\n\n### Run\n\nExecute with the config file:\n\n```shell\nAWS_PROFILE=\"home-root\" ./home-dns config.yml\n```\n\n## Disclaimer\n\nI do not know Go very well at all, so this code may be quite bad.\n\n## Features\n\n- multiple zones and records\n- update on cron schedule\n\n### Roadmap\n\n- cache the external address (on a schedule of its own?)\n- interface selection for external check","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fssube%2Fhome-dns","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fssube%2Fhome-dns","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fssube%2Fhome-dns/lists"}