An open API service indexing awesome lists of open source software.

https://github.com/loxda/ansible-foreman

Ansible playbooks to deploy theforeman.org using foreman-ansible-modules
https://github.com/loxda/ansible-foreman

ansible ansible-playbook foreman foreman-proxy theforeman

Last synced: 6 months ago
JSON representation

Ansible playbooks to deploy theforeman.org using foreman-ansible-modules

Awesome Lists containing this project

README

          

# TFM FOREMAN

One tool to deploy the stack

+---------------------+
| App (code) |
~~+---------------------+~~
| Operating System |
+---------------------+
| (Virtual) |
~~+---------------------+~~
| Physical |
+---------------------+

### Ansible repo to provision an instance of theforeman with custom set of parameters (deploy & provision)

Setup deployement:

Using a working python environnement, or activate a virtualenv :

```
pip3 install -r ./requirement.txt
export ANSIBLE_COLLECTIONS_PATH=./collections
ansible-galaxy collection install -r roles/requirements.yml
export ANSIBLE_ROLES_PATH=./roles
ansible-galaxy role install -r roles/requirements.yml
```

Run examples :
```
# clean environment (ONLY IF YOU NEED SOME CLEANUP)
unset $(set | grep --line-buffered ^ANSIBLE_ | awk -F= '{print $1}')
```
```
# deploy whole
ansible-playbook -i inventory/lab playbooks/foreman_deploy.yml
```
```
# deploy only individual parts
ansible-playbook -i inventory/lab playbooks/foreman_puppet.yml --tags puppet
ansible-playbook -i inventory/lab playbooks/foreman_db.yml --tags db
ansible-playbook -i inventory/lab playbooks/foreman_app.yml --tags app
ansible-playbook -i inventory/lab playbooks/foreman_proxy.yml --tags proxy,oauth

# +fixdhcp for debian>10 with broken omapi in isc-dhcp packaging
ansible-playbook -i inventory/lab playbooks/foreman_proxy.yml --tags proxy,oauth,fixdhcp
```
```
# provisioning
ansible-playbook -i inventory/lab playbooks/foreman_deploy.yml --tags provisioning
```

Parameters are defined at inventory/group level.

Be sure to maps your instances to group in inventory files.

Rename files in host_vars accordingly.

Some macro views:

ansible-playbook-grapher -vvvvvv --include-role-tasks -i inventory/mgmt playbooks/foreman_db.yml

foreman_db svg

ansible-playbook-grapher -vvvvvv --include-role-tasks -i inventory/mgmt playbooks/foreman_puppet.yml

foreman_puppet svg

ansible-playbook-grapher -vvvvvv --include-role-tasks -i inventory/mgmt playbooks/foreman_app.yml

foreman_app svg

ansible-playbook-grapher -vvvvvv --include-role-tasks -i inventory/mgmt playbooks/foreman_proxy.yml --tags fixdhcp

foreman_proxy svg

ansible-playbook-grapher -vvvvvv --include-role-tasks -i inventory/mgmt playbooks/foreman_provisioning.yml --tags provisioning

foreman_provisioning svg

ansible-playbook-grapher -vvvvvv --include-role-tasks -i inventory/mgmt playbooks/foreman_deploy.yml --tags tfm,fixdhcp,provisioning

foreman_deploy svg

## Requirements

see requirement.txt