-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmanifests.yaml
143 lines (143 loc) · 2.63 KB
/
manifests.yaml
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
apiVersion: v1
kind: Namespace
metadata:
name: tag
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: tag-bot
namespace: tag
---
apiVersion: v1
kind: Secret
metadata:
name: tag-bot-secret
namespace: tag
annotations:
kubernetes.io/service-account.name: tag-bot
type: kubernetes.io/service-account-token
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: tag-bot-role
namespace: tag
rules:
- apiGroups: ["*"]
resources: ["*"]
verbs: ["*"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: tag-bot-rolebinding
namespace: tag
subjects:
- kind: ServiceAccount
name: tag-bot
namespace: tag
roleRef:
kind: Role
name: tag-bot-role
apiGroup: rbac.authorization.k8s.io
---
apiVersion: v1
kind: Pod
metadata:
name: tag-bot
namespace: tag
labels:
app: tag-bot
spec:
serviceAccountName: tag-bot
containers:
- name: tag-bot
imagePullPolicy: Always
image: ghcr.io/cscosu/tag-bot:latest
env:
- name: NODE_TLS_REJECT_UNAUTHORIZED
value: "0"
- name: DISCORD_BOT_TOKEN
valueFrom:
secretKeyRef:
name: bot-token
key: DISCORD_BOT_TOKEN
resources:
limits:
cpu: 500m
memory: 512Mi
---
apiVersion: v1
kind: Pod
metadata:
name: tag-observer
namespace: tag
labels:
app: tag-observer
spec:
containers:
- name: tag-observer
imagePullPolicy: Always
image: ghcr.io/cscosu/tag-observer:latest
resources:
limits:
cpu: 500m
memory: 512Mi
---
apiVersion: v1
kind: Service
metadata:
name: tag-observer
namespace: tag
spec:
selector:
app: tag-observer
ports:
- name: http
protocol: TCP
port: 80
targetPort: 80
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: tag-observer
namespace: tag
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
spec:
ingressClassName: public
rules:
- host: tag.osucyber.club
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: tag-observer
port:
name: http
tls:
- hosts:
- tag.osucyber.club
secretName: tag-tls-certificate
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: tag-network-policy
namespace: tag
spec:
podSelector:
matchLabels:
tag: "true"
policyTypes:
- Ingress
- Egress
ingress:
- from:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: ingress-nginx