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.gitcd 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