On Sun, 24 May 2020 20:31:12 -0700 (PDT)
Andrew Morgan <
alonso...@gmail.com> wrote:
> > > 1) get the mac address
> > > 2) get the subnet
> > >
> > > ---
> > > - hosts: dev
> > > become: true
> > > #connection: local
> > > gather_facts: true
> > Run the command below a see what "facts" are available when "gather_facts:
> > true" is enabled.
> > shell> ansible dev -m setup
> This is the output:
>
> fatal: [deVPN]: FAILED! => changed=true
> cmd: |-
> ansible dev -m setup
> delta: '0:00:00.033604'
> end: '2020-05-24 23:29:51.883830'
> msg: non-zero return code
> rc: 127
> start: '2020-05-24 23:29:51.850226'
> stderr: '/bin/bash: ansible: command not found'
> stderr_lines: <omitted>
> stdout: ''
> stdout_lines: <omitted>
This is a misunderstanding. Do not run the command with ansible-playbook as
"shell" task on the remote host!
The "command" shall be run from the command-line on controller. The output
will show all facts collected by the module "setup" on the remote host. The
same facts will be collected automatically by a playbook when not disabled by
"gather_facts: false". See
https://docs.ansible.com/ansible/latest/modules/setup_module.html#examples
shell> ansible dev -m setup
Find the variables that fit your purpose. For example
shell> cat playbook.yml
- hosts: dev
tasks:
- debug:
var: ansible_default_ipv4
- debug:
msg: "MAC: {{ ansible_default_ipv4.macaddress }}"
- debug:
msg: "Network: {{ ansible_default_ipv4.network }}"
shell> ansible-playbook playbook.yml
HTH,
-vlado