From Fedora Project Wiki

Revision as of 10:56, 27 March 2023 by Sumantrom (talk | contribs)

Description

This test case ensures that nmstate is working properly for managing network state on a Fedora system.

Setup

Install the pre-release version of Fedora that is to be tested on a bare metal system using the default Anaconda settings (unless it's Fedora CoreOS). Make sure nmstate and its dependencies are installed on the system.

How to test

  • Open a terminal.
  • Execute the command nmstatectl show to display the current network state.
  • Create a new file called eth0.yml with the following content:
interfaces:
- name: eth0
  type: ethernet
  state: up
  ipv4:
    enabled: true
    address:
    - ip: 192.168.1.2
      prefix-length: 24
    dhcp: false
  ipv6:
    enabled: true
    address:
    - ip: 2001:db8::2
      prefix-length: 64
    autoconf: false
    dhcp: false

  • Apply the new network configuration by executing the command nmstatectl apply -f eth0.yml.
  • Execute the command nmstatectl show again to verify that the changes have been applied.
  • Reboot the system by executing the command sudo reboot.
  • After the system has rebooted, log in and open a terminal.
  • Execute the command nmstatectl show to verify that the network configuration has persisted after the reboot.

Expected Results

  • The nmstatectl show command displays the current network state without errors.
  • The eth0.yml file is created successfully.
  • The nmstatectl apply -f eth0.yml command completes without errors.
  • The changes in the network configuration are reflected in the output of the nmstatectl show command.
  • The system reboots successfully.
  • The network configuration persists after the reboot, as shown in the output of the nmstatectl show command.

Optional

Optionally, test different network configurations, such as bonding, bridging, and VLANs, to ensure that nmstate can handle various scenarios. Also, try adding, modifying, and deleting network configurations to test the full range of nmstate capabilities.