File tree Expand file tree Collapse file tree 10 files changed +321
-3
lines changed
Expand file tree Collapse file tree 10 files changed +321
-3
lines changed Original file line number Diff line number Diff line change 1+ apiVersion : apps/v1
2+ kind : Deployment
3+ metadata :
4+ name : {{ .Release.Name }}-chat-service
5+ labels :
6+ app : {{ .Chart.Name }}
7+ spec :
8+ replicas : 1
9+ selector :
10+ matchLabels :
11+ app : {{ .Release.Name }}-chat-service
12+ template :
13+ metadata :
14+ labels :
15+ app : {{ .Release.Name }}-chat-service
16+ spec :
17+ containers :
18+ - name : chat-service
19+ image : {{ .Values.image.chat_service.repository }}:{{ .Values.image.chat_service.tag }}
20+ ports :
21+ - containerPort : 50052
22+ env :
23+ - name : RUST_LOG
24+ value : info
25+ - name : SCYLLA_HOST
26+ value : scylladb:9042
27+ - name : RABBITMQ_URL
28+ value : amqp://admin:password@rabbitmq:5672
29+ - name : GRPC_ADDR
30+ value : " [::]:50052"
Original file line number Diff line number Diff line change 88 PASS_RESET_LINK : {{ .Values.passResetLink | quote }}
99 SMTP_HOST : {{ .Values.smtp.smtpHost | quote }}
1010 SMTP_USERNAME : {{ .Values.smtp.smtpUsername | quote }}
11+ REDIS_URL : {{ printf "redis://%s-redis:6379/" .Release.Name | quote }}
Original file line number Diff line number Diff line change 1+ apiVersion : apps/v1
2+ kind : Deployment
3+ metadata :
4+ name : {{ .Release.Name }}-per-oxo
5+ labels :
6+ app : {{ .Chart.Name }}
7+ spec :
8+ replicas : 1
9+ selector :
10+ matchLabels :
11+ app : {{ .Release.Name }}-per-oxo
12+ template :
13+ metadata :
14+ labels :
15+ app : {{ .Release.Name }}-per-oxo
16+ spec :
17+ containers :
18+ - name : per-oxo
19+ image : {{ .Values.image.per_oxo.repository }}:{{ .Values.image.per_oxo.tag }}
20+ ports :
21+ - containerPort : 50051
22+ - containerPort : 3000
23+ env :
24+ - name : RUST_LOG
25+ value : debug
26+ - name : GRPC_ADDR
27+ value : " [::]:50051"
28+ - name : CHAT_SERVICE_ADDR
29+ value : http://chat-service:50052
30+ - name : PER_OXO_SERVICE_ADDR
31+ value : 0.0.0.0:3000
Original file line number Diff line number Diff line change 1+ ---
2+ # ScyllaDB Service (internal only)
3+ apiVersion : v1
4+ kind : Service
5+ metadata :
6+ name : {{ .Release.Name }}-scylladb
7+ labels :
8+ app : {{ .Chart.Name }}
9+ spec :
10+ type : ClusterIP
11+ selector :
12+ app : {{ .Release.Name }}-scylladb
13+ ports :
14+ - name : cql
15+ port : 9042
16+ targetPort : 9042
17+ - name : thrift
18+ port : 9160
19+ targetPort : 9160
20+ - name : intra-node
21+ port : 7000
22+ targetPort : 7000
23+ - name : intra-node-tls
24+ port : 7001
25+ targetPort : 7001
26+
27+ ---
28+ # RabbitMQ Service (internal only)
29+ apiVersion : v1
30+ kind : Service
31+ metadata :
32+ name : {{ .Release.Name }}-rabbitmq
33+ labels :
34+ app : {{ .Chart.Name }}
35+ spec :
36+ type : ClusterIP
37+ selector :
38+ app : {{ .Release.Name }}-rabbitmq
39+ ports :
40+ - name : amqp
41+ port : 5672
42+ targetPort : 5672
43+ - name : management
44+ port : 15672
45+ targetPort : 15672
46+
47+ ---
48+ # Chat-Service (internal only)
49+ apiVersion : v1
50+ kind : Service
51+ metadata :
52+ name : {{ .Release.Name }}-chat-service
53+ labels :
54+ app : {{ .Chart.Name }}
55+ spec :
56+ type : ClusterIP
57+ selector :
58+ app : {{ .Release.Name }}-chat-service
59+ ports :
60+ - name : grpc
61+ port : 50052
62+ targetPort : 50052
63+
64+ ---
65+ # Rabbit-Consumer (internal only)
66+ apiVersion : v1
67+ kind : Service
68+ metadata :
69+ name : {{ .Release.Name }}-rabbit-consumer
70+ labels :
71+ app : {{ .Chart.Name }}
72+ spec :
73+ type : ClusterIP
74+ selector :
75+ app : {{ .Release.Name }}-rabbit-consumer
76+ ports :
77+ - name : app
78+ port : 8080
79+ targetPort : 8080
80+ protocol : TCP
81+
82+ ---
83+ # Per-Oxo Service (exposed to the outside world)
84+ apiVersion : v1
85+ kind : Service
86+ metadata :
87+ name : {{ .Release.Name }}-per-oxo
88+ labels :
89+ app : {{ .Chart.Name }}
90+ spec :
91+ type : LoadBalancer
92+ selector :
93+ app : {{ .Release.Name }}-per-oxo
94+ ports :
95+ - name : grpc
96+ port : 50051
97+ targetPort : 50051
98+ - name : http
99+ port : 4001
100+ targetPort : 3000
Original file line number Diff line number Diff line change 88 resources :
99 requests :
1010 storage : 1Gi
11+
1112---
1213apiVersion : v1
1314kind : PersistentVolumeClaim
1920 resources :
2021 requests :
2122 storage : 1Gi
23+
24+ ---
25+ apiVersion : v1
26+ kind : PersistentVolumeClaim
27+ metadata :
28+ name : scylla-data
29+ labels :
30+ app : {{ .Chart.Name }}
31+ spec :
32+ accessModes :
33+ - ReadWriteOnce
34+ resources :
35+ requests :
36+ storage : {{ .Values.persistence.scylla.size }}
37+ storageClassName : {{ .Values.persistence.scylla.storageClassName }}
38+
39+ ---
40+ apiVersion : v1
41+ kind : PersistentVolumeClaim
42+ metadata :
43+ name : rabbitmq-data
44+ labels :
45+ app : {{ .Chart.Name }}
46+ spec :
47+ accessModes :
48+ - ReadWriteOnce
49+ resources :
50+ requests :
51+ storage : {{ .Values.persistence.rabbitmq.size }}
52+ storageClassName : {{ .Values.persistence.rabbitmq.storageClassName }}
Original file line number Diff line number Diff line change 1+ apiVersion : apps/v1
2+ kind : Deployment
3+ metadata :
4+ name : {{ .Release.Name }}-rabbit-consumer
5+ labels :
6+ app : {{ .Chart.Name }}
7+ spec :
8+ replicas : 1
9+ selector :
10+ matchLabels :
11+ app : {{ .Release.Name }}-rabbit-consumer
12+ template :
13+ metadata :
14+ labels :
15+ app : {{ .Release.Name }}-rabbit-consumer
16+ spec :
17+ containers :
18+ - name : rabbit-consumer
19+ image : {{ .Values.image.rabbit_consumer.repository }}:{{ .Values.image.rabbit_consumer.tag }}
20+ env :
21+ - name : RUST_LOG
22+ value : info
23+ - name : SCYLLA_HOST
24+ value : scylladb:9042
25+ - name : RABBITMQ_URL
26+ value : amqp://admin:password@rabbitmq:5672
27+
28+ volumeMounts :
29+ - name : rabbitmq-data
30+ mountPath : /var/lib/rabbitmq
31+ volumes :
32+ - name : rabbitmq-data
33+ persistentVolumeClaim :
34+ claimName : rabbitmq-data
Original file line number Diff line number Diff line change 1+ apiVersion : apps/v1
2+ kind : Deployment
3+ metadata :
4+ name : {{ .Release.Name }}-rabbitmq
5+ labels :
6+ app : {{ .Chart.Name }}
7+ spec :
8+ replicas : 1
9+ selector :
10+ matchLabels :
11+ app : {{ .Release.Name }}-rabbitmq
12+ template :
13+ metadata :
14+ labels :
15+ app : {{ .Release.Name }}-rabbitmq
16+ spec :
17+ containers :
18+ - name : rabbitmq
19+ image : {{ .Values.image.rabbitmq.repository }}:{{ .Values.image.rabbitmq.tag }}
20+ ports :
21+ - containerPort : 5672
22+ - containerPort : 15672
23+ env :
24+ - name : RABBITMQ_DEFAULT_USER
25+ valueFrom :
26+ secretKeyRef :
27+ name : {{ .Release.Name }}-secret
28+ key : rabbitmq-user
29+ - name : RABBITMQ_DEFAULT_PASS
30+ valueFrom :
31+ secretKeyRef :
32+ name : {{ .Release.Name }}-secret
33+ key : rabbitmq-password
34+ volumeMounts :
35+ - name : rabbitmq-data
36+ mountPath : /var/lib/rabbitmq
37+ volumes :
38+ - name : rabbitmq-data
39+ persistentVolumeClaim :
40+ claimName : rabbitmq-data
Original file line number Diff line number Diff line change 1+ apiVersion : apps/v1
2+ kind : Deployment
3+ metadata :
4+ name : {{ .Release.Name }}-scylladb
5+ labels :
6+ app : {{ .Chart.Name }}
7+ spec :
8+ replicas : 1
9+ selector :
10+ matchLabels :
11+ app : {{ .Release.Name }}-scylladb
12+ template :
13+ metadata :
14+ labels :
15+ app : {{ .Release.Name }}-scylladb
16+ spec :
17+ containers :
18+ - name : scylladb
19+ image : {{ .Values.image.scylladb.repository }}:{{ .Values.image.scylladb.tag }}
20+ ports :
21+ - containerPort : 9042
22+ - containerPort : 9160
23+ - containerPort : 7000
24+ - containerPort : 7001
25+ env :
26+ - name : SCYLLA_CLUSTER_NAME
27+ value : chat_cluster
28+ - name : SCYLLA_DC
29+ value : datacenter1
30+ - name : SCYLLA_RACK
31+ value : rack1
32+ volumeMounts :
33+ - name : scylla-data
34+ mountPath : /var/lib/scylla
35+ volumes :
36+ - name : scylla-data
37+ persistentVolumeClaim :
38+ claimName : scylla-data
Original file line number Diff line number Diff line change @@ -12,6 +12,8 @@ use sea_orm::Database;
1212use tokio:: sync:: Mutex ;
1313use tower_http:: cors:: { AllowOrigin , CorsLayer } ;
1414
15+ use crate :: utils:: constants:: REDIS_URL ;
16+
1517mod bcrypts;
1618mod configs;
1719mod errors;
@@ -22,6 +24,14 @@ mod routes;
2224mod utils;
2325
2426pub async fn run ( ) -> Router < ( ) > {
27+ // tracing_subscriber::registry()
28+ // .with(
29+ // tracing_subscriber::EnvFilter::try_from_default_env()
30+ // .unwrap_or_else(|_| "debug".into()),
31+ // )
32+ // .with(tracing_subscriber::fmt::layer().compact())
33+ // .init();
34+
2535 let db_string = ( * utils:: constants:: DATABASE_URL ) . clone ( ) ;
2636
2737 // Use ALLOWED_ORIGINS from constants.rs
@@ -79,10 +89,9 @@ pub struct RedisClient {
7989}
8090
8191impl RedisClient {
82- // Initialize RedisClient with a new connection
8392 pub fn new ( ) -> Self {
84- // let client = Client::open("redis://127.0.0.1:6379/").expect("Invalid Redis URL" );
85- let client = Client :: open ( "redis://redis:6379/" ) . expect ( "Invalid Redis URL" ) ;
93+ println ! ( "Connecting to Redis at: {}" , REDIS_URL . to_string ( ) ) ;
94+ let client = Client :: open ( REDIS_URL . to_string ( ) ) . expect ( "Invalid Redis URL" ) ;
8695 let connection = client. get_connection ( ) . expect ( "Failed to connect to Redis" ) ;
8796 Self {
8897 connection : Arc :: new ( Mutex :: new ( connection) ) ,
Original file line number Diff line number Diff line change @@ -36,6 +36,10 @@ lazy_static! {
3636 env:: var( "PASS_RESET_LINK" ) . expect( "PASS_RESET_LINK must be set" )
3737 } ;
3838
39+ pub static ref REDIS_URL : String = {
40+ env:: var( "REDIS_URL" ) . expect( "REDIS_URL must be set" )
41+ } ;
42+
3943 pub static ref ALLOWED_ORIGINS : Vec <String > = {
4044 match env:: var( "ALLOWED_ORIGINS" ) {
4145 Ok ( allowed_origins_env) => {
You can’t perform that action at this time.
0 commit comments