# Licensed to the Apache Software Foundation (ASF) under one or more contributor
# license agreements; and to You under the Apache License, Version 2.0.

# Example: “Hello world” with input values set from environment variables
packages:
  hello_world_package:
    version: 1.0
    license: Apache-2.0
    actions:
      hello_world_env_var_parms:
        function: src/hello.js
        inputs:
          name: $FIRSTNAME
          place:
            value: ${TOWN}, ${COUNTRY}
        outputs:
          greeting: string
