loading x elements...

We provide a tool that allows you to run Programs on your local computer. This is perfect for you, if you do not want your data to leave your computer due to privacy concerns.

Without the lod-executor, our server handles both the decision of which programs to use, and the execution of those programs on your data. With the lod-executor, your data stays with you and all programs are executed on your own computer. As our server still needs to make the decision which programs to execute, we do still need to receive parts of your data to base those decisions on, but you no longer need to upload entire files. The data we do still need to receive is of course handled with confidentiality.

This tool is also very useful for developers: if you use it, all files that are normally created on the server are instead created locally in a folder of your choice. This makes it possible to inspect Scenarios in much greater detail and makes debugging a lot easier.

Installation and Configuration

lod-executor is written for Python 3 and can be installed with pip.

If you don't have pip, install it by following the instructions here

Install lod-executor by running this command:

pip install lod-executor

After installing lod-executor, you should configure it with your login details so that you don't have to enter these every time you use the program.

lod-executor configure ...

This has several required parameters:

  • -e: your login email.
  • -p: your login password.
  • --ssl-crt: For security purposes, the lod-executor requires a locally signed ssl-certificate that is trusted by your browser. If you already have one, enter the path to it here. Otherwise, enter a path to a non-existent file here and later use the command lod-executor create-certificate to create it.
  • --ssl-key: The key file that belongs to the ssl-certificate. Handle this the same way as --ssl-crt, as --ssl-crt and --ssl-key are a pair of files that work together.
  • --exec-env-root-folder: the path to a folder in which all data will be stored that is created while the lod-executor runs Scenarios.
  • -port: The port that is used to connect your browser to the lod-executor. This defaults to 5555, but it can be any port of your choice. If you change the default, make sure to also change your settings so that your browser can find the lod-executor.

Creating a Certificate

After the configuration, if you did not use an existing ssl-certificate, you will need to create one.

To do this, you must make sure that OpenSSL is installed and on your path. Type openssl version to verify this. If it is not already installed, installation instructions depend on your operating system, but can be easily found online.

You can create the certificate with this command:

lod-executor create-certificate

After creating the certificate, you will need to tell your browser to trust it. How to do that depends on your browser and your operating system. The command that creates the certificate will also tell you how to test if you successfully configured your browser to trust the certificate.

Usage

To be able to use the lod-executor, first go to your settings and tick the check box under the header 'LOD-executor'. This tells your browser that it should connect to your lod-executor instead of the server. If you start a Scenario now, you will get a connection error because your lod-executor is not running yet.

To run your lod-executor once it is configured and the ssl-certificate is set up, simply run this command:

lod-executor run

When you start a Scenario now, the Scenario should state that you are connected to a locally running lod-executor instead of the server. The button for file uploading will also have been replaced: instead of uploading a file, you now copy-and-paste the path to the file to tell the lod-executor which file it should use (note that the lod-executor will make copies of all selected files and will not change the originals). Other than that, everything will work the same as before.