#72 Improve Network Linux System Role
Closed by siddharthvipul1. Opened by till.

  • Skill level: intermediate
  • Skills required: Python, Ansible
  • Mentor(s): Till Maas, Thomas Haller
  • Contacts (IRC & email): tyll, till q redhat.com / thaller, thaller q redhat.com

  • Idea description:

The Network Linux System Role provides a uniform configuration interface for network-scripts and NetworkManager. In this project, the role would be improved. There are several areas that could be selected by an intern depending on their interest:

  1. Add support for more interfaces/options, this includes the following tasks
    1. Write missing tests/documentation for open PRs to finalize them
    2. Add support for wake-on-lan options: https://github.com/linux-system-roles/network/issues/150
    3. Add proper support for team and make the configuration more uniform with bonding
  2. Improve the testing framework

    1. Write an integration test to become familiar with the role, for example for https://github.com/linux-system-roles/network/issues/124
    2. Make the tests more uniform (they developed over the time. Adjust old tests to use the conventions of newer tests)
    3. Add support to test the ansible module directly via pytest instead of only via ansible-playbook
    4. Simplify test playbooks by writing custom Ansible modules that simplify test setup/preparation and assertions
  3. Network state management (most difficult)

    1. Support to update only partial settings
    2. Return the current network configuration
    3. Initially only the configuration files
    4. Maybe also the runtime state
  4. What are we looking for:

    • Interest in writing high-quality code in Python for Ansible
    • Personal accountability with regular, clear and open communication
    • Ability to independently transfer feedback into code
    • Support for more features or a better test framework
    • Effective collaboration via GitHub, IRC and video conferences
  5. Notes & references:

    • https://github.com/linux-system-roles/network/
    • Current tests: https://github.com/linux-system-roles/network/tree/master/tests

Metadata Update from @sumantrom:
- Issue tagged with: GSoC

Metadata Update from @siddharthvipul1:
- Issue status updated to: Closed (was: Open)

Metadata