Create an Edge Application
This article describes all the required steps to create an Edge Application with the weeve Manager.

What are Edge Applications?

A weeve Edge Application is software that runs on the edge. The software is built in a modular way. The Edge Application Builder in the weeve Manager allows the platform operator to create and configure Edge Applications (data pipelines/apps), following an intuitive building block approach. These Edge Applications consist of modules (docker containers), which are categorized into three different types; input, process and output. Each Edge Application consists of at least one module from each type. The input (ingress) module defines the source of the data, the processing module(s) defines how the data is treated while the output module (egress) defines the data target. The target is controlled by the data owner and can for example be a database, dashboard or third-party service provider. Each module needs to be configured individually according to its corresponding settings.
Edge Applications can be saved in the Edge Application Library and be deployed to multiple weeve Edge—Nodes directly from the Edge Application Builder. In order to deploy an Edge Application, it must be created and configured according to the platform requirements as well as to the data input type and capacity of the executing hardware. The weeve Edge—Nodes need to be registered and provisioned to the platform before the deployment.

How to create an Edge Application

1. Access the Edge Application builder

On the top navigation bar, select Edge Applications and choose Create Edge Application in the toolbar.
Edge Application Libraray

2. Select the modules for your Edge Application

In the modules panel on the left, use the filter option to select all input modules. To build a working edge application you need to select at least one input, one process, and one output module and connect them.
Edge Application Builder

3. Adjust the module properties

Click on the module to open up the properties panel on the right. Here you can specify the module settings and click Apply. You need to adjust the setting of each module since the default values most probably won't fir to your requirements.
Adjust Module Properties

4. Connect all modules

Make sure all modules are configured and connected with each other.
Built and Configured Edge Application

5. Name and Save your Edge Application

Now is a good time to save the edge application you just built. You may save it any time during the building process but in order to move to the deployment part saving is mandatory. Enter a name (and potentially a number for the version) on the top of the toolbar. Now the Select Nodes button is active and you can click it to proceed.
Saving the Edge Application

6. Select nodes to deploy your Edge Application to

In the table, you will find all available nodes. Select them by clicking inside the checkbox on the left of each column. You can deploy your Edge Application to several nodes at once. To start the deployment process, click the deploy button in the top right corner.
Select Node(s) and Deploy Edge Application

7. Deployment Status and Undeployment

As soon as you click deploy, the process of deploying has started and you will see Orchestration Status "Initated". You can stay and refresh this screen to see the status updates until the app is running.
You can also go back to the dashboard view and to your workspace and you will see the most recently deployed Edge Applications on the bottom. You can stop (undeploy) them from here if you want to stop and delete the edge application from your node.
If you want to check the status of your deployment Edge Application Library > Click on the App you want to check
Edge Applications
Edge Applications with App Status

Troubleshooting

If you run into trouble and the status doesn't change from initiated to Running or you get an Error status, you can try to SSH into your node and check the logs of the agent by typing this command.
tail -f weeve-agent/Weeve_agent.log
You will see the following message for example if you try to deploy the same edge application twice:
2022-07-12 10:32:04 info : Processing the message >> DEPLOY
2022-07-12 10:32:04 info : My-First-Edge-Application-1 | DEPLOYing data service ...
2022-07-12 10:32:04 info : My-First-Edge-Application-1 | Data service My-First-Edge-Application, 1 already exist!
2022-07-12 10:32:04 error : data service already exists
In this case, try to undeploy the already deployed Edge Applcaition from the UI or to stop all docker containers running on the node and deploy again.
You can also post some questions on the Discord Channel if you run into trouble by clicking the link to Discord on the left panel on this page.