apiVersion: v1
items:
- apiVersion: apps/v1
  kind: Deployment
  metadata:
    annotations:
      deployment.kubernetes.io/revision: "1"
    creationTimestamp: "2026-06-09T13:25:15Z"
    generation: 3
    labels:
      app.kubernetes.io/component: ingress-controller
      app.kubernetes.io/instance: sample-gw
      app.kubernetes.io/managed-by: contour-gateway-provisioner
      app.kubernetes.io/name: contour
      gateway.networking.k8s.io/gateway-name: sample-gw
      projectcontour.io/owning-gateway-name: sample-gw
    name: contour-sample-gw
    namespace: sample
    resourceVersion: "675"
    uid: bf973930-1521-4747-bf20-2da84ffeb74e
  spec:
    progressDeadlineSeconds: 600
    replicas: 2
    revisionHistoryLimit: 10
    selector:
      matchLabels:
        app: contour-sample-gw
    strategy:
      rollingUpdate:
        maxSurge: 50%
        maxUnavailable: 25%
      type: RollingUpdate
    template:
      metadata:
        creationTimestamp: null
        labels:
          app: contour-sample-gw
          app.kubernetes.io/component: ingress-controller
          app.kubernetes.io/instance: sample-gw
          app.kubernetes.io/managed-by: contour-gateway-provisioner
          app.kubernetes.io/name: contour
          gateway.networking.k8s.io/gateway-name: sample-gw
          projectcontour.io/owning-gateway-name: sample-gw
      spec:
        affinity:
          podAntiAffinity:
            preferredDuringSchedulingIgnoredDuringExecution:
            - podAffinityTerm:
                labelSelector:
                  matchLabels:
                    app: contour-sample-gw
                topologyKey: kubernetes.io/hostname
              weight: 100
        containers:
        - args:
          - serve
          - --incluster
          - --xds-address=0.0.0.0
          - --xds-port=8001
          - --contour-cafile=/certs/ca.crt
          - --contour-cert-file=/certs/tls.crt
          - --contour-key-file=/certs/tls.key
          - --contour-config-name=contourconfig-sample-gw
          - --leader-election-resource-name=leader-elect-sample-gw
          - --envoy-service-name=envoy-sample-gw
          - --kubernetes-debug=0
          command:
          - contour
          env:
          - name: CONTOUR_NAMESPACE
            valueFrom:
              fieldRef:
                apiVersion: v1
                fieldPath: metadata.namespace
          - name: POD_NAME
            valueFrom:
              fieldRef:
                apiVersion: v1
                fieldPath: metadata.name
          image: ghcr.io/projectcontour/contour:v1.33.5
          imagePullPolicy: IfNotPresent
          livenessProbe:
            failureThreshold: 3
            httpGet:
              path: /healthz
              port: 8000
              scheme: HTTP
            periodSeconds: 10
            successThreshold: 1
            timeoutSeconds: 1
          name: contour
          ports:
          - containerPort: 8001
            name: xds
            protocol: TCP
          - containerPort: 8000
            name: metrics
            protocol: TCP
          - containerPort: 6060
            name: debug
            protocol: TCP
          readinessProbe:
            failureThreshold: 3
            periodSeconds: 10
            successThreshold: 1
            tcpSocket:
              port: 8001
            timeoutSeconds: 1
          resources: {}
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          volumeMounts:
          - mountPath: /certs
            name: contourcert
            readOnly: true
        dnsPolicy: ClusterFirst
        restartPolicy: Always
        schedulerName: default-scheduler
        securityContext:
          runAsGroup: 65534
          runAsNonRoot: true
          runAsUser: 65534
        serviceAccount: contour-sample-gw
        serviceAccountName: contour-sample-gw
        terminationGracePeriodSeconds: 30
        volumes:
        - name: contourcert
          secret:
            defaultMode: 420
            secretName: contourcert-sample-gw
  status:
    availableReplicas: 2
    conditions:
    - lastTransitionTime: "2026-06-09T13:25:16Z"
      lastUpdateTime: "2026-06-09T13:25:16Z"
      message: Deployment has minimum availability.
      reason: MinimumReplicasAvailable
      status: "True"
      type: Available
    - lastTransitionTime: "2026-06-09T13:25:15Z"
      lastUpdateTime: "2026-06-09T13:25:16Z"
      message: ReplicaSet "contour-sample-gw-7c77855479" has successfully progressed.
      reason: NewReplicaSetAvailable
      status: "True"
      type: Progressing
    observedGeneration: 3
    readyReplicas: 2
    replicas: 2
    updatedReplicas: 2
- apiVersion: apps/v1
  kind: Deployment
  metadata:
    annotations:
      deployment.kubernetes.io/revision: "1"
      meta.helm.sh/release-name: sample
      meta.helm.sh/release-namespace: sample
    creationTimestamp: "2026-06-09T13:25:08Z"
    generation: 1
    labels:
      app: sample
      app.kubernetes.io/component: skywatcher
      app.kubernetes.io/instance: sample
      app.kubernetes.io/managed-by: Helm
      app.kubernetes.io/name: sample-product
      app.kubernetes.io/version: 1.0.0
      helm.sh/chart: sample-product-0.1.0
    name: sample
    namespace: sample
    resourceVersion: "584"
    uid: e3b00d80-125a-4ae5-99ab-46df93b4d108
  spec:
    progressDeadlineSeconds: 600
    replicas: 1
    revisionHistoryLimit: 10
    selector:
      matchLabels:
        app: sample
    strategy:
      rollingUpdate:
        maxSurge: 25%
        maxUnavailable: 25%
      type: RollingUpdate
    template:
      metadata:
        creationTimestamp: null
        labels:
          app: sample
          app.kubernetes.io/component: skywatcher
          app.kubernetes.io/instance: sample
          app.kubernetes.io/managed-by: Helm
          app.kubernetes.io/name: sample-product
          app.kubernetes.io/version: 1.0.0
          helm.sh/chart: sample-product-0.1.0
      spec:
        containers:
        - image: nginx:1.27-alpine
          imagePullPolicy: IfNotPresent
          livenessProbe:
            failureThreshold: 3
            httpGet:
              path: /
              port: 80
              scheme: HTTP
            periodSeconds: 10
            successThreshold: 1
            timeoutSeconds: 1
          name: app
          ports:
          - containerPort: 80
            protocol: TCP
          readinessProbe:
            failureThreshold: 3
            httpGet:
              path: /
              port: 80
              scheme: HTTP
            periodSeconds: 10
            successThreshold: 1
            timeoutSeconds: 1
          resources: {}
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
        dnsPolicy: ClusterFirst
        restartPolicy: Always
        schedulerName: default-scheduler
        securityContext: {}
        terminationGracePeriodSeconds: 30
  status:
    availableReplicas: 1
    conditions:
    - lastTransitionTime: "2026-06-09T13:25:13Z"
      lastUpdateTime: "2026-06-09T13:25:13Z"
      message: Deployment has minimum availability.
      reason: MinimumReplicasAvailable
      status: "True"
      type: Available
    - lastTransitionTime: "2026-06-09T13:25:08Z"
      lastUpdateTime: "2026-06-09T13:25:13Z"
      message: ReplicaSet "sample-7dcd986bd4" has successfully progressed.
      reason: NewReplicaSetAvailable
      status: "True"
      type: Progressing
    observedGeneration: 1
    readyReplicas: 1
    replicas: 1
    updatedReplicas: 1
kind: List
metadata:
  resourceVersion: ""
