apiVersion: apps/v1
kind: Deployment
metadata:
  name: gcsweb
  namespace: gcsweb
  labels:
    app: gcsweb
spec:
  replicas: 2
  selector:
    matchLabels:
      app: gcsweb
  strategy:
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 1
    type: RollingUpdate
  template:
    metadata:
      labels:
        app: gcsweb
    spec:
      terminationGracePeriodSeconds: 30
      containers:
        - name: gcsweb
          image: registry.k8s.io/gcsweb:v1.1.0
          args:
            - -upgrade-proxied-http-to-https
            # buckets owned by kubernetes.io
            - -b=k8s-infra-scalability-tests-logs
            - -b=k8s-release-dev
            - -b=kubernetes-ci-logs
            # buckets owned by vendors publishing to testgrid that don't have gcsweb deployed
            - -b=ppc64le-kubernetes
            # buckets owned by google.com
            - -b=kubernetes-jenkins
            - -b=kubernetes-release
            - -b=sig-scalability-logs
            - -p=8080
          ports:
            - containerPort: 8080
              protocol: TCP
          resources:
            limits:
              cpu: 0.1
              memory: 128Mi
          livenessProbe:
            httpGet:
              path: /healthz
              port: 8080
            initialDelaySeconds: 3
            timeoutSeconds: 2
            failureThreshold: 2
          readinessProbe:
            httpGet:
              path: /healthz
              port: 8080
            initialDelaySeconds: 3
            timeoutSeconds: 2
            failureThreshold: 2
