Call (Packages)

RWX packages are external task definitions that are similar to GitHub's Actions.

To use a package, add call instead of run to your task definition.

View all available packages

Example

tasks:
  - key: greeting
    call: rwx/greeting 1.0.3
    with:
      name: world

The logs for this task will contain:

hello world!

Semantic Versioning

When calling a package, you must specify a version number.

You can only specify an exact version. You cannot specify a range or use any sort of semver notation.

RWX enforces semver. Packages cannot add required parameters or remove available parameters without updating the major version number.

Bumping Package Versions

You can use the RWX CLI to update packages to the latest version. Run:

rwx packages update

The CLI will print the list of packages that it updated:

Updated the following packages:
        git/clone 1.1.7 -> git/clone 1.1.9
        nodejs/install 1.0.5 -> nodejs/install 1.0.6

By default, the CLI will only apply minor version updates.

To check for major version updates, run:

rwx packages update --allow-major-version-change

The CLI looks for any files matching .rwx/*.yml. You can also specify a file if you only want to update a single file. See rwx packages update --help for all configuration options.

Development

Currently, only RWX can develop packages. Support for third-party packages will be enabled in the future.

Available Packages

View all available packages