blob: 103fda5f24476f9dcd93b83a621451b260e2486e [file] [log] [blame]
giolekvab22550e2020-05-12 22:09:03 +04001---
2apiVersion: v1
3kind: Namespace
4metadata:
5 name: pcloud-app-manager
6---
7apiVersion: v1
8kind: ServiceAccount
9metadata:
10 name: app-manager
11 namespace: pcloud-app-manager
12---
13apiVersion: rbac.authorization.k8s.io/v1
14kind: ClusterRole
15metadata:
16 name: deploy-apps
17rules:
18 - apiGroups: [""]
19 resources: ["namespaces", "services", "pods", "secrets"]
20 verbs: ["*"]
21 - apiGroups: ["apps"]
22 resources: ["deployments", "statefulsets"]
23 verbs: ["*"]
24 - apiGroups: ["traefik.containo.us"]
25 resources: ["ingressroutes"]
26 verbs: ["*"]
27---
28apiVersion: rbac.authorization.k8s.io/v1
29kind: ClusterRoleBinding
30metadata:
31 name: deploy-apps-to-sa
32subjects:
33 - kind: ServiceAccount
34 name: app-manager
35 namespace: pcloud-app-manager
36roleRef:
37 kind: ClusterRole
38 name: deploy-apps
39 apiGroup: rbac.authorization.k8s.io
40---
41kind: Service
42apiVersion: v1
43metadata:
44 name: app-manager
45 namespace: pcloud-app-manager
46spec:
47 type: ClusterIP
48 selector:
49 app: app-manager
50 ports:
51 - nodePort:
52 port: 80
53 targetPort: 1234
54---
55apiVersion: traefik.containo.us/v1alpha1
56kind: IngressRoute
57metadata:
58 name: ingress
59 namespace: pcloud-app-manager
60spec:
61 entryPoints:
62 - web
63 routes:
64 - kind: Rule
65 match: PathPrefix(`/app-manager`)
66 services:
67 - kind: Service
68 name: app-manager
69 namespace: pcloud-app-manager
70 passHostHeader: true
71 port: 80
72---
73apiVersion: apps/v1
74kind: Deployment
75metadata:
76 name: app-manager
77 namespace: pcloud-app-manager
78spec:
79 selector:
80 matchLabels:
81 app: app-manager
82 replicas: 1
83 template:
84 metadata:
85 labels:
86 app: app-manager
87 spec:
88 serviceAccountName: app-manager
89 containers:
90 - name: app-manager
91 image: giolekva/pcloud-app-manager:latest
92 imagePullPolicy: Always
93 ports:
94 - containerPort: 1234
95 command: ["app-manager", "--logtostderr", "--port=1234", "--api_addr=http://api.pcloud.svc:1111/add_schema", "--helm_bin=/usr/bin/helm"]