Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 57 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,14 +50,62 @@ The browser can also be used to send requests. To do this, the Gateway IP must b
<the-ip-of-the-gateway> dev.local
````

### Project Structure
### ArgoCD ApplicationSet Settings
```
backend # Golang Application for the Backend
frontend # Golang Application for the Frontend
gitops-settings # Kargo.io Settings
local-dev # Tilt.dev Configuration
manifests # kustomization for all environments
base # Base Manifests for all Environments
stages # Different Configurations per Environment
Tiltfile # Entrypoint for Tilt.dev
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
name: gitops-playground
namespace: argo-cd
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
goTemplate: true
goTemplateOptions: [ "missingkey=error" ]
generators:
- git:
repoURL: https://github.com/procinger/gitops-playground.git
revision: HEAD
directories:
- path: manifests/stages/*
- path: manifests/stages/ci*
exclude: true
- path: manifests/stages/local-dev
exclude: true
template:
metadata:
name: gitops-playground-{{`{{.path.basename}}`}}
annotations:
kargo.akuity.io/authorized-stage: "gitops-playground:{{`{{.path.basename}}`}}"
spec:
project: gitops-playground
source:
repoURL: https://github.com/procinger/gitops-playground.git
path: ./manifests/stages/{{`{{.path.basename}}`}}
targetRevision: stage/{{`{{.path.basename}}`}}
destination:
server: https://kubernetes.default.svc
namespace: gitops-playground-{{`{{.path.basename}}`}}
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
managedNamespaceMetadata:
labels:
pod-security.kubernetes.io/enforce: privileged
istio-injection: enabled
```

### Kiali Service Mesh
To view and analyze the service mesh in a graph, Kiali should be installed. Kiali requires Prometheus and Jaeger as dependencies.

Kiali login tokens have a short lifetime, so a new token must be requested each time.
```
kubectl --namespace observability create token kiali
eyJhbGciOiJSUzI1NiIsImtpZCI6IndrWVlPaElib0ZIa1ZpWVdKbUZQdlZYT3MyU1ROV2tGQV9BR2RwOExEMVUifQ.eyJhdWQiOlsiaHR0cHM6Ly9rdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWwiXSwiZXhwIjoxNzY4NzczOTEwLCJpYXQiOjE3Njg3NzAzMTAsImlzcyI6Imh0dHBzOi8va3ViZXJuZXRlcy5kZWZhdWx0LnN2Yy5jbHVzdGVyLmxvY2FsIiwianRpIjoiZTYxMTU1ZTgtNzkwNy00NWFiLWFhMjctMTRjNjBlYWFiYTU2Iiwia3ViZXJuZXRlcy5pbyI6eyJuYW1lc3BhY2UiOiJvYnNlcnZhYmlsaXR5Iiwic2VydmljZWFjY291bnQiOnsibmFtZSI6ImtpYWxpIiwidWlkIjoiODY1M2NiMDAtMzc1My00ZDZiLWJmOTAtZjc4ODYzNDA5ZGQzIn19LCJuYmYiOjE3Njg3NzAzMTAsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDpvYnNlcnZhYmlsaXR5OmtpYWxpIn0.0VZZr6-rD-XZJmp2IyMp4iKAezMefw36JcpGNVZ2qCs-vjzl-yDez4yKKmGeL4_cPLYqOkQ92C_OP47Zm_07G9n0uCKFH5phPsAuHPllSyUJFZ_GT2ezjVWg3auFZp_SWKoiSNT6cWIOlVSNTO-Y1i5xZwL96_PUS9fWvv3n5eMnoBhHZ4KMrb9pFUlcx1LWr0r1EFfoalwMuS2TfmxI0C6cXYMHtpfZUQtP_6LeVqzbuFFs_zdRniDJ6sIiNzJ9VLDMkCUqutaKUaHyQKd2YmGkI4V_eVJJlYwzHu9jxGnvbdHf4z6NHeshRV4pNcOMFmTOtkJ1Q-G8gtrCnoZWFw
```

<img width="1917" height="1005" alt="kiali" src="https://github.com/user-attachments/assets/e826d25b-8b94-4e72-a151-a06ac9cc0a1e" />