Skip to main content

Prerequisites

  • Access to the Fast Foundation manifest repository
  • Output values from the AWS Resources step
  • Basic understanding of Kubernetes concepts

Step-by-Step Process

1. Add Application to Cluster Configuration

Navigate to your manifest repository and open the file clusters/<cluster_name>/ruling-app/<environment>/values.yaml. Add your application configuration under the application: field.
Make sure you have the output values from the AWS Resources step ready, since you’ll need them to replace placeholders in the YAML config.

2. Configure Environment-Specific Values

Replace these values with your AWS Resources output:

3. Create Application Directory Structure


4. Create values.yaml

Create environments/<environment>/apps/<app_name>/values.yaml:
The image tag can be any placeholder like default-12kmkjas9 or development-application-deployment-6b0f2da7 until a real image is built.

5. Create Chart.yaml

Create environments/<environment>/apps/<app_name>/Chart.yaml:

6. Configure Dockerfile and Entrypoint

Since a secret is automatically mounted at /mnt/.env, configure your app to load environment variables from that file.

Entrypoint Script (Node.js Example)

Dockerfile Example (Node.js)


7. Deploy to ArgoCD

Push your changes to the main branch:
ArgoCD will automatically detect the changes and deploy your application.

8. Verify Deployment

  1. Go to your ArgoCD dashboard
  2. Find your application in the list
  3. Check the sync status
  4. Review logs if there are issues

Manifest Fields Reference

Environment Configuration

Resource Configuration


Next Steps

Once manifests are created and ArgoCD has synced them, continue to Configure CI/CD.

Troubleshooting

  • Check that you pushed to the main branch
  • Verify the directory structure is correct
  • Check ArgoCD logs for sync errors
  • Verify the secret ID matches AWS output
  • Confirm the secret exists in AWS Secrets Manager
  • Ensure the IAM role can read the secret
  • Verify the ECR repository URL is correct
  • Check the image tag exists in the repository
  • Ensure the service account has ECR pull permissions