Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-65614

unmentioned ovs port is with autoconnect=true in nmstatectl-gc

    • Icon: Bug Bug
    • Resolution: Won't Do
    • Icon: Normal Normal
    • None
    • rhel-9.6
    • nmstate
    • No
    • Moderate
    • rhel-sst-network-management
    • ssg_networking
    • None
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • Hide

      Given an Nmstate configuration file with unspecified OVS ports and OVS bridges set to down,

      When a system administrator runs nmstatectl gc with this configuration,

      Then, the resulting NetworkManager connection files should have autoconnect=false for these OVS ports and the correct interface type should be applied consistently.

      Definition of Done:

      • The implementation meets the acceptance criteria
      • Integration tests are written and pass
      • The code is part of a downstream build attached to an errata
      Show
      Given an Nmstate configuration file with unspecified OVS ports and OVS bridges set to down, When a system administrator runs nmstatectl gc with this configuration, Then, the resulting NetworkManager connection files should have autoconnect=false for these OVS ports and the correct interface type should be applied consistently. Definition of Done: The implementation meets the acceptance criteria Integration tests are written and pass The code is part of a downstream build attached to an errata
    • None
    • None
    • None

      What were you trying to do that didn't work?

      If an ovs port is not mentioned under `interfaces` key AND ovs-bridge.state=down, these ovs ports (*-ovs-if) are with autoconnect=true in nm connection file which generated by `nmstatectl gc`

      Besides, `nmstatectl apply` regards this ovs port as an ovs internal interface (if it didn't exist before), but `nmstatectl gc` assumes it as an ethernet interface. However, in many cases, a user may do want an ethernet interface as ovs system interface, so using type=802-3-ethernet might be also acceptable as nmstate has the message noted that:
      [2024-11-04T02:44:49Z WARN  nmstate::ifaces::inter_ifaces] Assuming undefined port ovsbr1 as ethernet

       

      What is the impact of this issue to you?

      `nmstatectl apply` and `nmstatectl gc` have different results

      Please provide the package NVR for which the bug is seen:

      nmstate-2.2.38-1.el9.x86_64
      NetworkManager-1.51.2-2.el9.x86_64

      How reproducible is this bug?:

      100%

      Steps to reproduce

      Given ovs.yaml:

       

      interfaces:
      - name: ovsbr1
        type: ovs-bridge
        state: down
        bridge:
          port:
          - name: ovsbr1
          - name: ovs1

       

      nmstatectl gc ovs.yaml

      Expected results

      ovs1.nmconnection and ovsbr1.nmconnection should have

      autoconnect=false

      type=ovs-interface # this might be OK as the description above

      Actual results

       

      [2024-11-04T02:44:49Z WARN  nmstate::ifaces::inter_ifaces] Assuming undefined port ovsbr1 as ethernet
      [2024-11-04T02:44:49Z WARN  nmstate::ifaces::inter_ifaces] Assuming undefined port ovs1 as ethernet
      [2024-11-04T02:44:49Z INFO  nmstate::nm::profile] Skipping activation of ovs1 as its controller ovsbr1 desire to be down or absent
      [2024-11-04T02:44:49Z INFO  nmstate::nm::profile] Skipping activation of ovsbr1 as its controller ovsbr1 desire to be down or absent
      NetworkManager:
      - - ovs1.nmconnection
        - |
          [connection]
          autoconnect=true
          autoconnect-slaves=-1
          id=ovs1
          interface-name=ovs1
          master=ovs1
          slave-type=ovs-port
          type=802-3-ethernet
          uuid=4d0389b9-d22d-5f49-a646-4261216cbf54
      - - ovsbr1-br.nmconnection
        - |
          [connection]
          autoconnect=false
          autoconnect-slaves=1
          id=ovsbr1-br
          interface-name=ovsbr1
          type=ovs-bridge
          uuid=a153e231-4f8c-58f1-8dc4-d593ebb224b3
      
          [ipv4]
          dhcp-timeout=2147483647
          method=disabled
      
          [ipv6]
          dhcp-timeout=2147483647
          method=disabled
      
          [ovs-bridge]
      - - ovs1-port.nmconnection
        - |
          [connection]
          autoconnect=false
          autoconnect-slaves=1
          id=ovs1-port
          interface-name=ovs1
          master=ovsbr1
          slave-type=ovs-bridge
          type=ovs-port
          uuid=a0193349-9469-553c-97ac-a1c6708b5c5d
      
          [ovs-port]
      - - ovsbr1-port.nmconnection
        - |
          [connection]
          autoconnect=false
          autoconnect-slaves=1
          id=ovsbr1-port
          interface-name=ovsbr1
          master=ovsbr1
          slave-type=ovs-bridge
          type=ovs-port
          uuid=28cfdc22-021e-5bda-9659-c67478495f97
      
          [ovs-port]
      - - ovsbr1.nmconnection
        - |
          [connection]
          autoconnect=true
          autoconnect-slaves=-1
          id=ovsbr1
          interface-name=ovsbr1
          master=ovsbr1
          slave-type=ovs-port
          type=802-3-ethernet
          uuid=baeecda5-f70a-5918-b7ac-69b3262a0113
      

       

              rh-ee-sfaye Stanislas Faye
              rh-ee-mshi1 Mingyu Shi
              Network Management Team Network Management Team
              Mingyu Shi Mingyu Shi
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

                Created:
                Updated:
                Resolved: