EC2-Helper-Script is a project mainly written in ..., it's free.
Monolithic shell script for managing EC2 instances
This is a script to simplify EC2 instance interactions, but an example will probably explain my goal better: ./ec2-helper --instance-add ami-ea1e60b8 --instance-wait --instance-knowself --instance-upload --source ~/websitefiles.zip --instance-upload --source ~/virtual.conf --instance-upload --source ~/backup.sql --instance-ssh --sudo --run ~/setup.sh This command does the following things, in order:
==========HELP COMMANDS ========== General help Usage: ./ec2-helper --help
==========KEYPAIR COMMANDS ==========
Create a keypair
Usage: ./ec2-helper --keypair-add
Output the fingerprint of a keypair
Usage: ./ec2-helper --keypair-fingerprint
Output the filepath to the keypair key
Usage: ./ec2-helper --keypair-file
Delete a keypair
Usage: ./ec2-helper --keypair-delete
Output the keypair key
Usage: ./ec2-helper --keypair-show
Output the keypair information provided by the EC2 API Usage: ./ec2-helper --keypair-list
==========GROUP COMMANDS ==========
Create a group
Usage: ./ec2-helper --group-add
Usage: ./ec2-helper --group-authorize
Deny a group access authorization
Usage: ./ec2-helper --group-revoke
Delete a group
Usage: ./ec2-helper --group-delete
Output the group information provided by the EC2 API Usage: ./ec2-helper --group-list
==========INSTANCE COMMANDS ==========
Create an instance
Usage: ./ec2-helper --instance-add
Wait until the specified instance has transitioned to a stable status (running or terminated)
Usage: ./ec2-helper --instance-wait
Open an SSH connection to the specified instance
Usage: ./ec2-helper --instance-ssh
Upload files to the specified instance using SCP
Usage: ./ec2-helper --instance-upload
Update an instances self-knowledge information (/opt/publicdns)
Usage: ./ec2-helper --instance-knowself
Delete the specified instance
Usage: ./ec2-helper --instance-delete
Output the instance information provided by the EC2 API Usage: ./ec2-helper --instance-list
Update instance status using the EC2 API, outputs retrieved statuses
NOTE: known instances that are not listed by the API are updated to 'terminated'
Usage: ./ec2-helper --instance-update [