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 [email protected].
To post to this group, send email to [email protected].
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