Skip to content

Commit 792f560

Browse files
chore(docs): Add Microservices Project week 9 report
Signed-off-by: Muhammad Salman <chsalmanramzan422@gmail.com>
1 parent 35cfb72 commit 792f560

File tree

2 files changed

+90
-0
lines changed

2 files changed

+90
-0
lines changed
Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
---
2+
title: Week 9
3+
author: Muhammad Salman
4+
author_url: https://github.com/SalmanDeveloperz
5+
tags: [gsoc25, cmake, infrastructure, devops]
6+
7+
---
8+
<!--
9+
SPDX-License-Identifier: CC-BY-SA-4.0
10+
11+
SPDX-FileCopyright Text: 2025 Muhammad Salman <chsalmanramzan422@gmail.com>
12+
-->
13+
14+
# Week 9
15+
16+
## Database Column Fixes
17+
Earlier, the infrastructure was causing issues on running it locally at http://192.168.49.2:32035/ showing errors.![Database missing Column Issues](< databaseColumnIssues.png>)
18+
19+
I focused on resolving these missing database columns to make it running. I worked on adding some missing columns that were critical for the Web Agent to function correctly. After making these fixes, I also rebuilt the container images with the latest changes to keep everything up to date.
20+
The missing columns are:
21+
22+
- `create_sysconfig.sql`
23+
- `create_uploadtree.sql`
24+
- `populate_sysconfig.sql`
25+
- `additional_tables.sql`
26+
- `create_additional_tables.sql`
27+
28+
## Scheduler Agent & Dependencies
29+
30+
Our main focus is currently on the Scheduler Agent, which plays a key role in coordinating other agents like `Ojo` and `Nomos`. In our weekly call, we discussed ways to strengthen its integration with these dependent agents. The scheduler tracks available agents, and for now, we’ve decided to continue with the **curl-based** approach, where it pings the master node to check agent status.
31+
32+
## Meeting 1:
33+
34+
*(July 30, 2025)*
35+
36+
### Attendees:
37+
38+
- [Avinal](https://github.com/avinal)
39+
- [Shaheem Azmal M MD](https://github.com/shaheemazmalmmd)
40+
- [Gaurav](https://github.com/gmishx)
41+
- [Muhammad Salman](https://github.com/SalmanDeveloperz)
42+
43+
### Scheduler and Agent Tracking:
44+
45+
- The scheduler’s role is to keep track of which agents are available.
46+
47+
- We discussed replacing the current **curl-based** ping to the master node with a shared resource approach (shared volume).
48+
49+
- Curl approach → supports dynamic reloading (scheduler detects automatically).
50+
51+
- Shared volume approach → requires manual or controller-based reloads.
52+
53+
- Final agreement: for now, continue with **curl** since it’s working, then later explore shared volume.
54+
55+
### Focus on Getting Curl Running First:
56+
57+
[Avinal](https://github.com/avinal) asked whether we should continue making **curl-based** scheduling work. [Gaurav](https://github.com/gmishx) suggested to first get it into a running state with **curl**. Once stable, we can think about alternatives.
58+
59+
### Service Issues:
60+
61+
- [Avinal](https://github.com/avinal) pointed out a problem where installing certain dependencies starts services automatically.
62+
63+
- We discussed how this affects the setup, especially with PostgreSQL and other services.
64+
65+
### Binary vs. Services Approach:
66+
67+
- I suggested compiling agents as standalone binaries instead of depending on PostgreSQL inside the container.
68+
69+
- This would remove service requirements from each Dockerfile but needs significant rework.
70+
71+
- We also noted and understand by help of [Gaurav](https://github.com/gmishx) how environment variables and entrypoint scripts currently generate config files for agents.
72+
73+
### Dockerfile Updates:
74+
75+
- [Avinal](https://github.com/avinal) asked me to write a cleaner, optimal and updated **Dockerfile.ojo** , so he can tested on his end.
76+
77+
- I worked on **Dockerfile.ojo** and sent updated one after testing that on my end and fully compatible with the current **curl-based** scheduler setup to [Avinal](https://github.com/avinal) for testing.
78+
79+
## Meeting 2:
80+
81+
*(July 24, 2025)*
82+
83+
In the community call, I explained about fixing the database issues, mainly adding the missing columns needed for the Web agent. I also rebuilt the images with these changes. Right now, our main blocker is still the **scheduler** agent and dependent agents like **ojo** and **nomos** and some other. We also discussed keeping **curl-based** checks for the agents’ status, and maybe simplifying the setup later, like using a standalone binary instead of relying on PostgreSQL inside the containers.
84+
85+
## What’s Next for Week 10
86+
87+
- Get feedback of **Dockerfile.ojo** which I sent to mentor for testing with **curl-based** setup.
88+
- Fix the scheduler pod’s database connectivity
89+
- Connect with mentors for planning final phase of work
90+
- Test all pods, agents and the UI in Minikube to confirm everything’s rock-solid.
316 KB
Loading

0 commit comments

Comments
 (0)