abn.ec2-api-tools-java
EC2 API Tools (Java)
This tool helps you install and set up AWS ec2-api-tools on a target machine. It does not use the newer recommended Python package awscli
because it is designed for cases that still need the Java tools (like Bamboo Elastic Agent).
Requirements
You only need Ansible to use this role; no other specific requirements are necessary.
Role Variables
You can change how this tool works by adjusting the following variables:
ec2_api_tools_url
: Use this if you want to install from a custom source.ec2_api_tools_dir
: Change this to specify a different installation directory.ec2_api_tools_refresh
: Set this toyes
if you want to reinstall the tools even if they are already installed. The system checks ifec2_api_tools_dir
exists, and if it does and this option is set, it will remove the existing tools before reinstalling.
Dependencies
This role doesn't depend on any external tools by itself. However, if you're running tests, you'll need to have the galaxy role abn.managed-node-bootstrap installed.
Example Playbook
Here's a simple playbook that will refresh any existing installations of the tools.
- hosts: all
roles:
- { role: abn.ec2-api-tools-java, ec2_api_tools_refresh: yes }
Testing
Before running tests, make sure to clone the necessary submodules with this command:
git submodule update --init --recursive
Local Environment
This role uses Molecule and Docker to allow for testing. You can run this on your local development machine if you have Python installed and are running Docker.
# install molecule and docker-py requirements
pip install -r test-requirements.txt
molecule test
This command will create containers of the supported Linux distributions and run a sample playbook as set up in the default Molecule scenario.
Tox
This project has tox set up to test with different versions of Ansible using Molecule. You can run it easily with:
tox
Check the Molecule documentation and tox documentation for more advanced usage instructions.
License
Apache License 2.0
Install and configure AWS ec2-api-tools on a target node
ansible-galaxy install abn.ec2-api-tools-java