apiVersion: apps/v1
kind: DaemonSet
metadata:
  annotations:
    deprecated.daemonset.template.generation: "1"
    meta.helm.sh/release-name: neutron
    meta.helm.sh/release-namespace: openstack
    openstackhelm.openstack.org/release_uuid: ""
  creationTimestamp: "2026-04-14T08:02:39Z"
  generation: 1
  labels:
    app.kubernetes.io/managed-by: Helm
    application: neutron
    component: netns-cleanup-cron
    release_group: neutron
  name: neutron-netns-cleanup-cron-default
  namespace: openstack
  resourceVersion: "17053"
  uid: 439f6805-dc45-480c-8763-a23d7ca747aa
spec:
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      application: neutron
      component: netns-cleanup-cron
      release_group: neutron
  template:
    metadata:
      annotations:
        configmap-bin-hash: 2b3466bd53c256ec73ac8983b6a36c494af1290cb8596398cf00ceb0ba2f4cef
        configmap-etc-hash: 73eb272e9899424c7d9293257befe3aa200d4b85fca7920c480f7c4d8a9b8fd8
        openstackhelm.openstack.org/release_uuid: ""
      creationTimestamp: null
      labels:
        application: neutron
        component: netns-cleanup-cron
        release_group: neutron
    spec:
      containers:
      - command:
        - /tmp/neutron-netns-cleanup-cron.sh
        env:
        - name: OS_IDENTITY_API_VERSION
          value: "3"
        - name: OS_AUTH_URL
          valueFrom:
            secretKeyRef:
              key: OS_AUTH_URL
              name: neutron-keystone-admin
        - name: OS_REGION_NAME
          valueFrom:
            secretKeyRef:
              key: OS_REGION_NAME
              name: neutron-keystone-admin
        - name: OS_INTERFACE
          valueFrom:
            secretKeyRef:
              key: OS_INTERFACE
              name: neutron-keystone-admin
        - name: OS_ENDPOINT_TYPE
          valueFrom:
            secretKeyRef:
              key: OS_INTERFACE
              name: neutron-keystone-admin
        - name: OS_PROJECT_DOMAIN_NAME
          valueFrom:
            secretKeyRef:
              key: OS_PROJECT_DOMAIN_NAME
              name: neutron-keystone-admin
        - name: OS_PROJECT_NAME
          valueFrom:
            secretKeyRef:
              key: OS_PROJECT_NAME
              name: neutron-keystone-admin
        - name: OS_USER_DOMAIN_NAME
          valueFrom:
            secretKeyRef:
              key: OS_USER_DOMAIN_NAME
              name: neutron-keystone-admin
        - name: OS_USERNAME
          valueFrom:
            secretKeyRef:
              key: OS_USERNAME
              name: neutron-keystone-admin
        - name: OS_PASSWORD
          valueFrom:
            secretKeyRef:
              key: OS_PASSWORD
              name: neutron-keystone-admin
        - name: OS_DEFAULT_DOMAIN
          valueFrom:
            secretKeyRef:
              key: OS_DEFAULT_DOMAIN
              name: neutron-keystone-admin
        image: harbor.atmosphere.dev/ghcr.io/vexxhost/neutron:2025.1@sha256:bd4724e2b2b9fa456f63428b44d2fca672638eaa317f6f7ff3489e0a576ee861
        imagePullPolicy: IfNotPresent
        name: neutron-netns-cleanup-cron
        resources: {}
        securityContext:
          privileged: true
          readOnlyRootFilesystem: true
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
        volumeMounts:
        - mountPath: /tmp
          name: pod-tmp
        - mountPath: /tmp/neutron-netns-cleanup-cron.sh
          name: neutron-bin
          readOnly: true
          subPath: neutron-netns-cleanup-cron.sh
        - mountPath: /etc/neutron/neutron.conf
          name: neutron-etc
          readOnly: true
          subPath: neutron.conf
        - mountPath: /etc/neutron/dhcp_agent.ini
          name: neutron-etc
          readOnly: true
          subPath: dhcp_agent.ini
        - mountPath: /etc/neutron/l3_agent.ini
          name: neutron-etc
          readOnly: true
          subPath: l3_agent.ini
        - mountPath: /etc/sudoers.d/kolla_neutron_sudoers
          name: neutron-etc
          readOnly: true
          subPath: neutron_sudoers
        - mountPath: /etc/neutron/rootwrap.conf
          name: neutron-etc
          readOnly: true
          subPath: rootwrap.conf
        - mountPath: /etc/neutron/rootwrap.d/dhcp.filters
          name: neutron-etc
          readOnly: true
          subPath: dhcp.filters
        - mountPath: /etc/neutron/rootwrap.d/netns-cleanup.filters
          name: neutron-etc
          readOnly: true
          subPath: netns-cleanup.filters
        - mountPath: /etc/neutron/rootwrap.d/privsep.filters
          name: neutron-etc
          readOnly: true
          subPath: privsep.filters
        - mountPath: /lib/modules
          name: libmodules
          readOnly: true
        - mountPath: /run/xtables.lock
          name: iptables-lockfile
        - mountPath: /var/lib/neutron/openstack-helm
          name: socket
        - mountPath: /run/netns
          mountPropagation: Bidirectional
          name: host-run-netns
      dnsPolicy: ClusterFirstWithHostNet
      hostNetwork: true
      initContainers:
      - command:
        - kubernetes-entrypoint
        env:
        - name: POD_NAME
          valueFrom:
            fieldRef:
              apiVersion: v1
              fieldPath: metadata.name
        - name: NAMESPACE
          valueFrom:
            fieldRef:
              apiVersion: v1
              fieldPath: metadata.namespace
        - name: INTERFACE_NAME
          value: eth0
        - name: PATH
          value: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/
        - name: DEPENDENCY_SERVICE
        - name: DEPENDENCY_DAEMONSET
        - name: DEPENDENCY_CONTAINER
        - name: DEPENDENCY_POD_JSON
        - name: DEPENDENCY_CUSTOM_RESOURCE
        image: harbor.atmosphere.dev/ghcr.io/vexxhost/kubernetes-entrypoint:edge@sha256:8921b64b87af184a1421dd856b2703bcf3cff9f50863cd0d18371cf964a87bd3
        imagePullPolicy: IfNotPresent
        name: init
        resources: {}
        securityContext:
          allowPrivilegeEscalation: false
          readOnlyRootFilesystem: true
          runAsUser: 65534
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
      nodeSelector:
        openstack-control-plane: enabled
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext:
        runAsUser: 42424
      serviceAccount: neutron-netns-cleanup-cron
      serviceAccountName: neutron-netns-cleanup-cron
      shareProcessNamespace: true
      terminationGracePeriodSeconds: 30
      volumes:
      - emptyDir: {}
        name: pod-tmp
      - emptyDir: {}
        name: pod-var-neutron
      - configMap:
          defaultMode: 365
          name: neutron-bin
        name: neutron-bin
      - name: neutron-etc
        secret:
          defaultMode: 292
          secretName: neutron-netns-cleanup-cron-default
      - hostPath:
          path: /lib/modules
          type: ""
        name: libmodules
      - hostPath:
          path: /run/xtables.lock
          type: FileOrCreate
        name: iptables-lockfile
      - hostPath:
          path: /var/lib/neutron/openstack-helm
          type: ""
        name: socket
      - hostPath:
          path: /run/netns
          type: ""
        name: host-run-netns
  updateStrategy:
    rollingUpdate:
      maxSurge: 0
      maxUnavailable: 1
    type: RollingUpdate
status:
  currentNumberScheduled: 1
  desiredNumberScheduled: 1
  numberAvailable: 1
  numberMisscheduled: 0
  numberReady: 1
  observedGeneration: 1
  updatedNumberScheduled: 1
