You are browsing as a guest. Sign up (or log in) to start making projects!

50m 45s logged

Devlog #2: Bypassing Cloud Memory Walls & Fixing CI/CD Pipelines

What changed: Optimized the Spring Boot architecture to fit under 512MB RAM constraints, successfully deployed the backend to production, and automated the GitHub Actions Docker build pipeline.

The Hurdles & Fixes:

Memory Limits: The application ran out of memory on startup. Fix: Added JVM arguments (-Xmx384m -XX:+UseSerialGC) and staggered the NASA API scheduler loops to reduce runtime spikes.

Syntax Crash: Spring crashed due to mixing cron and initialDelay in the same scheduler annotation. Fix: Converted the task to a clean fixedRate setup.

NASA Null Bug: The app hit a NullPointerException because NASA omits the "data" JSON key when zero meteors occur in a week. Fix: Added a defensive null-check function.

CI/CD Naming Rule: GitHub Actions failed because Docker tags strictly forbid uppercase letters. Fix: Added a dynamic shell function (tr '[:upper:]' '[:lower:]') into the YAML workflow to automatically force repository paths to lowercase on every git push.

Next steps: Connect the newly published Docker package to live web hosting and finish mapping the UI dashboard layout.

0
2

Comments 0

No comments yet. Be the first!