openpitrix

Manage KubeSphere App Store repositories, templates, versions, and releases via OpenPitrix APIs.

17.0k|2.8k|Updated Apr 21, 2018
One-click install
npx skills add https://github.com/kubesphere/kubesphere --skill openpitrix
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: openpitrix
Source: https://github.com/kubesphere/kubesphere/tree/main/skills/openpitrix
Command: npx skills add https://github.com/kubesphere/kubesphere --skill openpitrix

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Managing KubeSphere's application lifecycle—App Store templates, Helm repositories, version reviews, and installed releases—requires navigating two API generations (application.kubesphere.io/v2 and legacy openpitrix.io) with subtle differences in request shapes, labels, and action semantics that frequently cause errors.

Core Features & Use Cases

  • Repository and Template Management: Create, sync, and troubleshoot Helm app repositories, upload app templates, and manage Application/ApplicationVersion resources with correct labels and object-shaped request bodies.
  • Release Operations and Troubleshooting: Create, upgrade, and diagnose ApplicationRelease installations using kubectl label selectors, executor Job inspection, and controller log analysis.
  • App Store Administration: Handle categories, version reviews, metadata patches, and attachment uploads across enterprise-space and component-dock console areas.
  • Use Case: A platform admin needs to publish an uploaded Helm chart to the App Store: the Skill guides querying the upload repo label, submitting the version for review, approving it with the correct state-based action body, and verifying the release deployment.

Quick Start

Ask the assistant to list all app repositories in a workspace and troubleshoot any that are stuck syncing.

Frequently Asked Questions about openpitrix

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create an app repository in KubeSphere?

Create a Repo object via POST to /kapis/application.kubesphere.io/v2/workspaces/{workspace}/repos with metadata.name, a kubesphere.io/workspace label, and spec.url plus spec.syncPeriod. The API validates the Helm repository index before persisting it.

How do I troubleshoot a failed ApplicationRelease installation?

Describe the ApplicationRelease with kubectl, then list Jobs and Pods using the application.kubesphere.io/app-release-name label selector in the target namespace. Fetch executor Pod logs and verify spec.appVersionID and cluster/namespace labels.

What is the difference between application.kubesphere.io/v2 and openpitrix.io APIs?

application.kubesphere.io/v2 is the current KubeSphere 4.x API using Repo, Application, ApplicationVersion, ApplicationRelease, and Category resources. Legacy openpitrix.io/v2 and v2alpha1 APIs wrap older HelmRepo/HelmApplication resources with snake_case fields and action-based request bodies.

Why is my uploaded app version missing from the review list?

The /reviews endpoint only lists versions whose repo label is application.kubesphere.io/repo-name=upload and whose status is a review state such as submitted. Verify the ApplicationVersion belongs to the upload repo and check its state with kubectl.

When should I use kubectl versus ks_api.py versus curl for KubeSphere APIs?

Use kubectl for inspecting CRDs, events, and controller logs. Use ks_api.py for JSON KAPI calls with cached token authentication. Use curl for multipart attachment uploads, package downloads, or custom headers.