Skip to content

SUU-Argo/infra

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

infra

Prerequisites

  • terraform
  • kubectl
  • aws-cli
  • argocd

Running

Kubernetes setup

  1. Store AWS credentials and config in ~/.aws/
  2. Get LabRole ARN
aws iam get-role --role-name LabRole | grep Arn
  1. Terraform init and apply
terraform -chdir=terraform init
terraform -chdir=terraform apply -var="aws_iam_role=your_lab_role_arn"
  1. Check the cluster's name
aws eks list-clusters
  1. Generate kubeconfig
aws eks update-kubeconfig --name your_cluster_name
  1. Verify connection via kubectl
kubectl get nodes

ArgoCD setup

  1. Create namespace
kubectl create namespace argocd
  1. Install ArgoCD
kubectl -n argocd apply -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
  1. Expose ArgoCD service
kubectl -n argocd port-forward svc/argocd-server 8080:443
  1. Access ArgoCD UI
open http://localhost:8080
  1. Obtain the initial password
argocd admin initial-password -n argocd
  1. Login
argocd login localhost:8080 --username admin --password your_initial_password

Argo Workflows setup

  1. Create namespace
kubectl create namespace argo
  1. Install Argo Workflows
kubectl -n argo apply -f https://github.com/argoproj/argo-workflows/releases/download/v3.5.7/quick-start-minimal.yaml
  1. Apply patch to Argo Workflows deployment
kubectl -n argo patch deployment argo-server --type JSON --patch-file k8s/argo-server-patch.yaml
  1. Expose Argo Workflows service
kubectl -n argo port-forward svc/argo-server 2746:2746
  1. Access Argo Workflows UI
open http://localhost:2746

Setup workflow-api application

  1. Create namespace
kubectl config set-context --current --namespace=argocd
  1. Create application in ArgoCD from repository
argocd app create workflow-api --repo https://github.com/SUU-Argo/workflow-api.git --path deploy --dest-server https://kubernetes.default.svc --dest-namespace argo
  1. Display application instance details
argocd app get workflow-api
  1. Enable automatic sync
argocd app set workflow-api --sync-policy automated
  1. Expose workflow-api application
kubectl -n argo port-forward svc/workflow-api 8081:8080
  1. Access workflow-api application
open http://localhost:8081

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages