How to Start
This guide walks you through the initial steps to start working with your workload in CG DevX. By following these instructions, you'll learn how to prepare your workload repository, build your application, and deploy it to Kubernetes.
Overview
CG DevX simplifies the adoption of modern development practices by integrating open-source tools into a cohesive platform. Getting started involves these key steps:
- Requesting repository setup.
- Preparing your workload repository.
- Building and deploying your workload.
- Monitoring your deployment.
Each step is designed to minimize manual intervention, allowing you to focus on application development.
Step 1: Request Repository Setup
Before starting, request your platform operator to provision the necessary repositories for you. By default, you'll receive:
-
Workload Repository:
Stores your application's source code and theDockerfile
for containerization. Learn more about workload concepts in the Workloads Guide. -
GitOps Repository:
Contains Kubernetes manifests, Terraform configurations, and environment-specific values for managing deployments. Learn more about GitOps structure and environments in the How to Model Your Environments.
Why it matters: These repositories separate application logic from infrastructure, ensuring clear boundaries and maintainability.
For more details on the structure of these repositories, refer to the Bootstrap Templates Guide.
Step 2: Prepare Your Workload Repository
Once you have access to the Workload Repository, add your application’s source code and customize the provided Dockerfile
to match your workload’s requirements.
- Use the CG DevX Workload Template as a basic starting point for your repository setup.
- As a real-world example, check out CG DevX CNASK Workload for a working implementation.
Step 3: Build and Deploy Your Workload
The next step is to build and deploy your application. This process is automated via CG DevX’s CI/CD pipelines.
Trigger the Build
Push a tag to your Workload Repository to trigger the build process:
git tag v0.0.1
git push origin v0.0.1
Behind the Scenes
When you push a tag to your Workload Repository:
- GitHub Actions submits an Argo Workflow with the required parameters.
- Argo Workflow builds the container image, pushes it to the registry, and updates the GitOps Repository.
- ArgoCD syncs the updated configurations and deploys your application.
This automated pipeline streamlines building, deploying, and syncing your workload.
Step 4: Monitor Your Deployment
Once deployed, you can verify your application and monitor its performance:
Access Your Application
- Navigate to the Ingress URL listed in the ArgoCD dashboard to access your application.
Monitor Logs and Metrics
- Metrics: Use Grafana to track application performance and resource usage.
- Dashboards: Explore the pre-configured Grafana dashboards to visualize metrics and monitor workload health.
- Logs: Use Loki for centralized log aggregation and troubleshooting.
Step 5: Troubleshoot Issues
If the deployment encounters any issues, use the following tools to diagnose and resolve them:
- Argo Workflows: Review the Argo Workflows dashboard for details on pipeline execution.
- ArgoCD Dashboard: Check deployment logs directly in the ArgoCD dashboard for insights into application issues.
- Loki Logs: Use Loki to analyze application and Kubernetes logs for potential errors.