A set of tools for writing & testing expressions, managing OpenFn projects, and developing new adaptors.
🔥 The documentation for this project can be found at docs.openfn.org. 🔥
git clone git@github.com:OpenFn/devtools.git
for SSH or
git clone https://github.com/OpenFn/devtools.git
cd devtools
./install.sh ssh
or ./install.sh https
to install core,
language-common, and language-httpNote: If you get a “permission denied” message when running ./install.sh
, run
chmod +x ./install.sh
then retry the install command.
To install specific adaptors, run
./install.sh ${ssh || https} language-${name}
To interactively generate a project configuration yaml, run
./scripts/generate-project.js
You can run core from anywhere by using npm install -g
for global install
npm install -g github:openfn/core#main
Read the docs at docs.openfn.org.
execute
takes:
-l [language-xyz].Adaptor
: The adaptor being used-e [expression.js]:
The expression being tested-s [state.json]
: The message data: {...}
and
credentialconfiguration: {...}
-o [output.json]
: The file to which the output will be writtenRun a job like this:
./core/bin/core execute \
-l ./adaptors/language-XXXXXXX/ \
-s ./tmp/state.json \
-o ./tmp/output.json \
-e ./tmp/expression.js
CLI
Using the CLI via ./bin/cli
:
via Docker
docker build -t dev
docker run --rm -it \
--name devtools \
-e GH_TOKEN=$GH_TOKEN \
-v $PWD:/opt \
-v $(realpath ../adaptor):/tmp/adaptor \
devtools \
cli release /tmp/adaptor