Skip to content
Cloud & Infrastructure
Skill

/kubesphere-devops-argocd

Use when configuring ArgoCD in KubeSphere DevOps, including GitOps deployments, application management, SSO setup, or troubleshooting ArgoCD issues

From plugin
kubesphere
17k32 skills
Install
$ npx -y skills add kubesphere/kubesphere --skill kubesphere-devops-argocd --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/kubesphere-devops-argocd

Context preview

The summary Claude sees to decide when to auto-load this skill.

Use when configuring ArgoCD in KubeSphere DevOps, including GitOps deployments, application management, SSO setup, or troubleshooting ArgoCD issues

SKILL.md

kubesphere-devops-argocd.SKILL.md
name: kubesphere-devops-argocd
description: Use when configuring ArgoCD in KubeSphere DevOps, including GitOps deployments, application management, SSO setup, or troubleshooting ArgoCD issues

KubeSphere DevOps ArgoCD Configuration

Overview

KubeSphere DevOps includes **ArgoCD v2.11.7** as a bundled subchart for GitOps continuous deployment. ArgoCD follows the declarative GitOps pattern, automatically syncing application state with Git repositories.

When to Use

  • Setting up GitOps continuous deployment
  • Configuring ArgoCD applications and ApplicationSets
  • Enabling SSO authentication via Dex
  • Managing multi-cluster deployments
  • Troubleshooting ArgoCD sync issues
  • Configuring repository credentials

KubeSphere GitOps Integration

Two Ways to Create Applications

**1. Direct ArgoCD Application (Admin Only)**

  • Created in `argocd` namespace
  • Requires access to ArgoCD namespace
  • Full control over ArgoCD configuration

**2. KubeSphere GitOps Application (Tenant-Friendly)**

  • Created via `/kapis/gitops.kubesphere.io/v1alpha1/`
  • Application CR created in tenant namespace
  • KubeSphere automatically creates corresponding ArgoCD Application
  • Tenant doesn't need direct ArgoCD access

Architecture

┌─────────────────────────────────────────────────────────────┐
│                    Tenant Namespace                          │
│  ┌──────────────────────────────────────────────┐           │
│  │  Application (gitops.kubesphere.io/v1alpha1) │           │
│  │  - Created by tenant via KubeSphere API      │           │
│  │  - Label: gitops.kubesphere.io/argocd-location: argocd │  │
│  └──────────────────┬───────────────────────────┘           │
└──────────────────────┼──────────────────────────────────────┘
                       │
                       │ KubeSphere Controller watches
                       │ and creates corresponding
                       ▼
┌─────────────────────────────────────────────────────────────┐
│                    argocd Namespace                          │
│  ┌──────────────────────────────────────────────┐           │
│  │  Application (argoproj.io/v1alpha1)          │           │
│  │  - Created automatically by KubeSphere       │           │
│  │  - References tenant namespace as target     │           │
│  └──────────────────┬───────────────────────────┘           │
└──────────────────────┼──────────────────────────────────────┘
                       │
                       │ ArgoCD Controller reconciles
                       ▼
┌─────────────────────────────────────────────────────────────┐
│                    Tenant Namespace                          │
│  ┌──────────────────────────────────────────────┐           │
│  │  Deployed Resources (Pods, Services, etc.)   │           │
│  │  - Created by ArgoCD                         │           │
│  │  - Managed via GitOps                        │           │
│  └──────────────────────────────────────────────┘           │
└─────────────────────────────────────────────────────────────┘

Key Differences

| Aspect | Direct ArgoCD | KubeSphere GitOps | |--------|---------------|-------------------| | **Namespace** | `argocd` | Tenant's namespace | | **Access Required** | ArgoCD namespace | Tenant namespace only | | **API Endpoint** | N/A (kubectl) | `/kapis/gitops.kubesphere.io/v1alpha1/` | | **Tenant Can Create** | ❌ No | ✅ Yes | | **ArgoCD UI Access** | ✅ Yes | ❌ No (transparent) | | **Multi-tenancy** | Shared | Isolated per tenant |

Architecture

ArgoCD Components

| Component | Pod Name Pattern | Purpose | |-----------|------------------|---------| | Application Controller | `devops-agent-argocd-application-controller-*` | Reconciles Application state | | ApplicationSet Controller | `devops-agent-argocd-applicationset-controller-*` | Manages ApplicationSet CRDs | | Dex Server | `devops-agent-argocd-dex-server-*` | SSO authentication proxy | | Notifications Controller | `devops-agent-argocd-notifications-controller-*` | Event notifications | | Redis | `devops-agent-argocd-redis-*` | Cache and state storage | | Repo Server | `devops-agent-argocd-repo-server-*` | Git repository operations | | ArgoCD Server | `devops-agent-argocd-server-*` | API and UI |

**Namespace:** `argocd` (configurable via `argocd.namespace`)

Installation & Verification

Check ArgoCD Status

# Verify ArgoCD namespace exists
kubectl get ns argocd

# Check all ArgoCD pods
kubectl get pods -n argocd

# Check ArgoCD services
kubectl get svc -n argocd

Access ArgoCD UI

# Get ArgoCD server service
kubectl get svc devops-agent-argocd-server -n argocd

# Port-forward for local access
kubectl port-forward svc/devops-agent-argocd-server -n argocd 8080:443

# Get initial admin password
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath='{.data.password}' | base64 -d

# Access via: https://localhost:8080
# Username: admin
# Password: (from command above)

Configuration

Enable/Disable ArgoCD

In DevOps InstallPlan:

apiVersion: kubesphere.io/v1alpha1
kind: InstallPlan
metadata:
  name: devops
  namespace: kubesphere-system
spec:
  extension:
    name: devops
    version: 1.2.4
  enabled: true
  upgradeStrategy: Manual
  config: |
    agent:
      argocd:
        enabled: true           # Enable ArgoCD
        namespace: "argocd"     # ArgoCD namespace

Custom ArgoCD Configuration

config: |
  agent:
    argocd:
      enabled: true
      namespace: "argocd"
      # Full ArgoCD Helm values available
      # See: kse-extensions/devops/charts/agent/charts/argo-cd/values.yaml
      configs:
        cm:
          url: "https://argocd.example.com"
          admin.enabled: "true"

Managing Applications

Create an Application

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: my-app
  namespace: argocd
spec:
  project: default
  source:
    repoURL: https://github.com/example/repo.git
    targ
Read more
Ships withkubesphere

The container platform tailored for Kubernetes multi-cloud, datacenter, and edge management ⎈ 🖥 ☁️

Get the whole plugin

Other skills on kubesphere.