https://github.com/metal-stack/metal-ansible-modules
Ansible modules for metal-stack
https://github.com/metal-stack/metal-ansible-modules
Last synced: 11 months ago
JSON representation
Ansible modules for metal-stack
- Host: GitHub
- URL: https://github.com/metal-stack/metal-ansible-modules
- Owner: metal-stack
- License: mit
- Created: 2020-07-06T07:23:10.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-03-22T13:56:55.000Z (almost 2 years ago)
- Last Synced: 2025-01-11T11:18:04.333Z (about 1 year ago)
- Language: Python
- Size: 149 KB
- Stars: 1
- Watchers: 8
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
# Metal Ansible Modules
This repository contains modules and plugins for metal-stack.
The modules use [metal-python](https://github.com/metal-stack/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.
## Modules
| Module Name | Description | Requirements |
| ------------------------------------------- | ------------------------------------- | ------------ |
| [metal_ip](library/metal_ip.py) | Manages metal-stack IP entities | metal-python |
| [metal_firewall](library/metal_firewall.py) | Manages metal-stack firewall entities | metal-python |
| [metal_machine](library/metal_machine.py) | Manages metal-stack machine entities | metal-python |
| [metal_network](library/metal_network.py) | Manages metal-stack network entities | metal-python |
| [metal_project](library/metal_project.py) | Manages metal-stack project entities | metal-python |
## Dynamic Inventories
| Inventory Name | Description |
| ------------------------------- | --------------------------------- |
| [metal.py](inventory/metal.py) | Dynamic inventory for metal-stack |
## Lookup Plugins
| Inventory Name | Description |
| ------------------------------------ | ------------------- |
| [metal](lookup_plugins/metal.py) | Query the metal-api |
## Usage
It's convenient to use ansible-galaxy in order to use this project. For your project, set up a `requirements.yml`:
```yaml
- src: https://github.com/metal-stack/metal-ansible-modules.git
name: metal-ansible-modules
version: master
```
You can then download the roles with the following command:
```bash
ansible-galaxy install -r requirements.yml
```
Then reference the roles in your playbooks like this:
```yaml
- name: Deploy something
hosts: localhost
connection: local
gather_facts: no
roles:
- metal-ansible-modules
```