Skip to content

Template repository to build a custom Switchboard function on Solana

Notifications You must be signed in to change notification settings

switchboard-xyz/solana-functions-template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Switchboard
Solana Functions Template

Discord Twitter

Switchboard Functions

Switchboards V3 architecture allows users to permissionlessly build and run any code you like and we attest the output is from your code.

Table of Content

Setup

Edit the Makefile with your docker image name. Make sure to include your docker organization if publishing to the repository (For example: switchboard/my-function).

Build

Run the following command to build the docker image with your custom function

make

You should see a measurement.txt in the root of the project containing the base64 encoding of the MRENCLAVE measurement. You will need to re-generate this measurement anytime your source code or dependencies change.

Publishing

make publish

Integration

To get started, you will first need to:

  1. Build your docker image and upload to a Docker/IPFS repository
  2. Generate your MRENCLAVE measurement

Next, you will need to create a Function account for your given MRENCLAVE measurement. Head over to app.switchboard.xyz and create a new function with your given repository and MRENCLAVE measurement.

Alternatively, create a function with the Switchboard CLI:

npm i --global @switchboard-xyz/cli

sbv2 solana function create CkvizjVnm2zA5Wuwan34NhVT3zFc7vqUyGnA6tuEF5aE \
  --name "My Function" \
  --metadata "Basic binance oracle with TWAP" \
  --fundAmount 0.25 \
  --schedule "30 * * * * *" \
  --container switchboardlabs/basic-oracle-function \
  --keypair ~/.config/id/solana.json

# or fund an existing function
sbv2 solana function fund $MY_FUNCTION_PUBKEY \
  --fundAmount 0.25 \
  --keypair ~/.config/id/solana.json

More Info

See docs.switchboard.xyz to get started.

About

Template repository to build a custom Switchboard function on Solana

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published