Skip to content
Back to skills

Cluster Details

ASecurity

This skill should be used when the user asks to "show cluster details", "get cluster info", "describe cluster", "cluster details", "inspect cluster", or "show cluster configuration".

  • 22 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added June 2, 2026
toolsbashrailsdebuggingapi

Works with

  • cli
  • api

Security analysis

A100/100

Scanned June 2, 2026

npx -y skills add rhpds/rhdp-skills-marketplace --skill cluster-details --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Cluster Details?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Cluster Details
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/rhpds-cluster-details/badge)](https://www.skillsdirectory.com/skills/rhpds-cluster-details)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: sandbox-cli:cluster-details
description: This skill should be used when the user asks to "show cluster details", "get cluster info", "describe cluster", "cluster details", "inspect cluster", or "show cluster configuration".
---

---
context: main
---

# Skill: cluster-details

**Name:** Sandbox Cluster Details
**Description:** Get detailed configuration and status of a specific OCP shared cluster registered with the RHDP Sandbox API.

---

## Purpose

Display the full configuration, annotations, health status, token rotation state, and quota settings for a specific cluster. This is useful for debugging cluster issues, verifying onboard configuration, or checking token rotation health.

## Workflow

### Step 1: Verify Prerequisites

Check that sandbox-cli is installed:

```bash
which sandbox-cli
```

If sandbox-cli is not installed, tell the user to run `/sandbox-cli:sandbox-setup` first and stop.

### Step 2: Verify Red Hat VPN Connection

**CRITICAL:** Always verify VPN connectivity before any sandbox-cli operation.

```bash
host squid.redhat.com
```

**If the DNS resolves** (returns an IP address like `10.x.x.x`), the user is on VPN. Proceed.

**If it fails** with `NXDOMAIN`, `not found`, or `connection timed out`, STOP and tell the user:

> You are NOT connected to the Red Hat VPN. The sandbox API is IP-restricted and all commands will fail with EOF errors. Please connect to the Red Hat VPN before proceeding.

Do NOT proceed until VPN is confirmed.

### Step 3: Check Authentication

```bash
sandbox-cli status
```

If not authenticated or token expired, tell the user to re-login:
```bash
sandbox-cli login --server <SERVER_URL> --token <TOKEN>
```

### Step 4: Identify the Cluster

If the user hasn't specified a cluster name, list all clusters to help them choose:

```bash
sandbox-cli cluster list
```

Ask the user which cluster they want details for.

### Step 5: Get Cluster Details

```bash
sandbox-cli cluster get <CLUSTER_NAME>
```

Expected output:

```json
{
  "annotations": {
    "cloud": "cnv-dedicated-shared",
    "lab": "lb1401-sec-genai-guardrails-service",
    "purpose": "dev"
  },
  "api_url": "https://api.cluster-ld7tc.dynamic.redhatworkshops.io:6443",
  "created_at": "2026-04-02T05:24:02.783263Z",
  "created_by": "ritesh",
  "data": {
    "connection_last_success_at": "2026-04-02T05:25:14.123456Z",
    "connection_status_at": "2026-04-02T05:25:14.123456Z",
    "deployer_admin_sa_token_updated_at": "2026-04-02T05:25:14.123456Z"
  },
  "deployer_admin_sa_token_refresh_interval": "24h",
  "deployer_admin_sa_token_target_var": "cluster_admin_agnosticd_sa_token",
  "deployer_admin_sa_token_ttl": "48h",
  "ingress_domain": "apps.cluster-ld7tc.dynamic.redhatworkshops.io",
  "name": "cluster-ld7tc",
  "quota_required": false,
  "skip_quota": true,
  "valid": true
}
```

### Step 6: Summarize for the User

Present the key information in a readable format:

| Field | Value |
|-------|-------|
| **Name** | cluster name |
| **Valid** | yes/no |
| **API URL** | the API endpoint |
| **Ingress Domain** | the wildcard domain for routes |
| **Created By** | who onboarded it |
| **Created At** | when it was onboarded |
| **Annotations** | cloud, purpose, lab labels |
| **Skip Quota** | whether quota enforcement is skipped |
| **Token TTL** | deployer admin SA token lifetime |
| **Token Refresh** | how often the token is refreshed |
| **Last Connection** | last successful health check |
| **Token Last Updated** | last token rotation timestamp |

Also flag any potential issues:
- If `valid` is `false`, the cluster is unreachable
- If `data.connection_last_success_at` is `0001-01-01T00:00:00Z`, the sandbox API hasn't connected yet
- If `data.deployer_admin_sa_token_updated_at` is `0001-01-01T00:00:00Z`, token rotation hasn't completed

## Key Fields

| Field | Description |
|-------|-------------|
| **annotations** | Labels used for placement matching (`cloud`, `purpose`, `lab`) |
| **api_url** | OCP API server endpoint |
| **ingress_domain** | Wildcard domain for routes (e.g., `apps.cluster-xxxxx...`) |
| **valid** | `true` if the cluster is reachable and healthy |
| **created_by** | User who onboarded the cluster |
| **skip_quota** | Whether ResourceQuota enforcement is skipped |
| **deployer_admin_sa_token_ttl** | How long the admin SA token is valid |
| **deployer_admin_sa_token_refresh_interval** | How often the token is refreshed |
| **deployer_admin_sa_token_target_var** | Variable name used to pass the token to deployers |
| **data.connection_last_success_at** | Last successful API health check |
| **data.deployer_admin_sa_token_updated_at** | Last time the deployer token was rotated |

## Important Notes

- The full output includes the cluster's service account `token` -- this is sensitive and should not be shared.
- If `data.connection_last_success_at` shows `0001-01-01T00:00:00Z`, the sandbox API hasn't successfully connected yet. This is normal immediately after onboarding -- wait a few minutes for the first health check cycle.
- If `valid` is `false`, the cluster is unreachable. Common causes: cluster decommissioned, network/firewall issues, or API certificate expired.
- To test if a cluster matches specific workload selectors, use `sandbox-cli placement dry-run --selector 'key=value'`.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.