github.com/zppinho/prow@v0.0.0-20240510014325-1738badeb017/test/integration/config/prow/cluster/deck_deployment.yaml (about)

     1  # Copyright 2021 The Kubernetes Authors All rights reserved.
     2  #
     3  # Licensed under the Apache License, Version 2.0 (the "License");
     4  # you may not use this file except in compliance with the License.
     5  # You may obtain a copy of the License at
     6  #
     7  #     http://www.apache.org/licenses/LICENSE-2.0
     8  #
     9  # Unless required by applicable law or agreed to in writing, software
    10  # distributed under the License is distributed on an "AS IS" BASIS,
    11  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  # See the License for the specific language governing permissions and
    13  # limitations under the License.
    14  
    15  apiVersion: apps/v1
    16  kind: Deployment
    17  metadata:
    18    namespace: default
    19    name: deck
    20    labels:
    21      app: deck
    22  spec:
    23    replicas: 1
    24    strategy:
    25      type: RollingUpdate
    26      rollingUpdate:
    27        maxSurge: 1
    28        maxUnavailable: 1
    29    selector:
    30      matchLabels:
    31        app: deck
    32    template:
    33      metadata:
    34        labels:
    35          app: deck
    36      spec:
    37        serviceAccountName: deck
    38        terminationGracePeriodSeconds: 30
    39        containers:
    40        - name: deck
    41          image: localhost:5001/deck
    42          imagePullPolicy: Always
    43          ports:
    44            - name: http
    45              containerPort: 8080
    46          args:
    47          - --tide-url=http://tide/
    48          - --hook-url=http://hook:8888/plugin-help
    49          - --config-path=/etc/config/config.yaml
    50          - --job-config-path=/etc/job-config
    51          - --spyglass=true
    52          - --allow-insecure
    53          - --rerun-creates-job
    54          - --github-token-path=/etc/github/oauth
    55          - --github-endpoint=http://fakeghserver
    56          - --github-oauth-config-file=/etc/githuboauth/secret
    57          - --plugin-config=/etc/plugins/plugins.yaml
    58          env:
    59          # Use KUBECONFIG envvar rather than --kubeconfig flag in order to provide multiple configs to merge.
    60          - name: KUBECONFIG
    61            value: "/etc/kubeconfig/config"
    62          volumeMounts:
    63          - name: oauth-config
    64            mountPath: /etc/githuboauth
    65            readOnly: true
    66          - name: cookie-secret
    67            mountPath: /etc/cookie
    68            readOnly: true
    69          - mountPath: /etc/kubeconfig
    70            name: kubeconfig
    71            readOnly: true
    72          - name: config
    73            mountPath: /etc/config
    74            readOnly: true
    75          - name: job-config
    76            mountPath: /etc/job-config
    77            readOnly: true
    78          - name: oauth-token
    79            mountPath: /etc/github
    80            readOnly: true
    81          - name: plugins
    82            mountPath: /etc/plugins
    83            readOnly: true
    84          livenessProbe:
    85            httpGet:
    86              path: /healthz
    87              port: 8081
    88            initialDelaySeconds: 3
    89            periodSeconds: 3
    90          readinessProbe:
    91            httpGet:
    92              path: /healthz/ready
    93              port: 8081
    94            initialDelaySeconds: 10
    95            periodSeconds: 3
    96            timeoutSeconds: 600
    97        volumes:
    98        - name: oauth-config
    99          secret:
   100            secretName: github-oauth-config
   101        - name: oauth-token
   102          secret:
   103            secretName: oauth-token
   104        - name: cookie-secret
   105          secret:
   106            secretName: cookie
   107        - name: kubeconfig
   108          secret:
   109            defaultMode: 420
   110            secretName: kubeconfig
   111        - name: config
   112          configMap:
   113            name: config
   114        - name: job-config
   115          configMap:
   116            name: job-config
   117        - name: plugins
   118          configMap:
   119            name: plugins