CLI for simple AWS AMIs management
Install with pip
:
$ pip install shipami
$ shipami --help
- List available AMIs in your default region (eg. eu-west-1)
$ shipami list
NAME RELEASE ID STATE CREATED MANAGED COPIED FROM COPIED TO
foo ami-00000000 available 5 days ago no origin
- Create a release based on this image in us-east-1 region
$ shipami --region us-east-1 release ami-00000000 1.0 --source-region eu-west-1
ami-000000aa
$ shipami --region us-east-1 list
NAME RELEASE ID STATE CREATED MANAGED COPIED FROM COPIED TO
foo-1.0 1.0 ami-000000aa pending just now yes eu-west-1:ami-00000000
- Manually share with AWS Marketplace account
$ shipami --region us-east-1 share ami-000000aa
$ shipami --region us-east-1 show ami-000000aa
id: ami-000000aa
name: foo-1.0
state: available
tags:
shipami:copied_from: eu-west-1:ami-00000000
shipami:managed: True
shipami:release: 1.0
devices mappings:
/dev/xvda 8Go type:gp2
shared with:
679593333241 (AWS MARKETPLACE) OK
You can get further help and usage instructions on any command with the --help
option.
$ shipami copy ami-00000000
ami-000000aa
$ shipami list
NAME RELEASE ID STATE CREATED MANAGED COPIED FROM COPIED TO
foo ami-00000000 available 5 days ago no origin eu-west-1:ami-000000aa
foo ami-000000aa pending just now yes eu-west-1:ami-00000000
$ shipami list
NAME RELEASE ID STATE CREATED MANAGED COPIED FROM COPIED TO
foo ami-00000000 available 5 days ago no origin eu-west-1:ami-000000aa
foo ami-000000aa available 1 day ago yes eu-west-1:ami-00000000
$ shipami delete ami-000000aa
ami-000000aa
$ shipami list
NAME RELEASE ID STATE CREATED MANAGED COPIED FROM COPIED TO
foo ami-00000000 available 5 days ago no origin
$ shipami list
NAME RELEASE ID STATE CREATED MANAGED COPIED FROM COPIED TO
foo ami-00000000 available 5 days ago no origin
$ shipami release ami-00000000 1.0
ami-000000aa
$ shipami list
NAME RELEASE ID STATE CREATED MANAGED COPIED FROM COPIED TO
foo ami-00000000 available 5 days ago no origin eu-west-1:ami-000000aa
foo-1.0 1.0 ami-000000aa pending just now yes eu-west-1:ami-00000000
$ shipami share ami-000000aa 012345678912
$ shipami show ami-000000aa
id: ami-000000aa
name: foo-1.0
state: available
tags:
shipami:copied_from: eu-west-1:ami-00000000
shipami:managed: True
shipami:release: 1.0
devices mappings:
/dev/xvda 8Go type:gp2
shared with:
012345678912