Cloud control command-line tool for AWS.
It is available through npm
npm install -g kirby
Kirby allows you to easily launch and list named ec2 instances. Key features include tab-completion and making launched instances automatically inherit the configuration of an instance with the same name.
In general all commands accept a
private hostname to
identify an instance. If the instance name contains
+ it will be treated as an array
of different names, i.e.
name=foo+bar means that both
bar will match that instance.
kirby list i-134245 # matches instance-id=i-134245kirby list ec2-42-54-25... # matches hostname=ec2-42-54-25...kirby list ip-24-24-13... # matches private-hostname=ip-24-24-13...kirby list foo # matches name=foo or name=foo+barkirby list bar # matches name=bar or name=foo+barkirby list foo+bar # matches name=foo+bar or name=bar+foo
kirby to see a full list of commands and options
Usage: kirby [command] [name-or-id?]The available commands arecompletion Setup rich tabcompletion.Remember to source the completion or restart your terminal after setting up.--save,-s to save it to your $BASH_COMPLETION_DIR (install globally)launch Launch a new instance with the given name.The defaults for the options below are configured based on instances withthe same name.--ami,-i [image] to set the ami--key-name,-k [key-pair-name] to set the key-pair used for ssh--instance-type,-t [instance-type] to set the instance type--security-group,-g [security-group-name] to set the security group--availability-zone,-z [zone] to specify which availabilty zone to launch in--user-data,-u [filename] to specify user-data. If user-data starts with #!aws will treat it as a launch script--user-data,-u to specify user-data interactively--iam-role,-r [role-name] to set a iam instance profile role--load-balancer [elb-name] to register instance with elb.--defaults,-d [instance-id] to set default values for options basedon another instance. if omitted the latest instance with the samename will be used--no-defaults to disable defaults selectionterminate Terminate a running instance with the given name or instance id.exec Execute a command on all instances with the given name.Expects a script from --script [file] or --command [commands] to be used.--command,-c [commands] to specify the command to execute inline--script,-s [script] to specify a script file to run--script,-s to specify the script interactively--user,-u [username] to set the user. Defaults to ubuntu--key,-k [path-to-private-key] to specify a private key to use for auth--user-data to execute the instances user-data. See launch for more info--one to only execute on the latest launched instancelogin Login to a single instance with the given name using ssh.Will prompt for the instance to login to if there are more than one.--key,-k [path-to-private-key] to specify a private key to use for auth--user,-u [username] to set the user. Defaults to ubuntu--one to login to the latest launched instancelist List all instances with the given name.--one to only show the latest launched instance--running to only show running instancesuser-data Show the latest used user-data for the given name.profile List and manage profiles. Use kirby profile [new-name] to add a new one.Per default the profile name default is used and all profiles are shared withthe aws cli tools.--aws-access-key,-a [access-key] to specify the AWS access key to use--aws-secret-key,-s [secret-key] to specify the AWS secret key to use--region,-r [region-name] to set the used AWS region.--iam-role to specify that this profile is using an iam roleAll commands accept --profile,-p [profile-name] to set the used profile to somethingother than default.Running 'kirby --help' will print this message.