J Josue Gatica Odato

Latest Updates

Documenting code, one commit at a time.

Streamlining Go Deployments: The First Automated Step

Our team working on the LucasLatessa/SDyPP-G3 project recently took a significant step towards enhancing our development workflow: implementing our first automated deployment test for our Go application. This initial commit lays the groundwork for a more efficient and reliable release process, moving away from manual interventions and embracing continuous delivery principles.

The Pitch vs. The Reality

The pitch: Deploying applications manually is straightforward for small projects,

Read more

Streamlining CI/CD: Optimizing Frontend Asset Location in GitHub Actions

When working on projects like SDyPP-G3, maintaining efficient and clear CI/CD pipelines is crucial. One common challenge arises when frontend build outputs or static assets aren't placed optimally within the project's structure, leading to less intuitive workflows in automation scripts.

Recently, we addressed just such an optimization in the SDyPP-G3 project. The core issue revolved around the location of our Front folder – containing essential frontend assets – within our GitHub Actions

Read more

Simplifying Initial Deployments with GitHub Actions

The Problem

Getting a new application from local development to a live, accessible environment can often feel like a monumental task. The initial setup of Continuous Integration/Continuous Deployment (CI/CD) pipelines, especially for smaller projects or early-stage development, can introduce significant overhead. Our goal for the LucasLatessa/SDyPP-G3 project was to quickly establish a reliable and repeatable deployment mechanism for our Python application.

The Approach

Read more

Robust Credential Handling: Simulating Errors for Resilient Applications

In the LucasLatessa/SDyPP-G3 project, recent development focused on enhancing the robustness of credential handling within our applications. A critical aspect of building resilient systems is proactively testing how they respond to authentication failures, such as incorrect or missing credentials. This ensures applications can gracefully manage adverse scenarios without compromising security or user experience.

The Problem

Applications frequently rely on external services, APIs, or

Read more

Optimizing GitHub Actions: The Importance of Execution Zones

Project Context

The LucasLatessa/SDyPP-G3 project leverages GitHub Actions for its continuous integration and deployment workflows. A recent change focused on a crucial aspect of cloud deployments: adjusting the execution "zone" for an action. This might seem like a small detail, but in the world of cloud infrastructure and global applications, specifying the right zone can significantly impact performance, cost, and resilience.

The 'Why' Behind Zonal Deployments

When deploying

Read more

Securing Terraform: Eliminating Hardcoded Credentials from provider.tf

The LucasLatessa/SDyPP-G3 project focuses on infrastructure as code practices. Recently, a critical security enhancement was implemented to remove hardcoded credentials from our Terraform configurations, specifically within the provider.tf files. This change significantly improves our security posture and adheres to best practices for managing sensitive information in infrastructure deployments.

The Challenge: Hardcoded Credentials

Initially, our Terraform provider.tf files sometimes

Read more

Securing Your CI/CD: Managing GitHub Actions Workflow Permissions

In the LucasLatessa/SDyPP-G3 project, a recent focus has been on refining the continuous integration and continuous delivery (CI/CD) pipeline by implementing granular permissions for GitHub Actions. This enhancement ensures that automated workflows operate with the necessary access rights while upholding security best practices.

The Role of GitHub Actions Permissions

GitHub Actions are a powerful tool for automating software development workflows, from building and testing to deploying

Read more

Achieving Automated End-to-End Deployment with Kubernetes, RabbitMQ, and GitHub Actions

Project Context: SDyPP-G3 Deployment

In the SDyPP-G3 project, a significant milestone was recently achieved: a "complete deployment." This involved setting up a robust, automated pipeline to take our application from code changes to a fully operational state in a production-like environment. The focus was on ensuring reliability, scalability, and ease of maintenance for our distributed services.

The Challenge: Complex Deployments and Manual Overheads

Before this initiative, our

Read more

Achieving Seamless Go Deployments on Kubernetes: A Full Test Approach

In the world of microservices and rapid iteration, manual deployments are a bottleneck we can no longer afford. For the SDyPP-G3 project, our recent focus was on perfecting our continuous delivery pipeline, culminating in a critical "full deployment test." This test wasn't just about pushing code; it was about validating an end-to-end automated process that takes our Go application from a commit to a fully operational state within a Kubernetes cluster.

The Challenge: From Code to Cluster

Read more

Achieving Complete Go Application Deployment with GitHub Actions and Kubernetes

Recently, in the LucasLatessa/SDyPP-G3 project, we reached a significant milestone: achieving a 'complete deployment' for our Go application. This isn't just about getting code to a server; it's about establishing an automated pipeline that takes our Go source code from a commit to a running, orchestrated application within a Kubernetes cluster, all managed by GitHub Actions.

The Journey to Complete Deployment

For many development teams, a 'complete deployment' means more than just a

Read more