volcano-cli

module
v0.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 15, 2026 License: Apache-2.0

README

volcano-cli

volcano is the command-line client for Volcano, Kong's hosting platform. It provides local development workflows and hosted API commands from a standalone Go CLI.

Quickstart

Install the latest published release:

curl -fsSL https://github.com/Kong/volcano-cli/releases/latest/download/install.sh | bash

Build from source:

make build
./volcano --help
./volcano --version
make test

From the CLI checkout, create an empty sibling project directory and run it:

VOLCANO_CLI="$(pwd)/volcano"
mkdir ../volcano-quickstart
cd ../volcano-quickstart
"$VOLCANO_CLI" init javascript
"$VOLCANO_CLI" start
"$VOLCANO_CLI" variables deploy
"$VOLCANO_CLI" functions deploy --all
"$VOLCANO_CLI" config deploy
"$VOLCANO_CLI" migrations deploy --all -d app

volcano init without a template creates a base scaffold (environment files, migrations directory, and README). Use a template to add language-specific files: javascript (aliases: js, node, nodejs), nextjs, python, or ruby.

Contributing

See CONTRIBUTING.md for local workflows, generated-code guidance, release notes, and pull request expectations. Participation is governed by CODE_OF_CONDUCT.md.

If you believe you have found a security vulnerability, do not open a public issue. Follow SECURITY.md instead.

License

Volcano CLI is licensed under the Apache License, Version 2.0. See LICENSE.

Directories

Path Synopsis
cmd
volcano command
Volcano is the CLI entry point.
Volcano is the CLI entry point.
internal
api
Package api is the HTTP client for the Volcano cloud API.
Package api is the HTTP client for the Volcano cloud API.
apiclient
Package apiclient provides primitives to interact with the openapi HTTP API.
Package apiclient provides primitives to interact with the openapi HTTP API.
apiclient/common
Package common provides primitives to interact with the openapi HTTP API.
Package common provides primitives to interact with the openapi HTTP API.
archive
Package archive contains shared helpers for working with tar.gz archives produced by the CLI: byte-size formatting and multipart upload framing.
Package archive contains shared helpers for working with tar.gz archives produced by the CLI: byte-size formatting and multipart upload framing.
auth
Package auth implements the device-code login flow against the cloud API.
Package auth implements the device-code login flow against the cloud API.
cmd/auth
Package auth wires the volcano login/logout/whoami commands.
Package auth wires the volcano login/logout/whoami commands.
cmd/cloud
Package cloud wires commands that target the hosted Volcano API.
Package cloud wires commands that target the hosted Volcano API.
cmd/cmdutil
Package cmdutil contains shared Cobra command helpers.
Package cmdutil contains shared Cobra command helpers.
cmd/config
Package config wires the config command tree for project configuration.
Package config wires the config command tree for project configuration.
cmd/databases
Package databases wires the volcano databases subcommands.
Package databases wires the volcano databases subcommands.
cmd/databases/migration
Package migration runs SQL migrations against a Volcano database connection.
Package migration runs SQL migrations against a Volcano database connection.
cmd/frontends
Package frontends wires the volcano frontends subcommands.
Package frontends wires the volcano frontends subcommands.
cmd/functions
Package functions wires the volcano functions subcommands.
Package functions wires the volcano functions subcommands.
cmd/functions/schedulers
Package schedulers wires the volcano functions schedulers subcommands.
Package schedulers wires the volcano functions schedulers subcommands.
cmd/init
Package initcmd wires the volcano init command.
Package initcmd wires the volcano init command.
cmd/local
Package local wires commands that target the local development server.
Package local wires commands that target the local development server.
cmd/localmode
Package localmode wires top-level local-mode environment commands.
Package localmode wires top-level local-mode environment commands.
cmd/project
Package project wires the volcano project subcommands.
Package project wires the volcano project subcommands.
cmd/root
Package root assembles the top-level volcano command and its subcommands.
Package root assembles the top-level volcano command and its subcommands.
cmd/storage
Package storage provides storage commands.
Package storage provides storage commands.
cmd/storage/bucket
Package bucket provides storage bucket commands.
Package bucket provides storage bucket commands.
cmd/storage/object
Package object provides storage object commands.
Package object provides storage object commands.
cmd/storage/policy
Package policy provides storage policy commands.
Package policy provides storage policy commands.
cmd/upgrade
Package upgrade implements the top-level CLI self-upgrade command.
Package upgrade implements the top-level CLI self-upgrade command.
cmd/variables
Package variables wires the volcano variables subcommands.
Package variables wires the volcano variables subcommands.
config
Package config loads and persists the CLI configuration in ~/.volcano/config.json.
Package config loads and persists the CLI configuration in ~/.volcano/config.json.
confirm
Package confirm prompts the user for yes/no confirmation on stdin.
Package confirm prompts the user for yes/no confirmation on stdin.
database
Package database holds shared types and helpers for the databases subcommands.
Package database holds shared types and helpers for the databases subcommands.
envfile
Package envfile parses .env files into key/value pairs.
Package envfile parses .env files into key/value pairs.
frontend
Package frontend builds and packages frontend project archives for upload.
Package frontend builds and packages frontend project archives for upload.
function
Package function builds and packages function archives for upload.
Package function builds and packages function archives for upload.
ignore
Package ignore decides which files to skip when packaging a project tree.
Package ignore decides which files to skip when packaging a project tree.
localmode
Package localmode contains the standalone CLI's local-mode contract.
Package localmode contains the standalone CLI's local-mode contract.
output
Package output formats command results for human and machine consumers.
Package output formats command results for human and machine consumers.
project
Package project resolves and persists the currently selected Volcano project.
Package project resolves and persists the currently selected Volcano project.
projectconfig
Package projectconfig handles declarative cloud project configuration manifests (volcano-config.yaml) that describe storage buckets, storage policies, and function visibility for a project.
Package projectconfig handles declarative cloud project configuration manifests (volcano-config.yaml) that describe storage buckets, storage policies, and function visibility for a project.
projectinit
Package projectinit creates the on-disk Volcano project scaffold.
Package projectinit creates the on-disk Volcano project scaffold.
runtime
Package runtime exposes process and timing dependencies for command tests.
Package runtime exposes process and timing dependencies for command tests.
session
Package session resolves the authenticated client and active project for a command run.
Package session resolves the authenticated client and active project for a command run.
storage
Package storage performs authenticated Volcano storage workflows.
Package storage performs authenticated Volcano storage workflows.
update
Package update checks for and installs Volcano CLI releases.
Package update checks for and installs Volcano CLI releases.
variable
Package variable holds shared types and helpers for the variables subcommands.
Package variable holds shared types and helpers for the variables subcommands.
version
Package version exposes build-time identifiers injected via -ldflags.
Package version exposes build-time identifiers injected via -ldflags.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL