This repository contains modules and plugins for metal-stack.
The modules use metal-python for accessing the metal-api. Please make sure you use the correct version of this repository in order to be compatible with the API.
The v2 modules require the metal-stack-api python client from the api repository.
| Module Name | Description | Requirements |
|---|---|---|
| metal_ip | Manages metal-stack IP entities | metal-python |
| metal_firewall | Manages metal-stack firewall entities | metal-python |
| metal_machine | Manages metal-stack machine entities | metal-python |
| metal_network | Manages metal-stack network entities | metal-python |
| metal_project | Manages metal-stack project entities | metal-python |
| Module Name | Description | Requirements |
|---|---|---|
| metal_v2_project | Manages metal-stack project entities | metal-stack-api |
| metal_v2_tenant | Manages metal-stack tenant entities | metal-stack-api |
| metal_v2_api_token | Manages metal-stack api token entities | metal-stack-api |
| Inventory Name | Description |
|---|---|
| metal.py | Dynamic inventory for metal-stack |
| Inventory Name | Description |
|---|---|
| metal | Query the metal-api |
It's convenient to use ansible-galaxy in order to use this project. For your project, set up a requirements.yml:
- src: https://github.com/metal-stack/metal-ansible-modules.git
name: metal-ansible-modules
version: masterYou can then download the roles with the following command:
ansible-galaxy install -r requirements.ymlThen reference the roles in your playbooks like this:
- name: Deploy something
hosts: localhost
connection: local
gather_facts: no
roles:
- metal-ansible-modules