@bluejayfinance/functions

0.1.8 • Public • Published

Serverless Functions

This repository contains different serverless function used in the operations of the protocol.

Functions

/debug

This is a debug function that returns a status "OK" and prints call information to the logs.

You may use this in local development to test out calls easily.

/updateOracles

This function updates the BLU/DAI TWAP oracle and the SGD/DAI TWAP oracle. It's scheduled to run at fixed interval to update stale results on the oracle.

Set the env ORACLE_UPDATE_SGD to allow this function to update the SGD/DAI oracle when the oracle is available.

Development

Set environment variables

For development, copy the .env.example to .env and set the necessary environment variables:

NETWORK - Choose between "local", "development" or "production". Local runs against a local blockchain, development runs against the rinkeby blockchain and production runs against mainnet.

ALCHEMY_KEY - API key from alchemy for the providers.

TELEGRAM_BOT_TOKEN & TELEGRAM_CHAT_ID - To configure the telegram bot. Use botfather to create a new bot when testing locally.

ORACLE_UPDATER_KEY - Private key with Ethers on the network defined in NETWORK. Does not require special permission since the oracle can be updated by anyone. In local environment, you can use key #1 or #2.

ORACLE_UPDATE_SGD - Allow updateOracle to update SGD/DAI oracle.

Running the functions locally.

Run npm run dev and visit localhost:3000/debug to visit the debug function.

Creating new functions

  1. Read https://www.serverless.com/framework/docs/providers/aws/guide/serverless.yml
  2. Configure the routes at serverless.yml
  3. Add the functions logic in src/functionHandlers using one of the request handlers in src/middlewares (see debug function for template)

Readme

Keywords

none

Package Sidebar

Install

npm i @bluejayfinance/functions

Weekly Downloads

0

Version

0.1.8

License

ISC

Unpacked Size

1.36 MB

Total Files

40

Last publish

Collaborators

  • tiongshankai97
  • shioju
  • whitefables