Skupper CLI commands¶
Command index¶
Site operations
| Site | Overview of site commands |
|---|---|
| Site create | A site is a place where components of your application are running |
| Site update | Change site settings of a given site |
| Site delete | Delete a site |
| Site status | Display the current status of a site |
| Site generate | A site is a place where components of your application are running |
Site linking
| Token | Overview of token commands |
|---|---|
| Token issue | Issue a token file redeemable for a link to the current site |
| Token redeem | Redeem a token file in order to create a link to a remote site |
| Link | Overview of link commands |
|---|---|
| Link update | Change link settings |
| Link delete | Delete a link by name |
| Link status | Display the status of links in the current site |
| Link generate | Generate a new link resource as a YAML output, unless explicitly specified otherwise using the --output flag |
Service exposure
| Listener | Overview of listener commands |
|---|---|
| Listener create | Clients at this site use the listener host and port to establish connections to the remote service |
| Listener update | Clients at this site use the listener host and port to establish connections to the remote service |
| Listener delete | Delete a listener |
| Listener status | Display status of all listeners or a specific listener |
| Listener generate | Clients at this site use the listener host and port to establish connections to the remote service |
| Connector | Overview of connector commands |
|---|---|
| Connector create | Clients at this site use the connector host and port to establish connections to the remote service |
| Connector update | Clients at this site use the connector host and port to establish connections to the remote service |
| Connector delete | Delete a connector |
| Connector status | Display status of all connectors or a specific connector |
| Connector generate | Clients at this site use the connector host and port to establish connections to the remote service |
System operations
| System | Overview of system commands |
|---|---|
| System install | Checks the local environment for required resources and configuration |
| System uninstall | Remove local system infrastructure, undoing the configuration changes made by skupper system install, by disabling the Podman/Docker API |
| System start | Start the Skupper router for the current site |
| System stop | Stop the Skupper router for the current site |
| System reload | Forces to overwrite an existing namespace based on input/resources, if the namespace is not provided, the default one is going to be reloaded |
| System apply | Create or update resources using files or standard input |
| System delete | Delete resources using files or standard input |
| System generate-bundle | Generate a self-contained site bundle for use on another machine |
Debugging operations
| Debug | Overview of debug commands |
|---|---|
| Debug check | Run diagnostic checks |
| Debug dump | Create a tarball including site resources and status; component versions, config files, and logs; and info about the environment where Skupper is running |
Other operations
| Version | Report the version of the Skupper CLI binary |
|---|
Overview¶
Skupper uses the skupper command as its command-line interface (CLI)
for creating and operating Skupper networks.
Capabilities¶
In its primary role, the Skupper CLI is a thin layer on top of the standard Skupper resources. Its job is to configure sites, listeners, and connectors. It additionally provides commands for site linking, system operation, and troubleshooting.
- Resource configuration: Create, update, and delete Skupper resources.
- Resource status: Display the current state of Skupper resources.
- Resource generation: Produce Skupper resources in YAML or JSON format.
- Site linking: Use tokens to set up site-to-site links.
- System operation: Install and operate Skupper runtime components.
- Troubleshooting: Use debugging tools to identify and fix problems.
By design, the Skupper CLI does not do everything the Skupper resources can do. We encourage you to use the resources directly for advanced use cases.
Usage¶
command: A resource type or functional area.subcommand: The specific operation you want to perform.options: Additional arguments that change the operation's behavior.
Context¶
Skupper commands operate with a current platform and namespace (with a few exceptions). On Kubernetes, there is additionally a current kubeconfig and context. You can use CLI options or environment variables to change the current selection.
On Docker, Podman, and Linux, the current namespace defaults to
default.
Blocking¶
On Kubernetes, resource operations block until the desired outcome is
achieved, an error occurs, or the timeout is exceeded. You can change
the wait condition and the timeout duration using the --wait and
--timeout options.
- Site and link operations block until the resource is ready.
- Listener and connector operations block until the resource is configured.
- All resource delete operations block until deletion is complete.
On Docker, Podman, and Linux, resource operations do not block.
Instead, they place the resources in the input location. Changes are
applied when the user invokes skupper system reload.
Errors¶
The Skupper CLI returns a non-zero exit code indicating an error when:
- User input is invalid.
- Referenced resources are not found.
- The operation fails or times out.
Resource commands¶
skupper <resource-type> create <resource-name> [options]
skupper <resource-type> update <resource-name> [options]
skupper <resource-type> delete <resource-name> [options]
skupper <resource-type> status [resource-name] [options]
skupper <resource-type> generate <resource-name> [options]
These commands operate on Skupper sites, links, listeners, and connectors.
Resource properties are set using one or more --some-key some-value
command-line options. YAML resource options in camel case (someKey)
are exposed as hyphenated names (--some-key) when used as options.
The create, update, and delete commands control the lifecycle of
Skupper resources and configure their properties.
The status commands display the current state of resources. If no
resource name is specified, they list the status of all resources of
the given type.
The generate commands produce Skupper resources as YAML or JSON
output. They are useful for directing the output to files or other
tools.
Token commands¶
These commands use access tokens to create links between sites.
The token issue command creates an access token for use in remote
sites. The token redeem command uses an access token to create a
link to the issuing site.
System commands¶
skupper system install [options]
skupper system uninstall [options]
skupper system start [options]
skupper system stop [options]
skupper system reload [options]
skupper system status [options]
skupper system apply [options]
skupper system delete [options]
skupper system generate-bundle [options]
These commands configure and operate the Skupper runtime components for Docker, Podman, and Linux sites.
Debug commands¶
These commands help you troubleshoot problems.
Version command¶
The version command displays the versions of Skupper components.