#data-source #secure-communication #provider #daemon #fiberplane #configuration

app fpd

The Fiberplane Daemon enables secure communication between Fiberplane and your data sources using WebAssembly-based providers

2 stable releases

2.7.2 Feb 14, 2023
1.0.0 Feb 14, 2023

#528 in WebAssembly

MIT/Apache

10MB
3.5K SLoC

Fiberplane Daemon

The Fiberplane Daemon allows executing Providers outside of the Studio. This can be useful in situation where direct access from the Studio to a resource is not available. It does require that the Daemon has access to the resource in question.

Unlike a HTTP proxy, this Daemon won't simply forward requests. Rather, it will invoke a Provider, that will fetch the actual data.

Quickstart

cargo install --locked fpd
fpd pull --all
${EDITOR} "$(fpd config paths data-sources)"

Installation

With cargo

Once the crate is published on crates.io, you will be able to do

cargo install --locked fpd

Otherwise, with a cloned version of the repository

cargo install --path .

Kubernetes

Instructions to run on Kubernetes coming soon

Setup

Finding configuration directories

To know where the Fiberplane Daemon is looking for its configuration file (data_sources.yaml) and its providers, you can use

fpd config paths

This is where you should put your providers and data_sources.yaml (the exact value depends on the platform).

Download pre-built providers

To download all first-party (Fiberplane) providers, you can use

fpd pull --all

Check fpd pull --help to see the supported providers if you want to pull only some of them.

Run

Once you the configuration is ready (including the token from fp or from Studio when adding a daemon), you can run it with

fpd --token $TOKEN

You can always check fpd --help if you need more guidance

Overview

The following diagram shows the interaction between the Studio, Daemon (showing up as "Proxy", its legacy name), and their Providers (source):

Dependencies

~23–41MB
~690K SLoC