We are hiring! Apply here
SmartModule Development Kit (SMDK)

Check out the SmartModule Development Kit page for more information.

SmartModule Development Kit utility

Usage: smdk <COMMAND>

Commands:
  build     Builds SmartModule into WASM
  generate  Generates a new SmartModule Project
  test      Test SmartModule
  load      Load SmartModule into Fluvio cluster
  publish   Publish SmartModule to Hub
  help      Print this message or the help of the given subcommand(s)

Options:
  -h, --help  Print help information
 

smdk build

Builds SmartModule into WASM

Usage: smdk build [OPTIONS] [-- <EXTRA_ARGUMENTS>...]

Arguments:
  [EXTRA_ARGUMENTS]...  Extra arguments to be passed to cargo

Options:
      --release <RELEASE>            Release profile name [default: release-lto]
  -p, --package-name <PACKAGE_NAME>  Optional package/project name
  -h, --help                         Print help information
 

smdk generate

Generates a new SmartModule Project

Usage: smdk generate [OPTIONS] [NAME]

Arguments:
  [NAME]  SmartModule Project Name

Options:
      --project-group <GROUP>  SmartModule Project Group Name. Default to Hub ID, if set. Overrides
                               Hub ID if provided [env: SMDK_PROJECT_GROUP=]
      --destination <PATH>     Local path to generate the SmartModule project. Default to directory
                               with project name, created in current directory [env:
                               SMDK_DESTINATION=]
      --sm-type <TYPE>         Type of SmartModule project to generate. Skip prompt if value given
                               [env: SMDK_SM_TYPE=] [possible values: filter, map, array-map,
                               aggregate, filter-map]
      --with-params            Include SmartModule input parameters in generated SmartModule
                               project. Skip prompt if value given [env: SMDK_WITH_PARAMS=]
      --no-params              No SmartModule input parameters in generated SmartModule project.
                               Skip prompt if value given [env: SMDK_NO_PARAMS=]
  -h, --help                   Print help information (use `--help` for more detail)
 

smdk test

Test SmartModule

Usage: smdk test [OPTIONS]

Options:
      --text <TEXT>
          
      --file <FILE>
          
      --release <RELEASE>
          Release profile name [default: release-lto]
  -p, --package-name <PACKAGE_NAME>
          Optional package/project name
      --wasm-file <WASM_FILE>
          Optional wasm file path
  -e, --params <PARAMS>
          (Optional) Extra input parameters passed to the smartmodule module. They should be passed
          using key=value format Eg. fluvio consume topic-name --filter filter.wasm -e foo=bar -e
          key=value -e one=1
  -h, --help
          Print help information
 

smdk load

Load SmartModule into Fluvio cluster

Usage: smdk load [OPTIONS]

Options:
      --name <NAME>
          
      --package-path <PACKAGE_PATH>
          Optional path to SmartModule package directory
      --release <RELEASE>
          Release profile name [default: release-lto]
  -p, --package-name <PACKAGE_NAME>
          Optional package/project name
      --wasm-file <WASM_FILE>
          Optional wasm file path
  -c, --cluster <host:port>
          Address of cluster
      --tls
          Enable TLS
      --enable-client-cert
          TLS: use client cert
      --domain <DOMAIN>
          Required if client cert is used
      --ca-cert <CA_CERT>
          Path to TLS ca cert, required when client cert is enabled
      --client-cert <CLIENT_CERT>
          Path to TLS client certificate
      --client-key <CLIENT_KEY>
          Path to TLS client private key
  -P, --profile <profile>
          
      --dry-run
          Validate package config files, and connection to cluster. Skip SmartModule load to cluster
  -h, --help
          Print help information
 

smdk publish

Publish SmartModule to Hub

Usage: smdk publish [OPTIONS] [PACKAGE_META]

Arguments:
  [PACKAGE_META]  

Options:
      --pack  do only the pack portion
  -h, --help  Print help information (use `--help` for more detail)