Skip to the content.

Week 3

(June 17, 2025 - June 23, 2025)

Challenges I Faced

Database Connection Trouble: The web pod was starting before the database is ready, showing “Could not connect to FOSSology database.

Reboot Glitch: After a reboot, the UI sometimes reverted to the default Debian Apache screen.

Image Pull Issues: Kubernetes couldn’t grab the fossology/scheduler:3.11.0 image from Docker Hub, causing ImagePullBackOff errors.

Fixed Scheduler Build Error: I ran into a no curl.h file error while building the scheduler. I added libcurl4-openssl-dev to Dockerfile and Dockerfile.pkg to fix it, so the scheduler could build properly.

Scheduler Pod Keeps Crashing: The scheduler pod wass stucked in a CrashLoopBackOff loop because of a PostgreSQL error: tables can have at most 1600 columns when adding a new column to the license_candidate table. This happens during database updates and makes the pod crash every time it restarts.

What I Got Done

Checked Database Connection: I made sure the database was working:

Debugged Kubernetes Pods: I dug into the scheduler issues with:

Fixed Web Pod Startup: To stop the web pod from starting too early, I updated k8s/20-web-deployment.yaml with a wait-for-db section using BusyBox. It checks if the database is ready with nc -z $(FOSSOLOGY_DB_HOST) 5432.

After running kubectl apply -f k8s/20-web-deployment.yaml, the logs showed “Fossology initialisation complete; Starting up…”.

Cleared Database Issues: To fix the PostgreSQL column error, I reset the database by running kubectl delete pod db-0, kubectl delete pvc database, and kubectl apply -f k8s/ to start fresh.

Got the FOSSology UI Working: I built the web pod with docker build -t fossology/web:3.11.0-fixed . and the FOSSology UI popped up at http://192.168.49.2:30745. Below are the ss of FOSSology UI.

FOSSology UI Pic 1

FOSSology UI Pic 2

Meeting 1

(June 18, 2025)

I was supposed to meet with my mentor Avinal, but he was out of the country and couldn’t make it. I shared a Google Docs link with my progress to keep him updated and we planned to catch up around June 22.

Meeting 2

(June 19, 2025)

I shared all my progress with the FOSSology team in community meeting, from getting the database connection working and the scheduler’s ImagePullBackOff error and building my own Dockerfile for temporary testing. I also talked about the web pod starting too early and the CrashLoopBackOff issue. The mentors suggested trying Helm Charts to make deployments easier.

Meeting 3

(June 23, 2025)

I had an awesome call with my mentor Avinal. We went over everything: the FOSSology UI is up and running, most pods (like db-0 and web) are working great, but the scheduler pod’s CrashLoopBackOff is messing with the upload and copyright features. We used K9s to check the pod logs and figure out what’s causing the crashes. Together, we cleaned up some unnecessary changes and got a better understanding of how everything connects. We didn’t fully fix the scheduler, but we end the call with a clear plan and tons of motivation!

This week gave me a deeper understanding of Microservice deployments, container orchestration and Kubernetes troubleshooting. The UI loading successfully is the big win, but the scheduler pod still needs Running status.

Planning Next Week

For Week 4, I’m ready to dive into: