This commit is contained in:
@@ -51,8 +51,8 @@ kubectl get nodes
|
||||
|
||||
```bash
|
||||
# 1. Clone config repository
|
||||
git clone https://github.com/fortedigital/sturdy-adventure.git
|
||||
cd sturdy-adventure
|
||||
git clone https://git.forteapps.net/Forte/launchpad
|
||||
cd launchpad
|
||||
|
||||
# 2. Set cluster name (optional)
|
||||
export CLUSTER_NAME="prod-cluster-01"
|
||||
@@ -130,10 +130,10 @@ Generate a dedicated SSH key for ArgoCD without a passphrase (required for autom
|
||||
|
||||
```bash
|
||||
# Generate ED25519 key (recommended - smaller and more secure)
|
||||
ssh-keygen -t ed25519 -C "argocd-deploy-key-sturdy-adventure" -f argocd-deploy-key -N ""
|
||||
ssh-keygen -t ed25519 -C "argocd-deploy-key-launchpad" -f argocd-deploy-key -N ""
|
||||
|
||||
# Or RSA key if ED25519 is not supported
|
||||
ssh-keygen -t rsa -b 4096 -C "argocd-deploy-key-sturdy-adventure" -f argocd-deploy-key -N ""
|
||||
ssh-keygen -t rsa -b 4096 -C "argocd-deploy-key-launchpad" -f argocd-deploy-key -N ""
|
||||
```
|
||||
|
||||
This creates two files:
|
||||
@@ -148,7 +148,7 @@ This creates two files:
|
||||
```
|
||||
|
||||
2. Go to GitHub repository settings:
|
||||
- Navigate to: `https://github.com/fortedigital/sturdy-adventure/settings/keys`
|
||||
- Navigate to: `https://git.forteapps.net/Forte/launchpad/settings/keys`
|
||||
- Or: Repository → Settings → Deploy keys
|
||||
|
||||
3. Click **"Add deploy key"**
|
||||
@@ -227,7 +227,7 @@ metadata:
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: git@github.com:fortedigital/sturdy-adventure.git
|
||||
repoURL: ssh://git@git.forteapps.net:2222/Forte/launchpad.git
|
||||
targetRevision: main
|
||||
path: cluster-resources
|
||||
destination:
|
||||
@@ -273,7 +273,7 @@ rm /tmp/test-repo-access.yaml
|
||||
# Add new public key to GitHub (keep old key for now)
|
||||
|
||||
# Update Kubernetes secret
|
||||
kubectl create secret generic repo-sturdy-adventure \
|
||||
kubectl create secret generic repo-launchpad \
|
||||
--from-file=sshPrivateKey=argocd-new-key \
|
||||
--namespace=argocd \
|
||||
--dry-run=client -o yaml | kubectl apply -f -
|
||||
@@ -290,7 +290,7 @@ rm /tmp/test-repo-access.yaml
|
||||
kubectl get secrets -n argocd -l argocd.argoproj.io/secret-type=repository
|
||||
|
||||
# Review deploy keys in GitHub
|
||||
# Visit: https://github.com/fortedigital/sturdy-adventure/settings/keys
|
||||
# Visit: https://git.forteapps.net/Forte/launchpad/settings/keys
|
||||
```
|
||||
|
||||
4. **Use Different Keys per Repository**
|
||||
@@ -304,16 +304,16 @@ rm /tmp/test-repo-access.yaml
|
||||
|
||||
```bash
|
||||
# Check if secret exists
|
||||
kubectl get secret repo-sturdy-adventure -n argocd
|
||||
kubectl get secret repo-launchpad -n argocd
|
||||
|
||||
# Verify secret has correct label
|
||||
kubectl get secret repo-sturdy-adventure -n argocd -o yaml | grep argocd.argoproj.io/secret-type
|
||||
kubectl get secret repo-launchpad -n argocd -o yaml | grep argocd.argoproj.io/secret-type
|
||||
|
||||
# Check ArgoCD application controller logs
|
||||
kubectl logs -n argocd deployment/argocd-application-controller | grep -i "permission denied"
|
||||
|
||||
# Verify deploy key is added to GitHub
|
||||
# Visit: https://github.com/fortedigital/sturdy-adventure/settings/keys
|
||||
# Visit: https://git.forteapps.net/Forte/launchpad/settings/keys
|
||||
```
|
||||
|
||||
**Issue: "Host key verification failed"**
|
||||
@@ -324,7 +324,7 @@ kubectl exec -n argocd deployment/argocd-repo-server -- \
|
||||
ssh-keyscan github.com >> ~/.ssh/known_hosts
|
||||
|
||||
# Or disable strict host key checking (less secure)
|
||||
kubectl patch secret repo-sturdy-adventure -n argocd \
|
||||
kubectl patch secret repo-launchpad -n argocd \
|
||||
--type merge \
|
||||
-p '{"stringData":{"insecure":"true"}}'
|
||||
```
|
||||
@@ -336,7 +336,7 @@ kubectl patch secret repo-sturdy-adventure -n argocd \
|
||||
kubectl logs -n argocd deployment/argocd-repo-server
|
||||
|
||||
# Refresh repository connection
|
||||
kubectl delete secret repo-sturdy-adventure -n argocd
|
||||
kubectl delete secret repo-launchpad -n argocd
|
||||
# Recreate secret (see Step 3 above)
|
||||
|
||||
# Restart ArgoCD components
|
||||
@@ -346,12 +346,12 @@ kubectl rollout restart deployment argocd-application-controller -n argocd
|
||||
|
||||
#### Multiple Repository Setup
|
||||
|
||||
For the three-repository pattern (sturdy-adventure, forte-helm, helm-values):
|
||||
For the three-repository pattern (launchpad, forte-helm, helm-values):
|
||||
|
||||
```bash
|
||||
# 1. sturdy-adventure (main config repo)
|
||||
ssh-keygen -t ed25519 -C "argocd-sturdy-adventure" -f key-sturdy -N ""
|
||||
# Add key-sturdy.pub to: https://github.com/fortedigital/sturdy-adventure/settings/keys
|
||||
# 1. launchpad (main config repo)
|
||||
ssh-keygen -t ed25519 -C "argocd-launchpad" -f key-sturdy -N ""
|
||||
# Add key-sturdy.pub to: https://git.forteapps.net/Forte/launchpad/settings/keys
|
||||
|
||||
# 2. helm-values (private values repo)
|
||||
ssh-keygen -t ed25519 -C "argocd-helm-values" -f key-helm-values -N ""
|
||||
@@ -360,7 +360,7 @@ ssh-keygen -t ed25519 -C "argocd-helm-values" -f key-helm-values -N ""
|
||||
# 3. forte-helm (private helm charts repo)
|
||||
|
||||
# Create secrets
|
||||
kubectl create secret generic repo-sturdy-adventure \
|
||||
kubectl create secret generic repo-launchpad \
|
||||
--from-file=sshPrivateKey=key-sturdy \
|
||||
--namespace=argocd --dry-run=client -o yaml | \
|
||||
kubectl label --local -f - argocd.argoproj.io/secret-type=repository --dry-run=client -o yaml | \
|
||||
@@ -385,9 +385,9 @@ If you're currently using HTTPS and want to switch to SSH:
|
||||
|
||||
# 2. Update all Application manifests
|
||||
# Change from:
|
||||
# repoURL: https://github.com/fortedigital/sturdy-adventure.git
|
||||
# repoURL: https://git.forteapps.net/Forte/launchpad
|
||||
# To:
|
||||
# repoURL: git@github.com:fortedigital/sturdy-adventure.git
|
||||
# repoURL: ssh://git@git.forteapps.net:2222/Forte/launchpad.git
|
||||
|
||||
# 3. Update and commit
|
||||
find . -name "*.yaml" -type f -exec sed -i 's|https://github.com/fortedigital/|git@github.com:fortedigital/|g' {} +
|
||||
|
||||
Reference in New Issue
Block a user