apiVersion: apps/v1
kind: Deployment
metadata:
  name: slurm-web-agent
  namespace: slurm-web
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app.kubernetes.io/instance: slurm-web-agent
      app.kubernetes.io/name: slurm-web-agent
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      labels:
        app.kubernetes.io/instance: slurm-web-agent
        app.kubernetes.io/name: slurm-web-agent
      namespace: slurm-web
    spec:
      containers:
      - command:
        - slurm-web-agent
        - --conf-defs
        - /data/conf/agent.yml
        - --conf
        - /data/conf/agent.ini
        image: registry.gitlab.com/oceanbox/slurm-web/agent:d512c0c5-debug
        imagePullPolicy: IfNotPresent
        name: slurm-web-agent
        terminationMessagePath: /dev/termination-log
        ports:
        - containerPort: 5012
          name: http
          protocol: TCP
        readinessProbe:
          failureThreshold: 3
          httpGet:
            path: /info
            port: http
            scheme: HTTP
          periodSeconds: 10
          successThreshold: 1
          timeoutSeconds: 1
        terminationMessagePolicy: File
        volumeMounts:
        - mountPath: /data/conf
          name: config
        - mountPath: /data/secrets/key
          subPath: key
          name: jwt
      dnsPolicy: ClusterFirst
      serviceAccountName: slurm-web-agent
      imagePullSecrets:
      - name: gitlab-pull-secret
      restartPolicy: Always
      schedulerName: default-scheduler
      terminationGracePeriodSeconds: 30
      volumes:
      - secret:
          defaultMode: 420
          secretName: jwt
        name: jwt
      - configMap:
          defaultMode: 420
          name: config
        name: config
