{"id":15348166,"url":"https://github.com/ironcore864/r53bgs","last_synced_at":"2025-10-05T16:49:28.251Z","repository":{"id":73865967,"uuid":"316242328","full_name":"IronCore864/r53bgs","owner":"IronCore864","description":null,"archived":false,"fork":false,"pushed_at":"2020-11-26T13:40:33.000Z","size":1,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-12-31T12:46:28.282Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/IronCore864.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-11-26T13:40:12.000Z","updated_at":"2020-11-26T13:40:36.000Z","dependencies_parsed_at":"2023-09-21T10:03:19.471Z","dependency_job_id":null,"html_url":"https://github.com/IronCore864/r53bgs","commit_stats":{"total_commits":1,"total_committers":1,"mean_commits":1.0,"dds":0.0,"last_synced_commit":"44bf5c56ea1f48c4e0b1b41fa42edf4f3e666853"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IronCore864%2Fr53bgs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IronCore864%2Fr53bgs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IronCore864%2Fr53bgs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IronCore864%2Fr53bgs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/IronCore864","download_url":"https://codeload.github.com/IronCore864/r53bgs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239898461,"owners_count":19715212,"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-10-01T11:45:12.832Z","updated_at":"2025-10-05T16:49:23.181Z","avatar_url":"https://github.com/IronCore864.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Route 53 Blue/Green Switch\n\n## What it is\n\nYou have a service called \"svc\".\n\nYou have two EKS clusters, called \"blue\" and \"green\".\n\nYou deploy it in two different EKS clusters with different route53 names for blue/green deployment purpose, in the format of \"{{ svc_name }}-{{ cluster_name }}.{{ zone_name}}\", like:\n\n- svc-blue.example.com\n- svc-green.example.com\n\nBut you want the user to be blue/green agnostic, so you want the user to use:\nsvc.example.com to access the service.\n\nYou need a CNAME / Alias Record in Route53 to point \"svc.example.com\" to either \"svc-blue.example.com` or `svc-green.example.com`, and you might need to do the switch from blue to green or vice versa from time to time. \n\nThis tool is designed to upcert the route53 record for you to achieve blue/green switch.\n\n## How to run\n\n```\npip3 install -r requirements.txt \n```\n\nSetup AWS access key ID / secret.\n\n## Run\n\n```shell script\n$ chmod +x ./r53bgs.py \n$ ./r53bgs.py          \nusage: r53bgs.py [-h] -s SERVICE -c CLUSTER\nr53bgs.py: error: the following arguments are required: -s/--service, -c/--cluster\n$ ./r53bgs.py -h\nusage: r53bgs.py [-h] -s SERVICE -c CLUSTER\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -s SERVICE, --service SERVICE\n                        name of service, example: my-service\n  -c CLUSTER, --cluster CLUSTER\n                        name of the cluster, example: blue/green\n\n$ ./r53bgs.py -s svc -c blue\n\n$ ./r53bgs.py --service svc --cluster green\n```\n\n## Note\n\nThis is supposed to be a temporary fast work around.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fironcore864%2Fr53bgs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fironcore864%2Fr53bgs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fironcore864%2Fr53bgs/lists"}