Skip to content

Conversation

@asyedham
Copy link

@asyedham asyedham commented Dec 8, 2025

No description provided.

@openshift-ci
Copy link

openshift-ci bot commented Dec 8, 2025

Hi @asyedham. Thanks for your PR.

I'm waiting for a github.com member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@abays
Copy link
Contributor

abays commented Dec 8, 2025

/ok-to-test

Copy link
Contributor

@fultonj fultonj left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use git squash so there is only one commit.

The rest looks mostly fine to me. I compared the before/after with the following diffs.

NNCP gets an Octavia vlan host interface

--- /tmp/nncp.yaml      2025-12-15 15:06:49.808509672 -0500                                                                                                                                                                           
+++ /tmp/oct-nncp.yaml  2025-12-15 15:04:30.063583587 -0500                                                                                                                                                                           
@@ -86,6 +86,24 @@                                                                                                                                                                                                                    
       vlan:                                                                                                                                                                                                                          
         base-iface: ens2f1np1                                                                                                                                                                                                        
         id: "19"                                                                                                                                                                                                                     
+    - description: Octavia vlan host interface                                                                                                                                                                                       
+      name: octavia                                                                                                                                                                                                                  
+      state: up                                                                                                                                                                                                                      
+      type: vlan                                                                                                                                                                                                                     
+      vlan:                                                                                                                                                                                                                          
+        base-iface: ens2f0np0                                                                                                                                                                                                        
+        id: "29"                                                                                                                                                                                                                     
+    - bridge:                                                                                                                                                                                                                        
+        options:                                                                                                                                                                                                                     
+          stp:                                                                                                                                                                                                                       
+            enabled: false                                                                                                                                                                                                           
+        port:                                                                                                                                                                                                                        
+        - name: octavia                                                                                                                                                                                                              
+      description: Octavia bridge                                                                                                                                                                                                    
+      mtu: 1500                                                                                                                                                                                                                      
+      name: octbr
+      state: up
+      type: linux-bridge
   nodeSelector:
     kubernetes.io/hostname: e31-h03-000-r640
     node-role.kubernetes.io/worker: ""
@@ -178,6 +196,24 @@
       vlan:
         base-iface: ens2f1np1
         id: "19"
+    - description: Octavia vlan host interface
+      name: octavia
+      state: up
+      type: vlan
+      vlan:
+        base-iface: ens2f0np0
+        id: "29"
+    - bridge:
+        options:
+          stp:
+            enabled: false
+        port:
+        - name: octavia
+      description: Octavia bridge
+      mtu: 1500
+      name: octbr
+      state: up
+      type: linux-bridge
   nodeSelector:
     kubernetes.io/hostname: e31-h05-000-r640
     node-role.kubernetes.io/worker: ""
@@ -270,6 +306,24 @@
       vlan:
         base-iface: ens2f1np1
         id: "19"
+    - description: Octavia vlan host interface
+      name: octavia
+      state: up
+      type: vlan
+      vlan:
+        base-iface: ens2f0np0
+        id: "29"
+    - bridge:
+        options:
+          stp:
+            enabled: false
+        port:
+        - name: octavia
+      description: Octavia bridge
+      mtu: 1500
+      name: octbr
+      state: up
+      type: linux-bridge
   nodeSelector:
     kubernetes.io/hostname: e31-h06-000-r640
     node-role.kubernetes.io/worker: ""

We get a new secret octavia-ca-passphrase and a new NAD

--- /tmp/networking.yaml        2025-12-15 15:06:56.646652852 -0500
+++ /tmp/oct-networking.yaml    2025-12-15 15:04:40.106793879 -0500
@@ -1,3 +1,12 @@
+apiVersion: v1
+data:
+  server-ca-passphrase: MTIzNDU2Nzg=
+kind: Secret
+metadata:
+  name: octavia-ca-passphrase
+  namespace: openstack
+type: Opaque
+---
 apiVersion: k8s.cni.cncf.io/v1
 kind: NetworkAttachmentDefinition
 metadata:
