{"id":15866731,"url":"https://github.com/wata727/capistrano-ami","last_synced_at":"2025-08-12T21:33:19.351Z","repository":{"id":62554958,"uuid":"56451166","full_name":"wata727/capistrano-ami","owner":"wata727","description":"create AMI (Amazon Machine Image) and manage generations after deployment by capistrano3","archived":false,"fork":false,"pushed_at":"2016-07-15T09:18:01.000Z","size":35,"stargazers_count":1,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-11T18:53:59.757Z","etag":null,"topics":["ami","aws","capistrano","rubygems"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/wata727.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-04-17T18:12:55.000Z","updated_at":"2023-08-09T18:49:33.000Z","dependencies_parsed_at":"2022-11-03T05:15:39.518Z","dependency_job_id":null,"html_url":"https://github.com/wata727/capistrano-ami","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wata727%2Fcapistrano-ami","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wata727%2Fcapistrano-ami/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wata727%2Fcapistrano-ami/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wata727%2Fcapistrano-ami/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wata727","download_url":"https://codeload.github.com/wata727/capistrano-ami/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229711050,"owners_count":18112066,"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":["ami","aws","capistrano","rubygems"],"created_at":"2024-10-05T23:22:04.242Z","updated_at":"2024-12-14T14:12:17.390Z","avatar_url":"https://github.com/wata727.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Capistrano AMI\n\n[![build status](https://circleci.com/gh/wata727/capistrano-ami.svg?style=shield\u0026circle-token=490e040fc0a638ff54e85f9f0ac71c0330bcafa6)](https://circleci.com/gh/wata727/capistrano-ami)\n[![MIT License](http://img.shields.io/badge/license-MIT-blue.svg?style=flat)](LICENSE.txt)\n[![Gem Version](https://badge.fury.io/rb/capistrano-ami.svg)](https://rubygems.org/gems/capistrano-ami)\n\nThis plugin that create AMI (Amazon Machine Image) and manage generations tasks into capistrano script. `capistrano-ami` tasks are able to run when deploy target servers exists in AWS (http://aws.amazon.com/).\n\n## Installation\n\nAdd this line to your application's Gemfile:\n\n```ruby\ngem 'capistrano-ami'\n```\n\nAnd then execute:\n\n    $ bundle\n\nOr install it yourself as:\n\n    $ gem install capistrano-ami\n\n## Usage\nLoad `capistrano-ami` into your capistrano configuration file `Capfile`:\n```ruby\nrequire 'capistrano/ami'\n```\nAnd set config values in deploy script `config/deploy.rb`:\n```ruby\nset :aws_region, 'ap-northeast-1'  # deploy servers region name\nset :base_ami_name, 'web-role'     # name: \"#{base_ami_name}_#{instance_id}_#{deploy_timestamp}\" default is capistrano-ami\nset :keep_amis, 3                  # keeps number of AMIs. default is 5\n```\nIf you do not specify, `base_ami_name` and `keep_amis` uses default value.\n\n### Credentials\n\n`capistrano-ami` supports various credential providers. As of the following priority:\n\n- Specified shared credentials\n- Key values\n- Environment values\n- Default shared credentials\n- IAM role\n\n#### Key values\n\nYou can set credentials in deploy script `config/deploy.rb`:\n```ruby\nset :aws_access_key_id, 'YOUR_AWS_ACCESS_KEY'\nset :aws_secret_access_key, 'YOUR_AWS_SECRET_KEY'\n```\n\n#### Environment values\n\n`capistrano-ami` looks `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`, `AWS_REGION` environemt values.\n```\n$ export AWS_ACCESS_KEY_ID=YOUR_AWS_ACCESS_KEY\n$ export AWS_SECRET_ACCESS_KEY=YOUR_AWS_SECRET_KEY\n```\n\nIf you do not want to fix region in deploy script. use `AWS_REGION` environment values and other credential providers.\n\n#### Shared credentials\n\nShared credentials are credentials file in local machine. default location is `~/.aws/credentials`. [More infomation](https://blogs.aws.amazon.com/security/post/Tx3D6U6WSFGOK2H/A-New-and-Standardized-Way-to-Manage-Credentials-in-the-AWS-SDKs).\nIf you want to use `default`, do not specify key values in delopy script. But if you want to use other profile, you should specify following:\n\n```ruby\nset :aws_credentials_profile_name, 'profile_name'\n```\n\n#### IAM role\n\nIAM role is most secure credential provider. If you can, should use this. [More infomation](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html).\nThis provider used in no credentials configuration. Because you should not specify key values.\n\n## Versions\n\nWe check working this plugin following platform versions.\n\n- Ruby \n    - 2.3.0\n- Capistrano \n    - 3.5.0\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at https://github.com/wata727/capistrano-ami. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.\n\n## License\n\nThe gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwata727%2Fcapistrano-ami","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwata727%2Fcapistrano-ami","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwata727%2Fcapistrano-ami/lists"}