Skip to content

Commit 82f010a

Browse files
committed
Add first version of gits infrastructure
1 parent 96b4372 commit 82f010a

7 files changed

+114
-7
lines changed

.gitignore

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
.terraform*
22
kubeconfig.yaml
33
terraform.tfstate*
4-
_old
4+
_old
5+
terraform.tfvars

content_service.tf

+77
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
resource "kubernetes_deployment" "gits_content_service" {
2+
metadata {
3+
name = "gits-content-service"
4+
labels = {
5+
app = "gits-content-service"
6+
}
7+
namespace = kubernetes_namespace.gits.metadata[0].name
8+
}
9+
10+
spec {
11+
replicas = 1
12+
13+
selector {
14+
match_labels = {
15+
app = "gits-content-service"
16+
}
17+
}
18+
19+
template {
20+
metadata {
21+
labels = {
22+
app = "gits-content-service"
23+
24+
}
25+
annotations = {
26+
"dapr.io/app-id" = "content-service"
27+
"dapr.io/app-port" = 4000
28+
}
29+
30+
}
31+
32+
spec {
33+
34+
image_pull_secrets {
35+
name = "github-pull-secret"
36+
}
37+
38+
39+
container {
40+
image = "ghcr.io/it-rex-platform/gits-content_service:0bb8a427"
41+
name = "gits-content-service"
42+
43+
44+
45+
resources {
46+
limits = {
47+
cpu = "0.5"
48+
memory = "512Mi"
49+
}
50+
requests = {
51+
cpu = "50m"
52+
memory = "50Mi"
53+
}
54+
}
55+
56+
liveness_probe {
57+
http_get {
58+
path = "/"
59+
port = 4000
60+
61+
}
62+
63+
initial_delay_seconds = 9
64+
period_seconds = 9
65+
}
66+
}
67+
}
68+
}
69+
}
70+
}
71+
72+
resource "helm_release" "content_service_db" {
73+
name = "content-service-db"
74+
repository = "oci://registry-1.docker.io/bitnamicharts"
75+
chart = "postgresql"
76+
namespace = kubernetes_namespace.gits.metadata[0].name
77+
}

frontend.tf

+4
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ resource "kubernetes_deployment" "gits_frontend" {
2424
}
2525

2626
spec {
27+
image_pull_secrets {
28+
name = "github-pull-secret"
29+
}
30+
2731
container {
2832
image = "ghcr.io/it-rex-platform/gits-fronted:e01eb5e2"
2933
name = "gits-frontend"

ingress.tf

+20-6
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,35 @@
1-
resource "kubernetes_ingress" "gits" {
1+
2+
3+
resource "kubernetes_ingress_v1" "gits" {
24
metadata {
35
name = "gits"
46
namespace = kubernetes_namespace.gits.metadata[0].name
7+
annotations = {
8+
"kubernetes.io/ingress.class" = "nginx"
9+
}
10+
511
}
612

713
spec {
8-
backend {
9-
service_name = "gits-frontend"
10-
service_port = 3000
14+
default_backend {
15+
service {
16+
name = "gits-frontend"
17+
port {
18+
number = 3000
19+
}
20+
}
1121
}
1222

1323
rule {
1424
http {
1525
path {
1626
backend {
17-
service_name = "gits-frontend"
18-
service_port = 3000
27+
service {
28+
name = "gits-frontend"
29+
port {
30+
number = 3000
31+
}
32+
}
1933
}
2034

2135
path = "/"

minio.tf

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
resource "helm_release" "minio" {
2+
name = "minio"
3+
repository = "oci://registry-1.docker.io/bitnamicharts"
4+
chart = "minio"
5+
namespace = kubernetes_namespace.gits.metadata[0].name
6+
}

token.sh

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
kubectl --kubeconfig=kubeconfig.yaml -n gits create token admin-user

variables.tf

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
variable "image_pull_secret" {
2+
sensitive = true
3+
type = string
4+
}

0 commit comments

Comments
 (0)