All Projects → theforeman → Foreman Ansible Modules

theforeman / Foreman Ansible Modules

Licence: gpl-3.0
Ansible modules for interacting with the Foreman API and various plugin APIs such as Katello

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Foreman Ansible Modules

Awesome Ansible
Awesome Ansible List
Stars: ✭ 215 (+97.25%)
Mutual labels:  hacktoberfest, ansible
Satpy
Python package for earth-observing satellite data processing
Stars: ✭ 679 (+522.94%)
Mutual labels:  hacktoberfest, satellite
Molecule
Molecule aids in the development and testing of Ansible roles
Stars: ✭ 3,262 (+2892.66%)
Mutual labels:  hacktoberfest, ansible
Django Init
Project template used at Fueled for scaffolding new Django based projects. 💫
Stars: ✭ 126 (+15.6%)
Mutual labels:  hacktoberfest, ansible
Docker Ansible Playbook
Docker Image of Ansible for executing ansible-playbook command against an externally mounted set of Ansible playbooks
Stars: ✭ 90 (-17.43%)
Mutual labels:  hacktoberfest, ansible
Network
An ansible role to configure networking
Stars: ✭ 134 (+22.94%)
Mutual labels:  hacktoberfest, ansible
Phansible
Phansible - generate Vagrant + Ansible dev environments for PHP
Stars: ✭ 633 (+480.73%)
Mutual labels:  hacktoberfest, ansible
Devops Guide
DevOps Guide - Development to Production all configurations with basic notes to debug efficiently.
Stars: ✭ 4,119 (+3678.9%)
Mutual labels:  hacktoberfest, ansible
Molecule Vagrant
Molecule Vangrant Driver
Stars: ✭ 69 (-36.7%)
Mutual labels:  hacktoberfest, ansible
Ansible Mariadb Galera Cluster
Stars: ✭ 49 (-55.05%)
Mutual labels:  hacktoberfest, ansible
Litmus
Litmus helps SREs and developers practice chaos engineering in a Cloud-native way. Chaos experiments are published at the ChaosHub (https://hub.litmuschaos.io). Community notes is at https://hackmd.io/a4Zu_sH4TZGeih-xCimi3Q
Stars: ✭ 2,377 (+2080.73%)
Mutual labels:  hacktoberfest, ansible
Ansible Role Bootstrap
Prepare your system to be managed by Ansible.
Stars: ✭ 106 (-2.75%)
Mutual labels:  hacktoberfest, ansible
Ansible Openwisp2 Imagegenerator
Automatically build several openwisp2 firmware images for different organizations while keeping track of their differences
Stars: ✭ 122 (+11.93%)
Mutual labels:  hacktoberfest, ansible
Community.kubernetes
Kubernetes Collection for Ansible
Stars: ✭ 214 (+96.33%)
Mutual labels:  hacktoberfest, ansible
Pyorbital
Orbital and astronomy computations in python
Stars: ✭ 119 (+9.17%)
Mutual labels:  hacktoberfest, satellite
Configuration
A collection of edx configuration scripts and utilities that edx.org uses to deploy openedx.
Stars: ✭ 776 (+611.93%)
Mutual labels:  hacktoberfest, ansible
Community.vmware
Ansible Collection for VMWare
Stars: ✭ 104 (-4.59%)
Mutual labels:  hacktoberfest, ansible
Ansible
Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy and maintain. Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, using SSH, with no agents to install on remote systems. https://docs.ansible.com.
Stars: ✭ 51,573 (+47214.68%)
Mutual labels:  hacktoberfest, ansible
Myportfolio Hacktoberfest2019
I'm in need for a new portfolio website. Maybe the Hacktoberfest army could help me?
Stars: ✭ 109 (+0%)
Mutual labels:  hacktoberfest
Thorium
Platform for starship simulator controls
Stars: ✭ 109 (+0%)
Mutual labels:  hacktoberfest

Foreman Ansible Modules Build Status

Ansible modules for interacting with the Foreman API and various plugin APIs such as Katello.

Documentation

A list of all modules and their documentation can be found at theforeman.org/plugins/foreman-ansible-modules.

Support

Supported Foreman and plugins versions

Modules should support any currently stable Foreman release and the matching set of plugins. Some modules have additional features/arguments that are only applied when the corresponding plugin is installed.

We actively test the modules against the latest stable Foreman release and the matching set of plugins.

Supported Ansible Versions

The supported Ansible versions are aligned with currently maintained Ansible versions that support Collections (2.8+). You can find the list of maintained Ansible versions here.

Supported Python Versions

Starting with Ansible 2.7, Ansible only supports Python 2.7 and 3.5 (and higher). These are also the only Python versions we develop and test the modules against.

Known issues

  • Some modules, e.g. repository_sync and content_view_version, trigger long running tasks on the server side. It might be beneficial to your playbook to wait for their completion in an asynchronous manner. As Ansible has facilities to do so, the modules will wait unconditionally. See the Ansible documentation for putting tasks in the background. Please make sure to set a high enough async value, as otherwise Ansible might abort the execution of the module while there is still a task running on the server, making status reporting fail.

  • According to Ansible documentation, using loop over Ansible resources can leak sensitive data. This applies to all modules, but especially those which require more secrets than the API credentials (auth_source_ldap, compute_resource, host, hostgroup, http_proxy, image, repository, scc_account, user). You can prevent this by using no_log: yes on the task.

    eg:

    - name: Create compute resources
      theforeman.foreman.compute_resource:
        server_url: https://foreman.example.com
        username: admin
        password: changeme
        validate_certs: yes
        name: "{{ item.name }}"
        organizations: "{{ item.organizations | default(omit) }}"
        locations: "{{ item.locations | default(omit) }}"
        description: "{{ item.description | default(omit) }}"
        provider: "{{ item.provider }}"
        provider_params: "{{ item.provider_params | default(omit) }}"
        state: "{{ item.state | default('present') }}"
      loop: "{{ compute_resources }}"
      no_log: yes
    

Installation

There are currently two ways to use the modules in your setup: install from Ansible Galaxy or via RPM.

Installation from Ansible Galaxy

You can install the collection from Ansible Galaxy by running ansible-galaxy collection install theforeman.foreman (Ansible 2.9 and later) or mazer install theforeman.foreman (Ansible 2.8).

After the installation, the modules are available as theforeman.foreman.<module_name>. Please see the Using Ansible collections documentation for further details.

Installation via RPM

The collection is also available as ansible-collection-theforeman-foreman from the client repository on yum.theforeman.org.

After installing the RPM, you can use the modules in the same way as when they are installed directly from Ansible Galaxy.

Dependencies

These dependencies are required for the Ansible controller, not the Foreman server.

  • PyYAML
  • requests
  • ipaddress for the subnet module on Python 2.7
  • rpm for the RPM support in the content_upload module
  • debian for the DEB support in the content_upload module

Foreman Ansible Roles

Roles using the Foreman Ansible Modules to configure Foreman and its plugins.

Documentation

For individual role documentation, check the README defined at roles/rolename/README.md.

Common Role Variables

  • foreman_server_url: URL of the Foreman server. If the variable is not specified, the value of environment variable FOREMAN_SERVER_URL will be used instead.
  • foreman_username: Username accessing the Foreman server. If the variable is not specified, the value of environment variable FOREMAN_USERNAME will be used instead.
  • foreman_password: Password of the user accessing the Foreman server. If the variable is not specified, the value of environment variable FOREMAN_PASSWORD will be used instead.
  • foreman_validate_certs: Whether or not to verify the TLS certificates of the Foreman server. If the variable is not specified, the value of environment variable FOREMAN_VALIDATE_CERTS will be used instead.
  • foreman_organization: Organization where configuration will be applied.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].