I'm trying to find a way to strip the characters with respect to the ansible_kernel variable. As of now, it outputs something like this:
3.10.0-1127.18.2.el7.x86_64
I just need the first 4 characters (3.10) as I'm looking to write a conditional task for kernel versions that match a specific value.
I attempted to follow the example here but, I just get a hello world as my output:
How to compare kernel (or other) version numbers in Ansible
Here is my simple code:
- name: check kernel
hosts: all
gather_facts: yes
vars:
kernel_version: "{{ansible_kernel}}"
tasks:
- debug:
var: kernel_version
- set_fact: release="{{ kernel_version }}"
- debug:
var: release
- debug:
msg:"Version is {{'release'[:5]}}" //also tried with release.stdout but I get an error
Output of play:
ASK [debug] *******************************************************************
ok: [server] => {
"kernel_version": "3.10.0-1127.18.2.el7.x86_64"
}
TASK [set_fact] ****************************************************************
ok: [server]
TASK [debug] *******************************************************************
ok: [server] => {
"release": "3.10.0-1127.18.2.el7.x86_64"
}
TASK [debug] *******************************************************************
ok: [server] => {
"msg": "Hello world!"