Closed Qalthos closed 4 years ago
@samerd commented 2 hours ago
Please welcome @anasbadaha (https://github.com/anasbadaha) a new team member of Mellanox-Onyx His first PR: ansible/ansible#46218 Please review this PR and merge if OK with you
commenting on top of @dagwieers 's comment here
https://github.com/ansible/community/issues/247#issuecomment-426036653
For F5 specific stuff, we have a special token that is generated (and required to be re-used) after we auth with a user/pass. we need to put that token in a Header which we send with future requests. This token needs to be deleted at the "end of the session" too otherwise we'll eventually run out of available tokens.
So right now we establish a connection (non-httpapi) make all our calls with the token, and then delete the token upon success/fail.
We have a couple modules that also check to see if the box is online to begin with. Today this isnt a problem because we handle the connection in the module. If the connection is moved out of the module, then the httpapi connection will need to know how to deal with this. In our case, it's technically equivalent of wait_for and some other custom checks. I imagine this would be a little ugly to bake into the httpapi (or equivalent) code.
Finally, we have several modules that reboot the device and wait for it to come back online. This rebooting invalidates the token as well. We would need to be able to mimic this in httpapi (or equivalent).
I have started a new Wiki page to share requirements from each of the potential httpapi shareholders. https://github.com/ansible/community/wiki/Plugin:-httpapi
Feel free to add more information there.
@caphrim007
For F5 specific stuff, we have a special token that is generated (and required to be re-used) after we auth with a user/pass. we need to put that token in a Header which we send with future requests. This token needs to be deleted at the "end of the session" too otherwise we'll eventually run out of available tokens.
That's pretty standard. In an httpapi plugin, you can set self.connection._auth
to a dictionary that gets merged with headers on every call. This would presumably get set in login()
and cleared in logout()
, which do what they sound like. logout()
is also helpfully called during close()
, so connection shutdown will clear your token for you (as will meta: reset_connection
).
We have a couple modules that also check to see if the box is online to begin with.
This is one I haven't given a whole lot of thought to. I'm not entirely sure what this means, to be honest. I'm not really sure what this needs that until: "'stdout' in result"
(or, more probably, some better test) doesn't give you.
Finally, we have several modules that reboot the device and wait for it to come back online. This rebooting invalidates the token as well. We would need to be able to mimic this in httpapi (or equivalent).
meta: reset_connection
should be able to do just this. For persistent connections, it calls the connection's close()
(which, as above, calls your httpapi plugin's logout()
method).
Additionally, (and especially as a lot of the above points were requested by them), if you want to see how someone who is not me wrote an httpapi plugin to work with something that does not look anything like NX-API/eAPI (read: REST), take a look at plugins/httpapi/ftd.py. If you want to know what is expected of an httpapi plugin, the interface is described in plugins/httpapi/__init__.py, and if something still doesn't seem clear, bring it up and I'll be happy to talk about how to make it better.
@dagwieers I think this covers most of your needs as well. The major sticking point I know you still have is cluster support, and I haven't the faintest idea how to make that work in a way that doesn't ruin all the niceties that making connections look like real connection plugins. My only idea is to add a failover_hosts
option to your httpapi plugin that subs out the connection's _url
, but I have no idea how much trouble trying to do something like that might cause.
Proposal: Interface manager role https://github.com/ansible-network/network-proposals/issues/1
The interface manager role provides a platform agnostic implementation to declaratively manage the aggregate set of network interfaces on a remote device. This role is designed to effectively replace the net_interface
module that is currently part of Ansible core.
Proposal: VRF definitions role https://github.com/ansible-network/network-proposals/issues/3
This proposal describe the implementation of a new resource role for managing VRF definitions in network device active configurations. This role would replace the current net_vrf agnostic module that currently resides in Ansible core.
Proposal: VLANs role https://github.com/ansible-network/network-proposals/issues/2
This proposal describes the implementation of a VLANs role to replace the current platform agnostic implementation ofnet_vlan currently in Ansible core.
Please review and merge PR ansible/ansible#46623
Thanks & Regards -Anil
Minutes: https://meetbot.fedoraproject.org/ansible-network/2018-10-10/ansible_network_working_group.2018-10-10-16.00.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2018-10-10/ansible_network_working_group.2018-10-10-16.00.txt Log: https://meetbot.fedoraproject.org/ansible-network/2018-10-10/ansible_network_working_group.2018-10-10-16.00.log.html
Can we discuss this please on 10/17- https://github.com/ansible/ansible/issues/46185
Minutes: https://meetbot.fedoraproject.org/ansible-network/2018-10-17/ansible_network_working_group.2018-10-17-16.02.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2018-10-17/ansible_network_working_group.2018-10-17-16.02.txt Log: https://meetbot.fedoraproject.org/ansible-network/2018-10-17/ansible_network_working_group.2018-10-17-16.02.log.html
Hi, I'm a new member in Mellanox onyx team. please review and merge the following PRs: ansible/ansible#46494 ansible/ansible#46500 ansible/ansible#47027 ansible/ansible#47489 ansible/ansible#47501 ansible/ansible#47552 ansible/ansible#47554
Best Regards, Anas Badaha
Minutes: https://meetbot.fedoraproject.org/ansible-network/2018-10-24/ansible_network_working_group.2018-10-24-16.03.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2018-10-24/ansible_network_working_group.2018-10-24-16.03.txt Log: https://meetbot.fedoraproject.org/ansible-network/2018-10-24/ansible_network_working_group.2018-10-24-16.03.log.html
Minutes: https://meetbot.fedoraproject.org/ansible-network/2018-10-31/ansible_network_working_group.2018-10-31-15.57.html 10:29 PM Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2018-10-31/ansible_network_working_group.2018-10-31-15.57.txt Log: https://meetbot.fedoraproject.org/ansible-network/2018-10-31/ansible_network_working_group.2018-10-31-15.57.log.html
Need the following PR Merged:
Minutes: https://meetbot.fedoraproject.org/ansible-network/2018-11-14/ansible_network_working_group.2018-11-14-16.00.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2018-11-14/ansible_network_working_group.2018-11-14-16.00.txt Log: https://meetbot.fedoraproject.org/ansible-network/2018-11-14/ansible_network_working_group.2018-11-14-16.00.log.html
Need the following PR Merged: ansible/ansible#48924 - MERGED ansible/ansible#48154 - MERGED
Minutes: https://meetbot.fedoraproject.org/ansible-network/2018-11-28/ansible_network_working_group.2018-11-28-16.06.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2018-11-28/ansible_network_working_group.2018-11-28-16.06.txt Log: https://meetbot.fedoraproject.org/ansible-network/2018-11-28/ansible_network_working_group.2018-11-28-16.06.log.html
Please merge
ansible/ansible#49467 Merged
Please cherry-pick the following bug fix PR's into stable2.7
https://github.com/ansible/ansible/pull/49479 https://github.com/ansible/ansible/pull/49454 https://github.com/ansible/ansible/pull/49314 https://github.com/ansible/ansible/pull/49205 https://github.com/ansible/ansible/pull/49150 https://github.com/ansible/ansible/pull/48811 https://github.com/ansible/ansible/pull/47694
Action items @pabelanger review backport request from mikewiebe: https://github.com/ansible/community/issues/363#issuecomment-444546695
-- Minutes: https://meetbot.fedoraproject.org/ansible-network/2018-12-05/ansible_network_working_group.2018-12-05-16.01.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2018-12-05/ansible_network_working_group.2018-12-05-16.01.txt Log: https://meetbot.fedoraproject.org/ansible-network/2018-12-05/ansible_network_working_group.2018-12-05-16.01.log.html
Minutes: https://meetbot.fedoraproject.org/ansible-network/2018-12-12/ansible_network_working_group.2018-12-12-16.01.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2018-12-12/ansible_network_working_group.2018-12-12-16.01.txt Log: https://meetbot.fedoraproject.org/ansible-network/2018-12-12/ansible_network_working_group.2018-12-12-16.01.log.html
Please merge PR
ansible/ansible#49927 Merged
ansible/ansible#50145
New IOS NTP module.
- ios_ntp:
server: 8.8.9.9
source_int: Loopback0
acl: NTP_ACL
logging: true
key_id: 10
auth_key: 15435A030726242723273C21181319000A
auth: true
state: absent
provider: "{{ staging }}"
Minutes: https://meetbot.fedoraproject.org/ansible-network/2018-12-19/ansible_network_working_group.2018-12-19-16.00.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2018-12-19/ansible_network_working_group.2018-12-19-16.00.txt Log: https://meetbot.fedoraproject.org/ansible-network/2018-12-19/ansible_network_working_group.2018-12-19-16.00.log.html
Please merge PR ~ansible/ansible#50145 - Review comments Done~ Merged ~ansible/ansible#50641 - New Module~ Merged
Minutes: https://meetbot.fedoraproject.org/ansible-network/2019-01-16/ansible_network_working_group.2019-01-16-15.59.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2019-01-16/ansible_network_working_group.2019-01-16-15.59.txt Log: https://meetbot.fedoraproject.org/ansible-network/2019-01-16/ansible_network_working_group.2019-01-16-15.59.log.html
@Qalthos Which nxos_install_os timeout fix in the 2019-01-16
update are you referring to? Sorry, was not able to attend the meeting.
@Qalthos Which nxos_install_os timeout fix in the
2019-01-16
update are you referring to? Sorry, was not able to attend the meeting.
Minutes: https://meetbot.fedoraproject.org/ansible-network/2019-01-23/ansible_network_working_group.2019-01-23-16.00.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2019-01-23/ansible_network_working_group.2019-01-23-16.00.txt Log: https://meetbot.fedoraproject.org/ansible-network/2019-01-23/ansible_network_working_group.2019-01-23-16.00.log.html
Please merge PR
ansible/ansible#51322 Merged
https://github.com/ansible/ansible/pull/50705 Add the changes required. Need review before merge.
Merged
Minutes: https://meetbot.fedoraproject.org/ansible-network/2019-01-30/ansible_network_working_group.2019-01-30-15.59.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2019-01-30/ansible_network_working_group.2019-01-30-15.59.txt Log: https://meetbot.fedoraproject.org/ansible-network/2019-01-30/ansible_network_working_group.2019-01-30-15.59.log.html
Minutes: https://meetbot.fedoraproject.org/ansible-network/2019-02-06/ansible_network_working_group.2019-02-06-16.00.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2019-02-06/ansible_network_working_group.2019-02-06-16.00.txt Log: https://meetbot.fedoraproject.org/ansible-network/2019-02-06/ansible_network_working_group.2019-02-06-16.00.log.html
Minutes: https://meetbot.fedoraproject.org/ansible-network/2019-02-13/ansible_network_working_group.2019-02-13-16.00.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2019-02-13/ansible_network_working_group.2019-02-13-16.00.txt Log: https://meetbot.fedoraproject.org/ansible-network/2019-02-13/ansible_network_working_group.2019-02-13-16.00.log.html
Please review. ansible/ansible#43996 ansible/ansible#43861
Please review and merge
ansible/ansible#52568 Merged
Minutes: https://meetbot.fedoraproject.org/ansible-network/2019-02-20/ansible_network_working_group.2019-02-20-15.59.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2019-02-20/ansible_network_working_group.2019-02-20-15.59.txt Log: https://meetbot.fedoraproject.org/ansible-network/2019-02-20/ansible_network_working_group.2019-02-20-15.59.log.html
https://github.com/ansible/ansible/pull/52925
New ASA module for object-group keeping:
---
vars:
config_list:
- range 56832 56959
- range 61363 65185
- name: configure UDP object-group service with port-object
asa_og:
name: service_object_test
group_type: port-object
protocol: udp
lines: "{{ item }}"
provider: "{{ fws }}"
register: result
loop:
- "{{ config_list }}"
Please review and merge
ansible/ansible#52978 Merged
Please review:
Please review ansible/ansible#51238
Minutes: https://meetbot.fedoraproject.org/ansible-network/2019-02-27/ansible_network_working_group.2019-02-27-16.00.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2019-02-27/ansible_network_working_group.2019-02-27-16.00.txt Log: https://meetbot.fedoraproject.org/ansible-network/2019-02-27/ansible_network_working_group.2019-02-27-16.00.log.html
Please review and merge
ansible/ansible#53267 Merged
Please review and merge
https://github.com/ansible/ansible/pull/52661 Merged
Minutes: https://meetbot.fedoraproject.org/ansible-network/2019-03-06/ansible_network_working_group.2019-03-06-16.03.html Minutes (text): https://meetbot.fedoraproject.org/ansible-network/2019-03-06/ansible_network_working_group.2019-03-06-16.03.txt Log: https://meetbot.fedoraproject.org/ansible-network/2019-03-06/ansible_network_working_group.2019-03-06-16.03.log.html
Please review and merge
ansible/ansible#53736 Merged
ansible/ansible#53764 Merged
Please leave a comment regarding any agenda item you wish to discuss. If you don't show up for the meeting, your item will be skipped.
If your IRC nick is different from your Github username, leave that as well.
See https://github.com/ansible/community/tree/master/group-network for the schedule
All Core Networking issues (most recently updated at the top): https://github.com/ansible/ansible/issues?q=is%3Aopen+label%3Anetworking+-label%3Aneeds_revision+sort%3Aupdated-desc
Network Working Group: https://github.com/ansible/community/tree/master/group-network
ansible-network on Freenode IRC