Get the FREE Ultimate OpenClaw Setup Guide →

Violet Upload

npx machina-cli add skill typhoonzero/awesome-acp-skills/violet-upload --openclaw
Files (1)
SKILL.md
3.0 KB

Violet Package Upload

This skill provides instructions for using the violet CLI tool to upload software packages (Operators, Cluster Plugins, and Helm Charts) to the platform.

Overview

The violet CLI tool allows you to upload software packages from your custom portal to the platform. It supports three types of packages:

  • Operators
  • Cluster Plugins
  • Helm Charts

Prerequisites

Before using the violet CLI, ensure you have:

  1. The violet CLI tool installed and accessible in your path.
  2. A valid platform user account with the System role property and the platform-admin-system role name.
  3. The following information:
    • Platform access address (--platform-address)
    • Platform username (--platform-username)
    • Platform password (--platform-password)

Usage

The general syntax for uploading a package is:

violet push <package_path> --platform-address <address> --platform-username <username> --platform-password <password> [options]

1. Uploading Operators

Use this command to upload an Operator package.

Command:

violet push <operator_package.tgz> \
  --platform-address <address> \
  --platform-username <username> \
  --platform-password <password> \
  [--clusters <cluster_list>] \
  [--target-chartrepo <repo>] \
  [--force] \
  [--skip-push]

Specific Options:

  • --clusters: (Optional) Specify which clusters to upload to (comma-separated, e.g., global,cluster1). Defaults to global if omitted.
  • --target-chartrepo: (Optional) Upload to a specific catalog source.

2. Uploading Cluster Plugins

Use this command to upload a Cluster Plugin package.

Command:

violet push <plugin_package.tgz> \
  --platform-address <address> \
  --platform-username <username> \
  --platform-password <password> \
  [--force] \
  [--skip-push]

Note: Uploading cluster plugins does not support the --clusters parameter. To upload only to the global cluster, you must configure ModulePlugin.

3. Uploading Helm Charts

Use this command to upload a Helm Chart package.

Command:

violet push <chart_package.tgz> \
  --platform-address <address> \
  --platform-username <username> \
  --platform-password <password> \
  [--force] \
  [--skip-push]

Note: The upload process does not support specifying a template repository. Packages are uploaded to public-charts by default.

Common Parameters

ParameterDescription
args[0]Required. The file path of the package to upload. For multiple packages, specify the directory path.
--platform-addressRequired. The access address of the platform.
--platform-usernameRequired. Username of a local user with the Platform Administrator role.
--platform-passwordRequired. Password for the username.
--skip-pushOptional. Create upload-related resources without pushing images.
--forceOptional. Forcibly overwrite and update related resources if images already exist.
--debugOptional. Print debug log information.

Source

git clone https://github.com/typhoonzero/awesome-acp-skills/blob/master/violet-upload/SKILL.mdView on GitHub

Overview

Violet Package Upload provides instructions for using the violet CLI tool to upload software packages (Operators, Cluster Plugins, and Helm Charts) to the platform. It covers three package types and explains prerequisites and basic usage.

How This Skill Works

Ensure the violet CLI is installed and your platform user has the System role property and the platform-admin-system role. Then run violet push <package_path> with --platform-address, --platform-username, and --platform-password; for Operators you can set --clusters and --target-chartrepo, for Cluster Plugins the --clusters option is not supported, and Helm Charts upload to public-charts by default. Common flags like --force, --skip-push, and --debug control push behavior.

When to Use It

  • Publish an Operator to the global cluster or specific clusters using --clusters
  • Upload a Cluster Plugin package to the platform (no --clusters support)
  • Add a Helm Chart to the platform, which goes to the public-charts catalog by default
  • Overwrite existing package resources with --force during upload
  • Upload multiple packages from a directory in a single command

Quick Start

  1. Step 1: Install the violet CLI and ensure it is in your system PATH
  2. Step 2: Gather platform address, username, and password for a user with the System role property and platform-admin-system role
  3. Step 3: Run violet push <package_path> --platform-address <address> --platform-username <username> --platform-password <password> [options]

Best Practices

  • Verify the violet CLI is installed and on your PATH
  • Use a valid platform user with the System role property and the platform-admin-system role
  • For Operators, specify explicit clusters with --clusters or rely on the global default
  • Note that Cluster Plugins do not support --clusters; use ModulePlugin to target global if needed
  • Use --force cautiously and consider --debug or --skip-push to validate before pushing

Example Use Cases

  • violet push op-1.0.0.tgz --platform-address address --platform-username user --platform-password pass --clusters global,cluster1 --target-chartrepo repo --force
  • violet push op-1.0.0.tgz --platform-address address --platform-username user --platform-password pass --clusters global
  • violet push plugin-2.1.0.tgz --platform-address address --platform-username user --platform-password pass --force --skip-push
  • violet push chart-0.3.0.tgz --platform-address address --platform-username user --platform-password pass
  • violet push chart-0.3.0.tgz --platform-address address --platform-username user --platform-password pass --debug

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers