110 lines
2.9 KiB
Markdown
110 lines
2.9 KiB
Markdown

|
|
[](https://codecov.io/gh/ngine-io/ansible-collection-cloudstack)
|
|
[](LICENSE)
|
|
|
|
# Ansible Collection for Apache CloudStack Clouds
|
|
|
|
This collection provides a series of Ansible modules and plugins for interacting with the [Apache CloudStack](https://cloudstack.apache.org) Cloud.
|
|
|
|
## Requirements
|
|
|
|
- ansible version >= 2.9
|
|
|
|
## Installation
|
|
|
|
To install the collection hosted in Galaxy:
|
|
|
|
```bash
|
|
ansible-galaxy collection install ngine_io.cloudstack
|
|
```
|
|
|
|
To upgrade to the latest version of the collection:
|
|
|
|
```bash
|
|
ansible-galaxy collection install ngine_io.cloudstack --force
|
|
```
|
|
|
|
## Usage
|
|
|
|
### Playbooks
|
|
|
|
To use a module from Apache CloudStack collection, please reference the full namespace, collection name, and modules name that you want to use:
|
|
|
|
```yaml
|
|
---
|
|
- name: Using Apache CloudStack collection
|
|
hosts: localhost
|
|
tasks:
|
|
- ngine_io.cloudstack.cs_instance:
|
|
...
|
|
```
|
|
|
|
Or you can add full namepsace and collecton name in the `collections` element:
|
|
|
|
```yaml
|
|
---
|
|
- name: Using Apache CloudStack collection
|
|
hosts: localhost
|
|
collections:
|
|
- ngine_io.cloudstack
|
|
tasks:
|
|
- cs_instance:
|
|
...
|
|
```
|
|
|
|
### Roles
|
|
|
|
For existing Ansible roles, please also reference the full namespace, collection name, and modules name which used in tasks instead of just modules name.
|
|
|
|
### Plugins
|
|
|
|
To use a plugin, please reference the full namespace, collection name, and plugin name that you want to use:
|
|
|
|
```yaml
|
|
plugin: ngine_io.cloudstack.cloudstack
|
|
```
|
|
|
|
## Contributing
|
|
|
|
There are many ways in which you can participate in the project, for example:
|
|
|
|
- Submit bugs and feature requests, and help us verify as they are checked in
|
|
- Review source code changes
|
|
- Review the documentation and make pull requests for anything from typos to new content
|
|
- If you are interested in fixing issues and contributing directly to the code base, please see the [CONTRIBUTING](CONTRIBUTING.md) document.
|
|
|
|
## Run tests
|
|
|
|
Activate env setup of ansible core:
|
|
|
|
```
|
|
git clone git@github.com:ansible/ansible.git
|
|
cd ansible
|
|
source hacking/env-setup
|
|
```
|
|
|
|
Clone the repo:
|
|
|
|
```
|
|
git clone git@github.com:ngine-io/ansible-collection-cloudstack.git
|
|
cd ansible-collection-cloudstack
|
|
```
|
|
|
|
Run tests in docker with cloudstack simulator:
|
|
```
|
|
# All tests (note the trailing slash in `cloud/cs/`)
|
|
ansible-test integration --docker --color --diff -v cloud/cs/
|
|
|
|
# One test e.g. cs_instance (note no trailing slash in `cloud/cs/cs_instance`)
|
|
ansible-test integration --docker --color --diff -v cloud/cs/cs_instance
|
|
|
|
# Run tests for code you changed
|
|
ansible-test integration --docker --color --diff -v --changed cloud/cs/
|
|
```
|
|
|
|
## License
|
|
|
|
GNU General Public License v3.0
|
|
|
|
See [COPYING](COPYING) to see the full text.
|