Skip to content
cloud control for aws
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
.gitignore
README.md
app.js
editor.js
help
index.js
package.json
profiles.js

README.md

Kirby

Cloud control command-line tool for AWS.

It is available through npm

npm install -g kirby

Usage

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.

Identifying instances

In general all commands accept a name, instance-id, hostname or 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 foo and bar will match that instance.

kirby list i-134245        # matches instance-id=i-134245
kirby 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+bar
kirby list bar             # matches name=bar or name=foo+bar
kirby list foo+bar         # matches name=foo+bar or name=bar+foo

Help

Run kirby to see a full list of commands and options

Usage: kirby [command] [name-or-id?]

The available commands are
  completion  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 with
              the 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 based
                  on another instance. if omitted the latest instance with the same
                  name will be used
                --no-defaults to disable defaults selection

  terminate   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 instance

  login       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 instance

  list        List all instances with the given name.
                --one to only show the latest launched instance
                --running to only show running instances

  user-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 with
              the 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 role

All commands accept --profile,-p [profile-name] to set the used profile to something
other than default.

Running 'kirby --help' will print this message.

License

MIT

Something went wrong with that request. Please try again.