Ansible EC2 inventory
=====================
This Python module is based on the [original Ansible EC2 inventory
script](https://raw.githubusercontent.com/ansible/ansible/devel/contrib/inventory/ec2.py)
that is linked in the [Ansible
docs](http://docs.ansible.com/ansible/intro_dynamic_inventory.html#example-aws-ec2-external-inventory-script).
The Python module in this repo fixes a few issues by being
- installable via `pip` / PyPi: no need to place code from the Ansible
repo in your inventory.
- extendable for your needs: the class `Ec2Inventory` can be used as a
base class for customizations.
Installation
------------
pip install ansible-ec2-inventory
Usage
-----
### As a script
ansible-ec2-inventory --config ec2.ini
*Note:* if you want to provide a boto profile, prefix the command with
`AWS_PROFILE=myprofile`.
### As a Python module
Example:
``` {.python}
from ansible_ec2_inventory import Ec2Inventory
import json
def main():
# get path of ec2.ini
path = os.path.dirname(os.path.realpath(__file__))
# get inventory
ec2inventory = Ec2Inventory(configfile=path + '/ec2.ini')
data = ec2inventory.get_inventory()
# print json
print(json.dumps(data, sort_keys=True, indent=2))
if __name__ == '__main__':
main()
```
=====================
This Python module is based on the [original Ansible EC2 inventory
script](https://raw.githubusercontent.com/ansible/ansible/devel/contrib/inventory/ec2.py)
that is linked in the [Ansible
docs](http://docs.ansible.com/ansible/intro_dynamic_inventory.html#example-aws-ec2-external-inventory-script).
The Python module in this repo fixes a few issues by being
- installable via `pip` / PyPi: no need to place code from the Ansible
repo in your inventory.
- extendable for your needs: the class `Ec2Inventory` can be used as a
base class for customizations.
Installation
------------
pip install ansible-ec2-inventory
Usage
-----
### As a script
ansible-ec2-inventory --config ec2.ini
*Note:* if you want to provide a boto profile, prefix the command with
`AWS_PROFILE=myprofile`.
### As a Python module
Example:
``` {.python}
from ansible_ec2_inventory import Ec2Inventory
import json
def main():
# get path of ec2.ini
path = os.path.dirname(os.path.realpath(__file__))
# get inventory
ec2inventory = Ec2Inventory(configfile=path + '/ec2.ini')
data = ec2inventory.get_inventory()
# print json
print(json.dumps(data, sort_keys=True, indent=2))
if __name__ == '__main__':
main()
```
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ansible-ec2-inventory-0.1.8.tar.gz.
File metadata
- Download URL: ansible-ec2-inventory-0.1.8.tar.gz
- Upload date:
- Size: 13.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1ad5bc371cea5b729635f1e8ef1f17737144bd4140b819e8719d052a6025f7d
|
|
| MD5 |
a0b1d48bf09860b766e554335067def9
|
|
| BLAKE2b-256 |
88d240aafcb87a7b97a0196dd7aa76fb19db9c303659bd7d0d8051800b737d08
|