apiVersion: apps/v1
kind: Deployment
metadata:
  annotations:
    deployment.kubernetes.io/revision: "1"
  creationTimestamp: "2026-04-06T12:19:33Z"
  generation: 1
  labels:
    component: swift-proxy
    service: swift
  name: swift-proxy
  namespace: openstack
  ownerReferences:
  - apiVersion: swift.openstack.org/v1beta1
    blockOwnerDeletion: true
    controller: true
    kind: SwiftProxy
    name: swift-proxy
    uid: 18589a76-ca97-49ce-b49d-3a7ebb62c4be
  resourceVersion: "49159"
  uid: bd985d3d-b676-41e5-9327-a15a540d569a
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      component: swift-proxy
      service: swift
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      annotations:
        k8s.v1.cni.cncf.io/networks: '[{"name":"storage","namespace":"openstack","interface":"storage"}]'
      creationTimestamp: null
      labels:
        component: swift-proxy
        service: swift
    spec:
      affinity:
        podAntiAffinity:
          preferredDuringSchedulingIgnoredDuringExecution:
          - podAffinityTerm:
              labelSelector:
                matchExpressions:
                - key: component
                  operator: In
                  values:
                  - swift-proxy
              topologyKey: kubernetes.io/hostname
            weight: 100
      containers:
      - args:
        - -DFOREGROUND
        command:
        - /usr/sbin/httpd
        env:
        - name: CONFIG_HASH
          value: nfdh58bh54ch6fh588h5d8hdhf6h9dh544hdfh576h5f9h5fch59bh666h68fh59ch5fbhc5h5bh576h648h56h5c4h695h5c7h644h578h684hfch549q
        image: 38.102.83.94:5001/podified-master-centos10/openstack-swift-proxy-server:watcher_latest
        imagePullPolicy: IfNotPresent
        livenessProbe:
          failureThreshold: 3
          httpGet:
            path: /healthcheck
            port: 8080
            scheme: HTTPS
          initialDelaySeconds: 5
          periodSeconds: 3
          successThreshold: 1
          timeoutSeconds: 5
        name: proxy-httpd
        ports:
        - containerPort: 8080
          name: proxy-httpd
          protocol: TCP
        readinessProbe:
          failureThreshold: 3
          httpGet:
            path: /healthcheck
            port: 8080
            scheme: HTTPS
          initialDelaySeconds: 5
          periodSeconds: 5
          successThreshold: 1
          timeoutSeconds: 5
        resources: {}
        securityContext:
          allowPrivilegeEscalation: false
          capabilities:
            drop:
            - ALL
          runAsNonRoot: true
          runAsUser: 42445
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: FallbackToLogsOnError
        volumeMounts:
        - mountPath: /etc/swift
          name: etc-swift
        - mountPath: /etc/httpd/conf/httpd.conf
          name: config-data
          readOnly: true
          subPath: httpd.conf
        - mountPath: /etc/httpd/conf.d/ssl.conf
          name: config-data
          readOnly: true
          subPath: ssl.conf
        - mountPath: /run/httpd
          name: run-httpd
        - mountPath: /var/log/httpd
          name: log-httpd
        - mountPath: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
          name: combined-ca-bundle
          readOnly: true
          subPath: tls-ca-bundle.pem
        - mountPath: /etc/pki/tls/certs/internal.crt
          name: internal-tls-certs
          readOnly: true
          subPath: tls.crt
        - mountPath: /etc/pki/tls/private/internal.key
          name: internal-tls-certs
          readOnly: true
          subPath: tls.key
        - mountPath: /etc/pki/tls/certs/public.crt
          name: public-tls-certs
          readOnly: true
          subPath: tls.crt
        - mountPath: /etc/pki/tls/private/public.key
          name: public-tls-certs
          readOnly: true
          subPath: tls.key
      - command:
        - /usr/bin/swift-proxy-server
        - /etc/swift/proxy-server.conf.d
        - -v
        env:
        - name: CONFIG_HASH
          value: nfdh58bh54ch6fh588h5d8hdhf6h9dh544hdfh576h5f9h5fch59bh666h68fh59ch5fbhc5h5bh576h648h56h5c4h695h5c7h644h578h684hfch549q
        image: 38.102.83.94:5001/podified-master-centos10/openstack-swift-proxy-server:watcher_latest
        imagePullPolicy: IfNotPresent
        livenessProbe:
          failureThreshold: 3
          httpGet:
            path: /healthcheck
            port: 8080
            scheme: HTTPS
          initialDelaySeconds: 5
          periodSeconds: 3
          successThreshold: 1
          timeoutSeconds: 5
        name: proxy-server
        ports:
        - containerPort: 8081
          name: proxy-server
          protocol: TCP
        readinessProbe:
          failureThreshold: 3
          httpGet:
            path: /healthcheck
            port: 8080
            scheme: HTTPS
          initialDelaySeconds: 5
          periodSeconds: 5
          successThreshold: 1
          timeoutSeconds: 5
        resources: {}
        securityContext:
          allowPrivilegeEscalation: false
          capabilities:
            drop:
            - ALL
          runAsNonRoot: true
          runAsUser: 42445
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
        volumeMounts:
        - mountPath: /etc/swift
          name: etc-swift
        - mountPath: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
          name: combined-ca-bundle
          readOnly: true
          subPath: tls-ca-bundle.pem
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext:
        fsGroup: 42445
        runAsNonRoot: true
        seccompProfile:
          type: RuntimeDefault
      serviceAccount: swift-swift
      serviceAccountName: swift-swift
      terminationGracePeriodSeconds: 30
      volumes:
      - name: config-data
        secret:
          defaultMode: 420
          secretName: swift-proxy-config-data
      - name: etc-swift
        projected:
          defaultMode: 420
          sources:
          - secret:
              items:
              - key: 00-proxy-server.conf
                path: proxy-server.conf.d/00-proxy-server.conf
              - key: 01-proxy-server.conf
                path: proxy-server.conf.d/01-proxy-server.conf
              - key: dispersion.conf
                path: dispersion.conf
              - key: keymaster.conf
                path: keymaster.conf
              name: swift-proxy-config-data
          - secret:
              name: swift-conf
          - configMap:
              name: swift-ring-files
      - emptyDir: {}
        name: run-httpd
      - emptyDir: {}
        name: log-httpd
      - name: combined-ca-bundle
        secret:
          defaultMode: 292
          secretName: combined-ca-bundle
      - name: internal-tls-certs
        secret:
          defaultMode: 256
          secretName: cert-swift-internal-svc
      - name: public-tls-certs
        secret:
          defaultMode: 256
          secretName: cert-swift-public-svc
status:
  availableReplicas: 1
  conditions:
  - lastTransitionTime: "2026-04-06T12:19:48Z"
    lastUpdateTime: "2026-04-06T12:19:48Z"
    message: Deployment has minimum availability.
    reason: MinimumReplicasAvailable
    status: "True"
    type: Available
  - lastTransitionTime: "2026-04-06T12:19:33Z"
    lastUpdateTime: "2026-04-06T12:19:48Z"
    message: ReplicaSet "swift-proxy-7695db8cdc" has successfully progressed.
    reason: NewReplicaSetAvailable
    status: "True"
    type: Progressing
  observedGeneration: 1
  readyReplicas: 1
  replicas: 1
  updatedReplicas: 1
