Skip to content

Commit fbafc71

Browse files
authored
Merge pull request #1 from Pseudo-Lab/codex/exp-gitops
feat(gitops): onboard experiment-platform manifests
2 parents 2aaf36e + 2f612d4 commit fbafc71

File tree

9 files changed

+152
-0
lines changed

9 files changed

+152
-0
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: argoproj.io/v1alpha1
2+
kind: Application
3+
metadata:
4+
name: experiment-platform
5+
namespace: argocd
6+
finalizers:
7+
- resources-finalizer.argocd.argoproj.io
8+
spec:
9+
project: default
10+
source:
11+
repoURL: https://github.com/Pseudo-Lab/DevFactory-Ops.git
12+
targetRevision: main
13+
path: services/experiment-platform/overlays/prod
14+
destination:
15+
server: https://kubernetes.default.svc
16+
namespace: experiment-platform
17+
syncPolicy:
18+
automated:
19+
prune: true
20+
selfHeal: true
21+
syncOptions:
22+
- CreateNamespace=true
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: experiment-platform-backend
5+
spec:
6+
replicas: 1
7+
selector:
8+
matchLabels:
9+
app: experiment-platform
10+
component: backend
11+
template:
12+
metadata:
13+
labels:
14+
app: experiment-platform
15+
component: backend
16+
spec:
17+
containers:
18+
- name: backend
19+
image: ghcr.io/pseudo-lab/experiment-platform-backend
20+
imagePullPolicy: Always
21+
ports:
22+
- containerPort: 8000
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: experiment-platform-backend
5+
spec:
6+
type: ClusterIP
7+
selector:
8+
app: experiment-platform
9+
component: backend
10+
ports:
11+
- port: 8000
12+
targetPort: 8000
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: experiment-platform-frontend
5+
spec:
6+
replicas: 1
7+
selector:
8+
matchLabels:
9+
app: experiment-platform
10+
component: frontend
11+
template:
12+
metadata:
13+
labels:
14+
app: experiment-platform
15+
component: frontend
16+
spec:
17+
containers:
18+
- name: frontend
19+
image: ghcr.io/pseudo-lab/experiment-platform-frontend
20+
imagePullPolicy: Always
21+
ports:
22+
- containerPort: 80
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: experiment-platform-frontend
5+
spec:
6+
type: ClusterIP
7+
selector:
8+
app: experiment-platform
9+
component: frontend
10+
ports:
11+
- port: 80
12+
targetPort: 80
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
apiVersion: kustomize.config.k8s.io/v1beta1
2+
kind: Kustomization
3+
resources:
4+
- frontend-deployment.yaml
5+
- frontend-service.yaml
6+
- backend-deployment.yaml
7+
- backend-service.yaml
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
apiVersion: networking.k8s.io/v1
2+
kind: Ingress
3+
metadata:
4+
name: experiment-platform-ingress
5+
annotations:
6+
cert-manager.io/cluster-issuer: "letsencrypt-prod"
7+
nginx.ingress.kubernetes.io/ssl-redirect: "true"
8+
spec:
9+
ingressClassName: nginx
10+
tls:
11+
- hosts:
12+
- exp.pseudolab-devfactory.com
13+
secretName: experiment-platform-tls
14+
rules:
15+
- host: exp.pseudolab-devfactory.com
16+
http:
17+
paths:
18+
- path: /api
19+
pathType: Prefix
20+
backend:
21+
service:
22+
name: experiment-platform-backend
23+
port:
24+
number: 8000
25+
- path: /
26+
pathType: Prefix
27+
backend:
28+
service:
29+
name: experiment-platform-frontend
30+
port:
31+
number: 80
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
apiVersion: kustomize.config.k8s.io/v1beta1
2+
kind: Kustomization
3+
namespace: experiment-platform
4+
5+
resources:
6+
- ../../base
7+
- namespace.yaml
8+
- ingress.yaml
9+
10+
commonLabels:
11+
environment: production
12+
project: experiment-platform
13+
14+
images:
15+
- name: ghcr.io/pseudo-lab/experiment-platform-frontend
16+
newName: ghcr.io/pseudo-lab/experiment-platform-frontend
17+
newTag: PLACEHOLDER
18+
- name: ghcr.io/pseudo-lab/experiment-platform-backend
19+
newName: ghcr.io/pseudo-lab/experiment-platform-backend
20+
newTag: PLACEHOLDER
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
apiVersion: v1
2+
kind: Namespace
3+
metadata:
4+
name: experiment-platform

0 commit comments

Comments
 (0)