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

project:
    name: HelloWorlds
    packages:
        helloworlds:
            actions:
                hello-js:
                    function: src/hello.js
                helloworld-js:
                    function: src/helloworld.js
