Skip to main content
The allows you to run Python and Bash scripts in your pipelines via the Script Pushdown component. The is a lightweight script interpreter that can be installed in parallel with your in a Hybrid SaaS deployment. You can choose to install the as part of any deployment. For details of deployment, read overview and the relevant installation documents for your infrastructure. Script Pushdown is a component that allows you to include Bash and Python scripts in a orchestration pipeline. Your script is stored within the pipeline, and at runtime the script is pushed to the via SSH to execute the script in your cloud infrastructure. The includes both Python3 and Bash interpreters; therefore only a single is needed to execute all of your scripts in a project. A maximum of one can be installed with each instance. To scale up to use additional s, you must deploy additional instances. Read Scaling best practices for guidance.

Deploying a shared script runner

A can be added to each you install in your cloud infrastructure. You should follow the documentation to create a , but additionally set the following optional parameters. The specific method to set these will depend on your platform and deployment method, but the parameters remain the same in every case.
  • Enable Script Runner: Set to true to deploy the service. No resources are created when set to false. If this parameter is set to false (the default), then the following three parameter settings are irrelevant and ignored.
  • Script Runner Size: The size determines CPU and memory available for running scripts. This is independent of the size, and should be sized purely based on the volume and complexity of scripts you will push to this runner. Select from small (the default), medium, large, and xlarge, based on the following:
    SizeComputeMemoryNotes
    small1 vCPU4 GiBThe current/legacy default.
    medium2 vCPU8 GiBRecommended for moderate concurrent pipelines,
    large4 vCPU16 GiBRecommended for heavy ELT workloads.
    xlarge8 vCPU32 GiBLinux-only on Fargate.
    You must ensure that your is correctly sized to run the expected load imposed by your scripts. performs no checks on script performance or resource requirements.
  • Script Runner Container Image URL: The container image for the . Use an image that corresponds to your platform requirements:
    PlatformImage
    AWSpublic.ecr.aws/matillion/maia-script-runner:latest
    Azurematillion.azurecr.io/maia-script-runner:latest
    Google Cloud US regionus-docker.pkg.dev/maia-492711/maia-runners/maia-script-runner:latest
    Google Cloud EU regioneurope-docker.pkg.dev/maia-492711/maia-runners/maia-script-runner:latest
    Google Cloud AU regionaustralia-southeast1-docker.pkg.dev/maia-492711/maia-runners/maia-script-runner:latest
  • Runner Authorized SSH Keys: Enter the SSH public keys that the will trust.

Managing a shared script runner

You can stop and restart the service from within the cloud platform. Read your appropriate platform documentation for instructions on stopping and starting services. Matillion may issue updates from time to time. To update to a newer version, restart the service. This will automatically pull the new maia-script-runner:latest image from the appropriate image repository.