On this page
community.general.alternatives – Manages alternative programs for common commands
Note
This plugin is part of the community.general collection (version 3.8.1).
You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install community.general.
To use it in a playbook, specify: community.general.alternatives.
Synopsis
- Manages symbolic links using the ‘update-alternatives’ tool.
 - Useful when multiple programs are installed but provide similar functionality (e.g. different editors).
 
Requirements
The below requirements are needed on the host that executes this module.
- update-alternatives
 
Parameters
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
| link
        
        path
         | 
      
        
        The path to the symbolic link that should point to the real executable.
        
       
        This option is always required on RHEL-based distributions. On Debian-based distributions this option is required when the alternative name is unknown to the system.
         | 
     |
| name
        
        string / required
         | 
      
        
        The generic name of the link.
         | 
     |
| path
        
        path / required
         | 
      
        
        The path to the real executable that the link should point to.
         | 
     |
| priority
        
        integer
         | 
      Default: 
        50
         | 
      
        
        The priority of the alternative.
         | 
     
Examples
- name: Correct java version selected
  community.general.alternatives:
    name: java
    path: /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java
- name: Alternatives link created
  community.general.alternatives:
    name: hadoop-conf
    link: /etc/hadoop/conf
    path: /etc/hadoop/conf.ansible
- name: Make java 32 bit an alternative with low priority
  community.general.alternatives:
    name: java
    path: /usr/lib/jvm/java-7-openjdk-i386/jre/bin/java
    priority: -10
  Authors
- David Wittman (@DavidWittman)
 - Gabe Mulley (@mulby)
 
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/latest/collections/community/general/alternatives_module.html