diff --git a/changelogs/fragments/inventory_docs_fix.yml b/changelogs/fragments/inventory_docs_fix.yml new file mode 100644 index 00000000000..9f32cdb9ed4 --- /dev/null +++ b/changelogs/fragments/inventory_docs_fix.yml @@ -0,0 +1,2 @@ +minor_changes: +- Point inventory script location to their respective version rather than devel version in documentation. diff --git a/docs/docsite/rst/user_guide/intro_dynamic_inventory.rst b/docs/docsite/rst/user_guide/intro_dynamic_inventory.rst index e214ce70d60..3b463698f58 100644 --- a/docs/docsite/rst/user_guide/intro_dynamic_inventory.rst +++ b/docs/docsite/rst/user_guide/intro_dynamic_inventory.rst @@ -10,7 +10,7 @@ Working with dynamic inventory If your Ansible inventory fluctuates over time, with hosts spinning up and shutting down in response to business demands, the static inventory solutions described in :ref:`inventory` will not serve your needs. You may need to track hosts from multiple sources: cloud providers, LDAP, `Cobbler `_, and/or enterprise CMDB systems. -Ansible integrates all of these options via a dynamic external inventory system. Ansible supports two ways to connect with external inventory: :ref:`inventory_plugins` and `inventory scripts `_. +Ansible integrates all of these options via a dynamic external inventory system. Ansible supports two ways to connect with external inventory: :ref:`inventory_plugins` and `inventory scripts `_. Inventory plugins take advantage of the most recent updates to the Ansible core code. We recommend plugins over scripts for dynamic inventory. You can :ref:`write your own plugin ` to connect to additional dynamic inventory sources. @@ -28,7 +28,7 @@ Ansible integrates seamlessly with `Cobbler `_, a Lin While primarily used to kickoff OS installations and manage DHCP and DNS, Cobbler has a generic layer that can represent data for multiple configuration management systems (even at the same time) and serve as a 'lightweight CMDB'. -To tie your Ansible inventory to Cobbler, copy `this script `_ to ``/etc/ansible`` and ``chmod +x`` the file. Run ``cobblerd`` any time you use Ansible and use the ``-i`` command line option (e.g. ``-i /etc/ansible/cobbler.py``) to communicate with Cobbler using Cobbler's XMLRPC API. +To tie your Ansible inventory to Cobbler, copy `this script `_ to ``/etc/ansible`` and ``chmod +x`` the file. Run ``cobblerd`` any time you use Ansible and use the ``-i`` command line option (e.g. ``-i /etc/ansible/cobbler.py``) to communicate with Cobbler using Cobbler's XMLRPC API. Add a ``cobbler.ini`` file in ``/etc/ansible`` so Ansible knows where the Cobbler server is and some cache improvements can be used. For example: @@ -111,7 +111,7 @@ So in other words, you can use those variables in arguments/actions as well. Inventory script example: AWS EC2 ================================= -If you use Amazon Web Services EC2, maintaining an inventory file might not be the best approach, because hosts may come and go over time, be managed by external applications, or you might even be using AWS autoscaling. For this reason, you can use the `EC2 external inventory `_ script. +If you use Amazon Web Services EC2, maintaining an inventory file might not be the best approach, because hosts may come and go over time, be managed by external applications, or you might even be using AWS autoscaling. For this reason, you can use the `EC2 external inventory `_ script. You can use this script in one of two ways. The easiest is to use Ansible's ``-i`` command line option and specify the path to the script after marking it executable: @@ -119,7 +119,7 @@ You can use this script in one of two ways. The easiest is to use Ansible's ``-i ansible -i ec2.py -u ubuntu us-east-1d -m ping -The second option is to copy the script to `/etc/ansible/hosts` and `chmod +x` it. You must also copy the `ec2.ini `_ file to `/etc/ansible/ec2.ini`. Then you can run ansible as you would normally. +The second option is to copy the script to `/etc/ansible/hosts` and `chmod +x` it. You must also copy the `ec2.ini `_ file to `/etc/ansible/ec2.ini`. Then you can run ansible as you would normally. To make a successful API call to AWS, you must configure Boto (the Python interface to AWS). You can do this in `several ways `_ available, but the simplest is to export two environment variables: @@ -269,7 +269,7 @@ Inventory script example: OpenStack If you use an OpenStack-based cloud, instead of manually maintaining your own inventory file, you can use the ``openstack_inventory.py`` dynamic inventory to pull information about your compute instances directly from OpenStack. -You can download the latest version of the OpenStack inventory script `here `_. +You can download the latest version of the OpenStack inventory script `here `_. You can use the inventory script explicitly (by passing the `-i openstack_inventory.py` argument to Ansible) or implicitly (by placing the script at `/etc/ansible/hosts`). @@ -278,7 +278,7 @@ Explicit use of OpenStack inventory script Download the latest version of the OpenStack dynamic inventory script and make it executable:: - wget https://raw.githubusercontent.com/ansible/ansible/devel/contrib/inventory/openstack_inventory.py + wget https://raw.githubusercontent.com/ansible/ansible/stable-2.9/contrib/inventory/openstack_inventory.py chmod +x openstack_inventory.py .. note:: @@ -319,7 +319,7 @@ Download the latest version of the OpenStack dynamic inventory script, make it e .. code-block:: bash - wget https://raw.githubusercontent.com/ansible/ansible/devel/contrib/inventory/openstack_inventory.py + wget https://raw.githubusercontent.com/ansible/ansible/stable-2.9/contrib/inventory/openstack_inventory.py chmod +x openstack_inventory.py sudo cp openstack_inventory.py /etc/ansible/hosts @@ -327,7 +327,7 @@ Download the sample configuration file, modify it to suit your needs and copy it .. code-block:: bash - wget https://raw.githubusercontent.com/ansible/ansible/devel/contrib/inventory/openstack.yml + wget https://raw.githubusercontent.com/ansible/ansible/stable-2.9/contrib/inventory/openstack.yml vi openstack.yml sudo cp openstack.yml /etc/ansible/ @@ -353,7 +353,7 @@ Note that the OpenStack dynamic inventory script will cache results to avoid rep Other inventory scripts ======================= -You can find all included inventory scripts in the `contrib/inventory directory `_. General usage is similar across all inventory scripts. You can also :ref:`write your own inventory script `. +You can find all included inventory scripts in the `contrib/inventory directory `_. General usage is similar across all inventory scripts. You can also :ref:`write your own inventory script `. .. _using_multiple_sources: