Skip to main content

Manifest

The Compose App’s manifest is a yaml file with the following schema. The manifest holds all the relevant information about the Compose App and it’s tasks. All compose commands will reference your manifest and pick up the configuration there. See full manifest configuration docs here. Example
name: "my_app"
secrets:
  - MY_SECRET 
env:
  local:
    MY_VAR: "foo"
  cloud:
    MY_VAR: "bar"
tasks:
  - name: "price_fetcher"
    path: "./tasks/fetch_price.ts"
    triggers:
      - type: "cron"
        expression: "* * * * *" # Run every minute
      - type: "http"
        authentication: "api_token"
    retry_config:
      max_attempts: 3
      initial_interval_ms: 1000
      backoff_factor: 2
  - name: "data_processor"
    path: "./tasks/process_data.ts"

Commands

Init

Prompts you to choose a project name and generates a folder of that name with a fully working compose app in it.
goldsky compose init

Dev

Starts your Compose app with a clean task execution state, this will be the primary way you run the app while developing. Changes you make to your task will hot reload and reset execution state. You can optionally clear all the state in the stage DB with the “—clean-stage” flag.
goldsky compose dev
Options:
  • --clean-stage Optionally clear the local stage database

Start

Starts your app in production mode, preserving execution state from previous runs, this can be useful for testing retry behavior or other production scenarios.
goldsky compose start
Options:
  • -m <<manifest-path>> Optionally use a manifest that’s not in the default compose.yaml path
  • --fork fork all chains referenced in contract interactions locally for testing, more info on forking here

Deploy

This will deploy the app to the cloud, from there you’ll be able to monitor it at https://app.goldsky.com/dashboard/compose/{appName}.
See monitoring for more info.
goldsky compose deploy

callTask

goldsky compose callTask my-task '{foo: "bar"}'

codegen

This will bundle your task files and will also parse ABIs in the “/contracts” folder and generate typescript classes for them.
See contracts for more details.
goldsky compose codegen