{"id":25810403,"url":"https://github.com/daniel1302/deploy-hat","last_synced_at":"2025-10-04T18:08:47.075Z","repository":{"id":88467725,"uuid":"235439735","full_name":"daniel1302/deploy-hat","owner":"daniel1302","description":null,"archived":false,"fork":false,"pushed_at":"2020-01-27T08:27:26.000Z","size":39,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-10T06:16:08.216Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","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/daniel1302.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-01-21T20:55:39.000Z","updated_at":"2020-01-27T08:27:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"0df17e4f-c768-4147-94ae-5e25ca025b0b","html_url":"https://github.com/daniel1302/deploy-hat","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/daniel1302/deploy-hat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daniel1302%2Fdeploy-hat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daniel1302%2Fdeploy-hat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daniel1302%2Fdeploy-hat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daniel1302%2Fdeploy-hat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/daniel1302","download_url":"https://codeload.github.com/daniel1302/deploy-hat/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daniel1302%2Fdeploy-hat/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278351363,"owners_count":25972738,"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","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":"2025-02-27T23:49:08.892Z","updated_at":"2025-10-04T18:08:47.041Z","avatar_url":"https://github.com/daniel1302.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"### Description\n\nScript used to replace current application instances with the new one.\n\n### Requirements:\n\n- Application AMI has got opened port 80\n- Currently working application instances are connected to the Application Load Balancer\n\n### Usage\n\n```\n./deploy OLD_AMI NEW_AMI\n```\n\n### Example\n\n##### Correct process\n\n```\n$ ./deploy ami-0d279985b668e9b38 ami-0aa2563dfc98ff16b\n\n[main.InitializePipelineAction] Executing.\n[main.InitializePipelineAction] Finished. No errors\n[main.ListInstancesAction] Executing.\n[main.ListInstancesAction] Finished. No errors\n[main.FindLoadBalancerAction] Executing.\n[main.FindLoadBalancerAction] Finished. No errors\n[main.RunInstancesAction] Executing.\n[main.RunInstancesAction] Finished. No errors\n[main.WaitUntilStatusOkAction] Executing.\n[main.WaitUntilStatusOkAction] Finished. No errors\n[main.AuthorizeSecurityGroupsAction] Executing.\n[main.AuthorizeSecurityGroupsAction] Finished. No errors\n[main.CollectPublicIpsAction] Executing.\n[main.CollectPublicIpsAction] Finished. No errors\n[main.TestInstancesAction] Executing.\n[main.TestInstancesAction] Finished. No errors\n[main.RegisterNewInstancesAction] Executing.\n[main.RegisterNewInstancesAction] Finished. No errors\n[main.DeregisterOldInstancesAction] Executing.\n[main.DeregisterOldInstancesAction] Finished. No errors\n[main.WaitForDeregisterAction] Executing.\n[main.WaitForDeregisterAction] Finished. No errors\n[main.TerminateOldInstancesAction] Executing.\n[main.TerminateOldInstancesAction] Finished. No errors\n```\n\n##### Process with errors\n\n```\n$ ./deploy ami-0d279985b668e9b38 ami-0aa2563dfc98ff16b\n[main.InitializePipelineAction] Executing.\n[main.InitializePipelineAction] Finished. No errors\n[main.ListInstancesAction] Executing.\n[main.ListInstancesAction][ERROR] Not found any running instance\n[main.ListInstancesAction] Rolling changes back\n[main.InitializePipelineAction] Rolling changes back\n```\n\n\n\n### Development Workflow\n\n##### Prerequisites\n\n- Install GO lang\n- Install the make\n- Export GOPATH and add $GOPATH/bin to the PATH env variable\n\n##### Compile the project\n\n```\nmake dependencies\nmake compile\n```\n\n##### Build the project\n\n```\nmake dependencies\nmake build\n```\n\n##### Check linter errors\n\n```\nmake dependencies\nmake lint\n```\n\n##### Run unit tests\n\n```\nmake dependencies\nmake test\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaniel1302%2Fdeploy-hat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdaniel1302%2Fdeploy-hat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaniel1302%2Fdeploy-hat/lists"}