--- # Source: s3sync-service/templates/serviceaccount.yaml apiVersion: v1 kind: ServiceAccount metadata: name: s3sync-service namespace: tools --- # Source: s3sync-service/templates/configmap.yaml apiVersion: v1 kind: ConfigMap metadata: labels: app: s3sync-service name: s3sync-service namespace: tools data: config.yml: |- aws_region: us-east-1 loglevel: info upload_queue_buffer: 0 upload_workers: 10 checksum_workers: 5 watch_interval: 1s s3_ops_retries: 5 sites: {} --- # Source: s3sync-service/templates/clusterrole.yaml apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: s3sync-service rules: - apiGroups: - "" resources: - configmaps verbs: - get - list - watch --- # Source: s3sync-service/templates/clusterrolebinding.yaml apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: s3sync-service roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: s3sync-service subjects: - kind: ServiceAccount name: s3sync-service namespace: tools --- # Source: s3sync-service/templates/role.yaml apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: s3sync-service namespace: tools rules: - apiGroups: - "" resources: - configmaps resourceNames: - "s3sync-service" verbs: - get - watch --- # Source: s3sync-service/templates/rolebinding.yaml apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: s3sync-service namespace: tools roleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: s3sync-service subjects: - kind: ServiceAccount name: s3sync-service namespace: tools --- # Source: s3sync-service/templates/deployment.yaml apiVersion: apps/v1 kind: Deployment metadata: name: s3sync-service namespace: tools spec: replicas: 1 selector: matchLabels: app: s3sync-service template: metadata: labels: app: s3sync-service annotations: prometheus.io/path: "/metrics" prometheus.io/port: "9350" prometheus.io/scrape: "true" spec: serviceAccountName: s3sync-service containers: - name: s3sync-service image: quay.io/s3sync-service/s3sync-service:0.2.2 imagePullPolicy: IfNotPresent command: - "./s3sync-service" - "-configmap=tools/s3sync-service" - "-metrics-path=/metrics" - "-metrics-port=9350" - "-http-port=8090" livenessProbe: failureThreshold: 3 httpGet: path: /info port: 8090 scheme: HTTP initialDelaySeconds: 20 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 10 readinessProbe: failureThreshold: 3 httpGet: path: /info port: 8090 scheme: HTTP initialDelaySeconds: 20 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 10 terminationGracePeriodSeconds: 300