Skip to main content

Managing Providers

Managing capability providers is nearly as easy as managing actors. The only real difference is that capability providers often make demands on their hosts, and so you may find yourself performing more host auctions when scheduling providers than actors.

Launching a Provider

Launching a provider is quite easy. On the logic view, simply click the Provider+ button in the tool palette on the top left of the canvas. You will be asked to fill out a dialog box like the one below:

Launch Provider Dialog
Launch a Provider

The first thing you need to supply is the OCI reference URL. This is the publicly-accessible URL of the artifact as stored in a registry such as GitHub or Azure. In the example above, we're going to launch the wormhole-compatible web server provider from the OCI reference cosmonic.azurecr.io/httpserver_wormhole:0.3.0. Note that this particular provider only works within Cosmonic infrastructure.

For a list of fully supported open source providers, check out this GitHub repository.

Selecting a Host

Selecting a target host for a capability provider involves the same auction process as actors. Supply a list of required key-value pairs, click Find Host and Cosmonic will hold an auction among all hosts, returning to you a list of only those hosts that meet your criteria. Since you can control the labels for every host you start, and the labels you use for auctions, you have nearly unlimited flexibility when using this feature.

Terminating a Provider

Terminating a provider is quite easy. Simply select the capability provider element on the constellation canvas and click the Terminate Provider button in the details panel that appears on the right-hand side.

Link Definitions

The link definitions for this capability provider will not be removed. Link definitions exist as first-class citizens, cached and replicated throughout a constellation. When the provider starts the next time, it will automatically provision whatever resources are necessary to support the existing link definitions.