Skip to content
This repository has been archived by the owner on Jun 10, 2024. It is now read-only.

Network:Core roadmap 2.5

Chris Alfonso edited this page Oct 23, 2017 · 27 revisions

Status: DRAFT

This is an uncommitted roadmap for 2.5

Feedback welcome in #ansible-network

Follow the our progress

GitHub Project

Stability and making future development easier

TBD

Convert existing non-DI NXOS modules into DI (declarative intent)

  • nxos_interface
  • nxos_portchannel --> nxos_linkagg
  • nxos_lldp_interface
  • nxos_switchport --> nxos_l2_interface
  • nxos_vlan
  • nxos_ip_interface --> nxos_l3_interface
  • nxos_vrf
  • nxos_lldp
  • nxos_static_route
  • nxos_user

network common libraries

FIXME define what directories are for, i.e. is module_utils/network only for network code that's common across all platforms?

  • Refactor shared network libraries to module_utils/network package
  • Refactor netcfg --> network/config.py
  • Refactor network_common --> network/common.py
  • Remove network.py
  • Refactor netcli --> network/??? (perhaps remove, needs eval)

TBD: What if anything do partners need to do with there code?

Common library for Declarative Intent (DI)

TBD

Network connection plugin work

  • REQ: make network_cli first class connection (eq connection=network_cli)
  • REQ: make netconf first class connection (eq connection=netconf)
  • REQ: improve error handling / feedback to user (unable to open shell)
  • REQ: maintain backwards compatibility with connection=local
  • REQ: logging and instrumentation improvements
  • OPT: make API (nxapi, eapi) first class connection

common platform libraries to CliConf plugin

  • Refactor: module_utils/eos.py
  • Refactor: module_utils/ios.py
  • Refactor: module_utils/iosxr.py
  • Refactor: module_utils/nxos.py
  • Refactor: module_utils/vyos.py
  • Refactor: module_utils/junos.py

common platform libraries to NetConf plugin

  • Refactor: module_utils/junos.py
  • New: module_utils/iosxr.py
  • New: module_utils/ios.py (stretch)

New Feature: Connection Session Tracking

  • Log commands send and responses received over network_cli connection
  • Log XML documents send and responses received
  • Use vault to encrypt logging
  • Add Ansible CLI flags to enable / disable session tracing

Documentation: Use Cases

New documentation section for samples

(ARchived) Working groups

Working groups are now in the Ansible forum

Ansible project:
Community, Contributor Experience, Docs, News, Outreach, RelEng, Testing

Cloud:
AWS, Azure, CloudStack, Container, DigitalOcean, Docker, hcloud, Kubernetes, Linode, OpenStack, oVirt, Virt, VMware

Networking:
ACI, AVI, F5, Meraki, Network, NXOS

Ansible Developer Tools:
Ansible-developer-tools

Software:
Crypto, Foreman, GDrive, GitLab, Grafana, IPA, JBoss, MongoDB, MySQL, PostgreSQL, RabbitMQ, Zabbix

System:
AIX, BSD, HP-UX, macOS, Remote Management, Solaris, Windows

Security:
Security-Automation, Lockdown

Tooling:
AWX, Galaxy, Molecule

Communities

Modules:
unarchive, xml

Plugins:
httpapi

Wiki

Roles, Communication, Reviewing, Checklist, TODO

Clone this wiki locally