@@ -67,6 +76,35 @@
       }
     }
 ---
+apiVersion: k8s.cni.cncf.io/v1
+kind: NetworkAttachmentDefinition
+metadata:
+  labels:
+    osp/net: octavia
+    osp/net-attach-def-type: standard
+  name: octavia
+  namespace: openstack
+spec:
+  config: |
+    {
+      "cniVersion": "0.3.1",
+      "name": "octavia",
+      "type": "bridge",
+      "bridge": "octbr",
+      "ipam": {
+        "type": "whereabouts",
+        "range": "172.23.0.0/16",
+        "range_start": "172.23.0.30",
+        "range_end": "172.23.0.70",
+        "routes": [
+          {
+            "dst": "172.24.0.0/16",
+            "gw": "172.23.0.150"
+          }
+        ]
+      }
+    }
+---

Octavia gets enabled and gets some customization.

--- /tmp/control-plane.yaml     2025-12-15 15:07:24.083227341 -0500                                                                                                                                                                   
+++ /tmp/oct-control.yaml       2025-12-15 15:04:57.250152840 -0500                                                                                                                                                                   
@@ -407,15 +407,29 @@                                                                                                                                                                                                                 
         replicas: 3                                                                                                                                                                                                                  
       secret: osp-secret                                                                                                                                                                                                             
   octavia:
-    enabled: false
+    enabled: true
     template:
+      amphoraImageContainerImage: quay.io/gthiemonge/octavia-amphora-image
+      apacheContainerImage: registry.redhat.io/ubi9/httpd-24:latest
       databaseInstance: openstack
       octaviaAPI:
+        customServiceConfig: '# add your customization here'
+        networkAttachments:
+        - internalapi
         preserveJobs: false
         replicas: 1
-      octaviaHealthManager: {}
-      octaviaHousekeeping: {}
-      octaviaWorker: {}
+      octaviaHealthManager:
+        customServiceConfig: '# add your customization here'
+        networkAttachments:
+        - octavia
+      octaviaHousekeeping:
+        customServiceConfig: '# add your customization here'
+        networkAttachments:
+        - octavia
+      octaviaWorker:
+        customServiceConfig: '# add your customization here'
+        networkAttachments:
+        - octavia
       preserveJobs: false
       secret: osp-secret
   ovn:
@@ -427,6 +441,8 @@
           ovn-encap-type: geneve
           system-id: random
         networkAttachment: tenant
+        nicMappings:
+          octavia: octbr
         resources: {}
         tls: {}
       ovnDBCluster:
@@ -528,7 +544,8 @@
         enabled: false
         port: 10514
       metricStorage:
-        enabled: false
+        dataplaneNetwork: ctlplane
+        enabled: true
         monitoringStack:
           alertingEnabled: true
           scrapeInterval: 30s
@@ -538,3 +555,5 @@
               pvcStorageRequest: 10Gi
             retention: 24h
             strategy: persistent
+        networkAttachments:
+        - ctlplane

Is there any example customization you want to pass to Octavia? In the actual deployment for testing are you using anything here yet?

@asyedham
Copy link
Author

Please use git squash so there is only one commit.

The rest looks mostly fine to me. I compared the before/after with the following diffs.

Done

Copy link
Contributor

@abays abays left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

Will defer to @fultonj for final approval.

Copy link
Contributor

@fultonj fultonj left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm
/approve

@openshift-ci
Copy link

openshift-ci bot commented Jan 5, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: asyedham, fultonj

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved label Jan 5, 2026
@softwarefactory-project-zuul
Copy link
Contributor

Build succeeded (gate pipeline).
https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/b4cbbcaa96a1459cac21b222dd086209

✔️ noop SUCCESS in 0s

@softwarefactory-project-zuul softwarefactory-project-zuul bot merged commit 851e915 into openstack-k8s-operators:main Jan 5, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants