turbo-lifecycle

Pipeline state management for Goldsky Turbo — pause, resume, restart, and delete commands with their rules and safety behavior. Use this skill when the user asks: will deleting my pipeline lose the data already in my postgres/clickhouse table, how do I pause a pipeline while doing database maintenance, how do I restart from block zero to reprocess all historical data, can I update a running streaming pipeline in place or do I have to delete and redeploy, will resuming a paused pipeline pick up from where it left off (checkpoint), how do I re-run a completed job pipeline from the beginning, can I pause or restart a job-mode pipeline. Also covers what happens to checkpoint state on delete, and job auto-deletion 1 hour after termination. For actively diagnosing why a pipeline is broken or erroring, use /turbo-doctor instead.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "turbo-lifecycle" with this command: npx skills add goldsky-io/goldsky-agent/goldsky-io-goldsky-agent-turbo-lifecycle

Turbo Pipeline Lifecycle Reference

CLI commands for managing pipeline lifecycle. Covers streaming and job-mode differences. For interactive pipeline troubleshooting, use /turbo-doctor instead.

Quick Reference

ActionCommand
List all pipelinesgoldsky turbo list
Delete by namegoldsky turbo delete <pipeline-name>
Delete by YAMLgoldsky turbo delete -f <pipeline.yaml>
Pause pipelinegoldsky turbo pause <pipeline-name>
Resume pipelinegoldsky turbo resume <pipeline-name>
Restart pipelinegoldsky turbo restart <pipeline-name>
Restart freshgoldsky turbo restart <pipeline-name> --clear-state

Pipeline States

StateDescription
runningPipeline is actively processing data
startingPipeline is initializing
pausedPipeline is paused (replicas set to 0)
stoppedPipeline is not running (manually stopped)
errorPipeline encountered an error
completedJob-mode pipeline finished processing range

Streaming vs Job Mode Lifecycle

Streaming and job-mode pipelines behave differently for lifecycle operations:

OperationStreaming PipelineJob-Mode Pipeline (job: true)
ListShows as running/pausedShows as running/completed
Pause✅ Supported❌ Not supported
Resume✅ Supported❌ Not supported
Restart✅ Supported❌ Not supported — use delete + apply
Delete✅ Supported✅ Supported (auto-cleanup ~1hr after done)
ApplyUpdates in placeMust delete first, then re-apply

Job-Mode Pipeline Lifecycle

Job-mode pipelines (job: true in YAML) are one-time batch processes. They:

  1. Start — process data from start_at (or earliest) to end_block (or chain tip)
  2. Run — process the bounded data range
  3. Complete — automatically stop when the range is fully processed
  4. Auto-cleanup — ~1 hour after completion, the pipeline is automatically removed

Key rules for job-mode pipelines:

  • Cannot pause, resume, or restart — these commands return an error for job pipelines
  • Cannot update in place — must delete the old job, then apply a new one
  • Redeploying a job — if you need to re-run:
    goldsky turbo delete my-job-pipeline
    goldsky turbo apply my-job-pipeline.yaml
    
  • If the job errors, it still auto-deletes ~1 hour after termination — same as successful jobs.

Pause, Resume, and Restart

Pause a Pipeline

Temporarily stop processing without deleting:

goldsky turbo pause <pipeline-name>
# or by YAML:
goldsky turbo pause -f <pipeline.yaml>

This sets deployment replicas to 0, preserving all state for later resumption.

Resume a Pipeline

Restore a paused pipeline to its running state:

goldsky turbo resume <pipeline-name>
# or by YAML:
goldsky turbo resume -f <pipeline.yaml>

You can only resume a paused pipeline. Attempting to resume an already running pipeline returns an error.

Restart a Pipeline

Trigger a pod restart for a running or paused pipeline:

goldsky turbo restart <pipeline-name>

To clear all checkpoints and reprocess from the beginning:

goldsky turbo restart <pipeline-name> --clear-state

Restart vs Resume: Use resume to restore a paused pipeline without restarting pods. Use restart when you need a fresh pod restart (e.g., after configuration changes or to recover from issues). Restart is not supported for Job-mode pipelines — use delete + apply instead.


Important Notes

Deletion is Permanent

  • All checkpoints are lost
  • Pipeline configuration is removed
  • Cannot be undone

Data in Sinks is Preserved

  • Data already written to PostgreSQL, ClickHouse, etc. remains
  • Only the pipeline itself is deleted
  • You may need to manually clean up sink data if desired

Checkpoints and Restarts

  • Deleting a pipeline removes its checkpoints
  • If you recreate a pipeline with the same name, it starts fresh
  • To preserve checkpoints, use goldsky turbo apply to update instead of delete/recreate

Job-Mode Pipelines Cannot Be Updated In Place

  • Job pipelines (job: true) must be deleted before redeploying
  • Attempting goldsky turbo apply on an existing job returns an error: pipeline already exists
  • Jobs auto-cleanup ~1 hour after termination regardless of success or failure
  • Always delete the old job first if redeploying: goldsky turbo delete <name>, then goldsky turbo apply <file.yaml>

Project Scope

  • goldsky turbo list shows pipelines in your current project only
  • Use goldsky project list to see available projects
  • Pipelines are isolated per project

Common Patterns

Delete and Recreate

If you need to restart a pipeline from scratch:

  1. Delete the existing pipeline:

    goldsky turbo delete my-pipeline
    
  2. Deploy fresh:

    goldsky turbo apply my-pipeline.yaml
    

This resets all checkpoints and starts processing from the configured start_at position.

Rename Instead of Delete

To keep checkpoints but change the pipeline name:

  1. Update the name field in your YAML

  2. Apply the new configuration:

    goldsky turbo apply my-pipeline-v2.yaml
    
  3. Delete the old pipeline:

    goldsky turbo delete my-pipeline
    

Note: This creates a new pipeline; checkpoints don't transfer between names.

Clean Up Test Pipelines

For development, use a naming convention like test-* or dev-*:

name: test-usdc-transfers # Easy to identify for cleanup

Then clean up all test pipelines when done.

Troubleshooting

IssueAction
Pipeline not foundCheck spelling; use goldsky turbo list to see names
Permission deniedVerify you have Editor or Admin role in the project
Delete failedCheck logs for errors; pipeline may be in transition
Wrong projectUse goldsky project list to verify current project
pipeline already existsJob-mode pipeline — delete first, then re-apply
Cannot pause/resume jobJob-mode pipelines don't support pause/resume; use delete
Cannot restart jobJob-mode pipelines don't support restart; delete + re-apply

Error: Pipeline Not Found

Error: Pipeline 'wrong-name' not found

Fix: Run goldsky turbo list to see exact pipeline names. Names are case-sensitive.

Error: Permission Denied

Error: Permission denied

Fix: You need Editor or Admin role. Contact a project Owner to upgrade your role.

Related

  • /turbo-doctor — Interactive diagnostic skill for pipeline issues
  • /turbo-builder — Build and deploy new pipelines

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

turbo-builder

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

auth-setup

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

secrets

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

turbo-monitor-debug

No summary provided by upstream source.

Repository SourceNeeds Review