Skip to main content

Understand how your workflows run

Learn how the execution environments work.

Written by Jamie Gaynor

When you execute a workflow step in Tines 3B, it runs within a secure, isolated container. This ensures your code is protected, your data remains secure, and your workflows remain reliable and predictable. This guide explains how these execution environments work.

Run types

  • Solo run: Runs only that step, on its own. It does not trigger any downstream steps.

  • Run: Runs that step and its downstream steps, following the links out of it.

How a step runs

Every time a step is triggered, whether manually or as part of a larger workflow, Tines 3B automatically prepares a fresh environment:

  1. Tines 3B sets up a secure sandbox, assigning it a private network namespace and attaching necessary storage.

  2. Your code runs within this isolated space. All network traffic is handled through a secure proxy, and strict resource limits (CPU/Memory) are enforced to ensure stability.

  3. Once your step finishes, we capture your output and logs, save them securely, and immediately destroy the sandbox to ensure total environment isolation.

Key security & isolation features

Your workflows are designed with "security-first" principles to give you peace of mind:

  • Process & filesystem isolation: Each step runs in its own environment. One step cannot see or interfere with another’s files or processes.

  • Secure network handling: All outgoing network traffic passes through a secure proxy. This means your credentials are injected automatically and securely, they are never exposed directly in your environment.

  • Multi-layered defense: By using advanced sandboxing technology (gVisor) and seccomp filters, we ensure that even if a step encounters an issue, it remains contained and cannot access the host system or other workflows.

Troubleshooting

If a step fails or behaves unexpectedly, check the following common causes:

  • Exit code 137: Indicates the process was killed because it exceeded memory limits. Try optimizing your code or increasing the step's memory allocation.

  • Exit code 142/143: Indicates a timeout. You may need to optimize the step or increase the timeout limit.

  • "No output" errors: Ensure your code is printing its final result to stdout.

Note: For further details, check the execution logs in the Tines 3B UI. If you need additional help, reach out to our support team with your Execution ID.

Did this answer your question?