Skip to content

Commit 6809e33

Browse files
authored
Converted Argocd from kustomize to Helm (#802)
Signed-Off-By: Anand Nande ([email protected]) Signed-off-by: Anand Nande ([email protected])
1 parent 196f8ae commit 6809e33

File tree

7 files changed

+91
-95
lines changed

7 files changed

+91
-95
lines changed

.github/workflows/helm-argocd.yaml

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: Helm GitHub Actions for argocd
2+
3+
on:
4+
pull_request:
5+
paths:
6+
- base-kustomize/argocd/**
7+
- base-helm-configs/argocd/**
8+
- .github/workflows/helm-argocd.yaml
9+
jobs:
10+
helm:
11+
strategy:
12+
matrix:
13+
overlays:
14+
- base
15+
name: Helm
16+
runs-on: ubuntu-latest
17+
steps:
18+
- name: Checkout
19+
uses: actions/checkout@v4
20+
- uses: azure/setup-helm@v3
21+
with:
22+
version: latest
23+
token: "${{ secrets.GITHUB_TOKEN }}"
24+
id: helm
25+
- name: Kubectl Install
26+
working-directory: /usr/local/bin/
27+
run: |
28+
if [ ! -f /usr/local/bin/kubectl ]; then
29+
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
30+
chmod +x ./kubectl
31+
fi
32+
- name: Run Helm Template
33+
run: |
34+
${{ steps.helm.outputs.helm-path }} template argocd oci://registry-1.docker.io/bitnamicharts/argo-cd \
35+
--namespace=argocd \
36+
--wait \
37+
--timeout 120m \
38+
-f ${{ github.workspace }}/base-helm-configs/argocd/helm-argocd-overrides.yaml \
39+
--post-renderer ${{ github.workspace }}/base-kustomize/kustomize.sh \
40+
--post-renderer-args argocd/${{ matrix.overlays }} > /tmp/rendered.yaml
41+
- name: Return helm Build
42+
uses: actions/upload-artifact@v4
43+
with:
44+
name: helm-argocd-artifact-${{ matrix.overlays }}
45+
path: /tmp/rendered.yaml

.github/workflows/kustomize-argocd.yaml

Lines changed: 0 additions & 37 deletions
This file was deleted.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
---

base-kustomize/argocd/base/kustomization.yaml

Lines changed: 1 addition & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,4 @@ sortOptions:
33
resources:
44
- namespace.yaml
55

6-
namespace: argocd1
7-
helmGlobals:
8-
chartHome: ../charts/
9-
helmCharts:
10-
- name: argo-cd
11-
includeCRDs: true
12-
valuesFile: values.yaml
13-
releaseName: argocd
14-
version: 5.51.5
15-
repo: https://argoproj.github.io/argo-helm
16-
patches:
17-
- target:
18-
kind: Pod
19-
patch: |-
20-
$patch: delete
21-
apiVersion: v1
22-
kind: Pod
23-
metadata:
24-
name: argocd-redis-ha-service-test
6+
namespace: argocd

base-kustomize/argocd/base/values.yaml

Lines changed: 0 additions & 39 deletions
This file was deleted.

bin/install-argocd.sh

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
#!/bin/bash
2+
3+
# Default parameter value
4+
TARGET=${1:-base}
5+
6+
# Directory to check for YAML files
7+
CONFIG_DIR="/etc/genestack/helm-configs/argocd"
8+
9+
# Helm command setup
10+
HELM_CMD="helm upgrade --install argocd oci://registry-1.docker.io/bitnamicharts/argo-cd \
11+
--namespace=argocd \
12+
--timeout 120m \
13+
--post-renderer /etc/genestack/kustomize/kustomize.sh \
14+
--post-renderer-args argocd/${TARGET} \
15+
-f /opt/genestack/base-helm-configs/argocd/argocd-helm-overrides.yaml"
16+
17+
# Check if YAML files exist in the specified directory
18+
if compgen -G "${CONFIG_DIR}/*.yaml" > /dev/null; then
19+
# Add all YAML files from the directory to the helm command
20+
for yaml_file in "${CONFIG_DIR}"/*.yaml; do
21+
HELM_CMD+=" -f ${yaml_file}"
22+
done
23+
fi
24+
25+
# Run the helm command
26+
echo "Executing Helm command:"
27+
echo "${HELM_CMD}"
28+
eval "${HELM_CMD}"

docs/infrastructure-argocd.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# Deploy a argocd
2+
3+
## Install Argocd
4+
5+
!!! example "Run the argocd deployment Script `bin/install-argocd.sh`"
6+
7+
``` shell
8+
--8<-- "bin/install-argocd.sh"
9+
```
10+
11+
12+
## Verify readiness with the following command.
13+
14+
``` shell
15+
kubectl --namespace argocd get horizontalpodautoscaler.autoscaling argocd -w
16+
```

0 commit comments

Comments
 (0)