-
-
Save garethrees/5591027 to your computer and use it in GitHub Desktop.
- name: Group by Distribution | |
hosts: all | |
tasks: | |
- group_by: key=${ansible_distribution} | |
- name: Set Time Zone | |
hosts: Ubuntu | |
gather_facts: False | |
tasks: | |
- name: Set timezone variables | |
copy: content='America/Los_Angeles' | |
dest=/etc/timezone | |
owner=root | |
group=root | |
mode=0644 | |
backup=yes | |
notify: | |
- update timezone | |
handlers: | |
- name: update timezone | |
command: dpkg-reconfigure --frontend noninteractive tzdata |
vagrant@us:~$ ll /etc/ | grep timezone | |
-rw-r--r-- 1 root root 20 May 16 06:27 timezone | |
-rw-r--r-- 1 root root 20 May 16 06:22 timezone.2013-05-16@06:24~ | |
-rw-r--r-- 1 root root 20 May 16 06:24 timezone.2013-05-16@06:27~ | |
vagrant@us:~$ cat /etc/timezone | |
America/Los_Angeles | |
vagrant@us:~$ cat /etc/timezone.2013-05-16@06:24~ | |
America/Los_Angeles | |
vagrant@us:~$ cat /etc/timezone.2013-05-16@06:27~ | |
America/Los_Angeles | |
vagrant@us:~$ |
Awesome, thanks so much too.
thanks!!
Yeah, so, how to make this idempotent, as they say?
Check the current zone, register it and compare:
That's what I need 👍
Just what I needed. Thanks man
Thank you!
thanks a lot :)
thanks! but I have slightly modified your code to avoid of getting 'changed' status every run.
i've used static file with timezone copy: src=timezone
instead of copy: content='America/Los_Angeles'
Just use \n,
- name: Set timezone variables
copy: content='Europe/Moscow\n'
dest=/etc/timezone
owner=root
group=root
mode=0644
backup=yes
TASK: [test | Set timezone variables] **************************************
ok: [0.1.2.3]
For checking current timezone and making this idempotent, just use the ansible_date_time.tz
built-in fact:
- name: Set timezone to UTC
when: ansible_date_time.tz != 'UTC'
command: timedatectl set-timezone UTC
Doesn't work on Ubuntu 16.04 LTS (Xenial Xerus) :( - any workaround?
EDIT: This works: https://bugs.launchpad.net/ubuntu/+source/tzdata/+bug/1554806
This working on Ubuntu 14.04 (managed node), thank you!
@xanview this ansible galaxy role worked for me today on Xenial https://galaxy.ansible.com/adriagalin/timezone/
Awesome, thanks so much.