Thursday 19 September 2019

ubuntu - Ansible Determine Operating System


As part of my deploy script I wanna check which operating system I am deploying to. I used ansible localhost -m setup and as they say in the documentation this outputs a lot. Is there a way I can just access the ubuntu distro I am using? Ideally I want to find if the box is running Trusty or Precise



Answer



ansible_distribution_release


The fact is called ansible_distribution_release. If you are running Ubuntu 14.04, the fact would read "trusty".


Two other example values: ansible_distribution_release would be "xenial" for Ubuntu 16.04 and "precise" for Ubuntu 12.04.


ansible_distribution_version


You can also look at the fact ansible_distribution_version. For Ubuntu 14.04, you would see "14.04".


Two other example values: ansible_distribution_version would be "16.04" for Ubuntu 16.04 and "12.04" for Ubuntu 12.04.


Here is an example task that you could put into a playbook to install the build-essential package only on Ubuntu 14.04:


- name: Install build-essential for Ubuntu 14.04 only
apt: name=build-essential state=present
when: ansible_distribution_version == "14.04"

No comments:

Post a Comment

How can I VLOOKUP in multiple Excel documents?

I am trying to VLOOKUP reference data with around 400 seperate Excel files. Is it possible to do this in a quick way rather than doing it m...