Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.goldsky.com/llms.txt

Use this file to discover all available pages before exploring further.

Once you’ve built out your Compose App and tested it locally, you’ll want to deploy it for production usage. Your app will be deployed to a fully isolated runtime environment with a dedicated database. Environment variables and secrets you’ve provided will be available to your app, and our durability engine will ensure task execution and resumption across restarts and rolling deploys. You’ll be able to monitor your app via the Goldsky webapp.

The deploy command

Deployment is done by running this command with a reference to your manifest file. The deploy command is idempotent and will handle upserting your app to the cloud.
goldsky compose deploy
Your manifest must include an api_version field to deploy. This pins your app to a specific Compose runtime. Use "stable" if unsure. See Release channels for details.
The Compose CLI extension will handle provisioning the necessary resources and launching your app based on the configuration in your manifest. Once complete, cron tasks will start and HTTP triggers will be available. See Task triggers for more information.

Hosted Postgres database

When you deploy, Compose automatically provisions a dedicated Postgres database for your app. This database is used for two things:
  • Your state. Any collections you create in your tasks are stored here. You can query or inspect your own data directly.
  • Compose internal state. Compose uses the same database to power durable execution (resuming tasks cleanly after crashes and rolling deploys), reorg monitoring for transactions, and wallet bookkeeping. These internal tables live in reserved namespaces and are managed by the runtime.
Because your app has its own database, your data is fully isolated from other apps and from Goldsky’s own systems.

Monitoring your app via the webapp

Like with our indexing products, you’ll see your Compose Apps in the Goldsky webapp. From there you can view the app’s status, recent task runs (with per-operation details — each ctx.* call a task made), and raw log output. The URL for your app’s dashboard is:
https://app.goldsky.com/{projectId}/dashboard/compose/{appName}

Managing a deployed app from the CLI

For day-to-day app management from the terminal, use the lifecycle commands:
goldsky compose status   # runtime status
goldsky compose list     # all apps in your project
goldsky compose logs -f  # tail logs
goldsky compose pause    # stop triggers without deleting state
goldsky compose resume
goldsky compose delete   # delete the app (and optionally the database)

Deleting a Compose app

You can delete a Compose app either from the webapp (navigate to the app’s dashboard and click Delete) or from the CLI:
goldsky compose delete
Both paths require you to type the app name to confirm. See App lifecycle for CLI flags.

Database management options

When deleting a Compose app that uses a hosted Postgres database, you can choose whether to keep or delete the associated database:
  • Delete associated database: The hosted Postgres database will be permanently deleted along with the app and all its data. This is the default in the webapp modal (“Delete associated database” is pre-checked). From the CLI, pass --delete-database or answer the interactive prompt to opt in.
  • Keep database: Preserve the database when deleting the app. This is useful if you want to retain your data for analysis or migrate it to another app. This is the default in the CLI; in the webapp, uncheck “Delete associated database” before confirming.
Database deletion is permanent and cannot be undone. Make sure to back up any important data before deleting.

Pipeline validation

If you choose to delete the associated database, the system will check whether the database is being used by any active pipelines. If the database is referenced by one or more pipelines, the deletion will be blocked and you’ll see an error message listing the affected pipelines. To proceed with database deletion in this case, you must first:
  1. Delete or modify the pipelines that reference the database
  2. Then retry deleting the Compose app with the database option selected
Alternatively, you can keep the database by unchecking the “Delete associated database” option, which allows you to delete the app while preserving the database for use by the existing pipelines.