This is the documentation for version 0.39. For documentation on the latest version of kpt, please see

Exec Runtime

Writing and running functions as executables

The Exec runtime is Alpha. It is disabled by default, and must be enabled with the --enable-exec flag.

Config functions may be run as executables outside of containers. Exec functions read input and write output like container functions, but are run outside of a container.

Running functions as executables can be useful for function development, or for running trusted executables.

Exec functions may be converted to container functions by building the executable into a container and invoking it as the container’s CMD or ENTRYPOINT.

Imperative Run

Exec functions may be run imperatively using the --exec-path flag with kpt fn run.

kpt fn run DIR/ --enable-exec --exec-path /path/to/executable

This is similar to building /path/to/executable into the container image and running – except that the executable has access to the local machine.

kpt fn run DIR/ --image

Just like container functions, exec functions accept input as arguments after --.

kpt fn run DIR/ --enable-exec --exec-path /path/to/executable -- foo=bar

Declarative Run

Exec functions may also be run by declaring the function in a resource using the annotation.

To run the declared function use kpt fn run DIR/ --enable-exec on the directory containing the example.

kind: ExampleKind
  name: function-input
  annotations: |
        path: /path/to/executable

Note: if the --enable-exec flag is not provided, kpt fn run DIR/ will ignore the exec function and exit 0.

Next Steps

Last modified August 18, 2020: Deduplicate kpt function docs (#923) (8a9a3587)