Rishi,

Let's assume you have an inventory group called  "datacenter" that holds 
all of your datacenter machines and an inventory group named "inhouse" that 
holds all of your in-house machines.

You would then have a group_var file called  "inventory/group_var/inhouse" 
that would contain:

url: http://my.internal.company.com


And also  have a a group_var file called  "inventory/group_var/datacenter" 
that would contain:

url: http://my.datacenter.company.com


your tasks would look something like:

- name: get tmy file
  get_url: {{ url }}/foo.pkg dest=/tmp/foo.pkg



When your run your playbook in-house, it's going to use the internal url 
based on the machine's membership to the inhouse group.  When the physical 
machines have moved from in-house to datacenter, also change their 
inventory group membership.  The playbook will now use the datacenter url 
based on the machine's membership to the datacenter group.


- James

On Wednesday, October 15, 2014 11:07:09 AM UTC-4, Rishi wrote:
>
> I perform a couple steps during server provisioning in-house prior to 
> sending out to a data center. We have most installers/packages available on 
> some internal http servers to speed up retrieving them, I would like to 
> keep the same playbook but change the url to retrieve installers from 
> during the run based on current network.
>
> Any one have any clever ways to alter the url in a "get_url" command to 
> choose the local network if on local network else use an external internet 
> address?
>
> i.e.
> if ansible_ssh_host is in 192.168.0.0/16 do foo else do bar.
>

-- 
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/146c0343-f181-45e5-ade1-e0385486ec31%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to