Where are you using the rsnap_daily_hour variable? The task you pasted 
doesn't have it included.  

The vars file you included is host specific for 'newhost', if you are 
trying to use those variables in a play involving the backuphost (not a 
delegated_to task), you'll either need to use hostvars or restructure your 
variables in a different manner.

So, using hostvars, accessing rsnap_daily_hour in a play on backuphost 
would be {{ hostvars['newhost']['rsnap_daily_hour'] }}.

If it was me, I'd use group_vars with separate groups for each time slot, 
and then make the backuphost a member of each time slot group.  That may or 
may not scale well, but I try to avoid using hostvars if at all possible. 
I'd change my mind if I was in an environment absolutely destined to remain 
small & stable of course.

Brian

On Wednesday, April 2, 2014 6:29:09 PM UTC-5, Martin Božič wrote:
>
> Hi, 
>
> I want to dynamically every new host to the backup server with rsnapshot. 
> I 
> have no problems putting SSH keys on backup target hosts and putting a 
> template 
> and exclude config for the target host into /etc/rsnapshot.d on backup 
> host. 
>
> The problem is when I try to add the rsnapshot cronjob for the new host. 
> And 
> here's the trick - I'm trying to add different times for each host because 
> I 
> don't want them to all hit the backup disk at the same time. So I figured 
> I 
> could put several cron time vars for each host in host_vars/ directory. 
> Here's 
> an example of what I'm trying to pull-off with cron module: 
>
> FILE: roles/common/backup.yml 
> ----------------------------- 
> - name: weekly rsnapshot cron 
>    cron: name="rsnap {{ ansible_fqdn }} (upravlja Ansible)" 
>         weekday={{ rsnap_weekly_day }} hour={{ rsnap_weekly_hour }} 
>         minute={{ rsnap_weekly_min }} user="root" 
>         job="rsnapshot -c /etc/rsnapshot.d/{{ ansible_fqdn }}.conf weekly" 
>         cron_file="rsnap-{{ ansible_fqdn }}" 
>    delegate_to: backuphost 
>
> FILE: host_vars/newhost 
> -------------------- 
> rsnap_hourly_min: 12 
> rsnap_daily_min: 45 
> rsnap_daily_hour: 1 
> rsnap_weekly_min: 30 
> rsnap_weekly_hour: 21 
> rsnap_weekly_day: 3 
>
> What happens is that backuphost picks up the var of newhost and then cries 
> foul: 
>
>      fatal: [backuphost] => One or more undefined variables: 
> 'rsnap_daily_hour' 
> is undefined 
>
> I'm running out of ideas how I could do it. I've looked into several loops 
> but 
> I'm still a beginner with Ansible and YAML syntax, so if anyone has any 
> idea how 
> this delegation could work I'd really appreciate it! 
>
> Regards, 
> Martin 
>

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to ansible-project+unsubscr...@googlegroups.com.
To post to this group, send email to ansible-project@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/a6e47e28-59ff-428c-9407-e8d38b1fb96e%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to