summaryrefslogtreecommitdiff
path: root/manifests/base/deployment/argocd-image-updater-deployment.yaml
blob: 842dffb28ead91b25e6127d18984977b93f49bff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app.kubernetes.io/name: argocd-image-updater
    app.kubernetes.io/part-of: argocd-image-updater
    app.kubernetes.io/component: controller
  name: argocd-image-updater
spec:
  selector:
   matchLabels:
    app.kubernetes.io/name: argocd-image-updater
  strategy:
    type: Recreate
  template:
    metadata:
      labels:
        app.kubernetes.io/name: argocd-image-updater
    spec:
      containers:
      - args:
        - run
        image: quay.io/argoprojlabs/argocd-image-updater:latest
        imagePullPolicy: Always
        env:
        - name: APPLICATIONS_API
          valueFrom:
            configMapKeyRef:
              name: argocd-image-updater-config
              key: applications_api
              optional: true
        - name: ARGOCD_GRPC_WEB
          valueFrom:
            configMapKeyRef:
              name: argocd-image-updater-config
              key: argocd.grpc_web
              optional: true
        - name: ARGOCD_SERVER
          valueFrom:
            configMapKeyRef:
              name: argocd-image-updater-config
              key: argocd.server_addr
              optional: true
        - name: ARGOCD_INSECURE
          valueFrom:
            configMapKeyRef:
              name: argocd-image-updater-config
              key: argocd.insecure
              optional: true
        - name: ARGOCD_PLAINTEXT
          valueFrom:
            configMapKeyRef:
              name: argocd-image-updater-config
              key: argocd.plaintext
              optional: true
        - name: ARGOCD_TOKEN
          valueFrom:
            secretKeyRef:
              name: argocd-image-updater-secret
              key: argocd.token
              optional: true
        - name: IMAGE_UPDATER_LOGLEVEL
          valueFrom:
            configMapKeyRef:
              name: argocd-image-updater-config
              key: log.level
              optional: true
        - name: GIT_COMMIT_USER
          valueFrom:
            configMapKeyRef:
              name: argocd-image-updater-config
              key: git.user
              optional: true
        - name: GIT_COMMIT_EMAIL
          valueFrom:
            configMapKeyRef:
              name: argocd-image-updater-config
              key: git.email
              optional: true
        - name: GIT_COMMIT_SIGNING_KEY
          valueFrom:
            configMapKeyRef:
              key: git.commit-signing-key
              name: argocd-image-updater-config
              optional: true
        - name: GIT_COMMIT_SIGNING_METHOD
          valueFrom:
            configMapKeyRef:
              key: git.commit-signing-method
              name: argocd-image-updater-config
              optional: true
        - name: GIT_COMMIT_SIGN_OFF
          valueFrom:
            configMapKeyRef:
              key: git.commit-sign-off
              name: argocd-image-updater-config
              optional: true
        - name: IMAGE_UPDATER_KUBE_EVENTS
          valueFrom:
            configMapKeyRef:
              name: argocd-image-updater-config
              key: kube.events
              optional: true
        - name: ARGOCD_LOGLEVEL
          valueFrom:
            configMapKeyRef:
              name: argocd-image-updater-config
              key: log.level
              optional: true
        livenessProbe:
          httpGet:
            path: /healthz
            port: 8080
          initialDelaySeconds: 3
          periodSeconds: 30
        name: argocd-image-updater
        ports:
        - containerPort: 8080
        readinessProbe:
          httpGet:
            path: /healthz
            port: 8080
          initialDelaySeconds: 3
          periodSeconds: 30
        securityContext:
          allowPrivilegeEscalation: false
          capabilities:
            drop:
            - ALL
          readOnlyRootFilesystem: true
          runAsNonRoot: true
          seccompProfile:
            type: RuntimeDefault
        volumeMounts:
        - mountPath: /app/config
          name: image-updater-conf
        - mountPath: /app/config/ssh
          name: ssh-known-hosts
        - mountPath: /app/.ssh
          name: ssh-config
        - mountPath: /tmp
          name: tmp
        - name: ssh-signing-key
          mountPath: /app/ssh-keys/id_rsa
          readOnly: true
          subPath: sshPrivateKey
      serviceAccountName: argocd-image-updater
      volumes:
      - configMap:
          items:
          - key: registries.conf
            path: registries.conf
          - key: git.commit-message-template
            path: commit.template
          name: argocd-image-updater-config
          optional: true
        name: image-updater-conf
      - configMap:
          name: argocd-ssh-known-hosts-cm
          optional: true
        name: ssh-known-hosts
      - configMap:
          name: argocd-image-updater-ssh-config
          optional: true
        name: ssh-config
      - name: ssh-signing-key
        secret:
          secretName: ssh-git-creds
          optional: true
      - emptyDir: {}
        name: tmp