Limitations

    Resource consumption limits

    Your worker cannot consume more than 90% of one vCPU, and 3GiB RAM.

    The actual resources available to your worker will vary depending on how busy the service is. If you would like to pay for guaranteed performance, please get in touch.

    If you have multiple large tasks that are overloading your worker, you can set a memory limit on each task. Concourse will wait for your worker to have enough available memory to meet this limit before scheduling each task so that each task gets the resources it needs. Delayed tasks will remain "running" (yellow in the web UI) and will have an orange task with the following error message until the worker has enough spare memory:

    no worker fit container placement strategy: limit-total-resources, will retry ...
    

    Privileged tasks and resources

    Privileged tasks and resources are not allowed in order to protect your workloads.

    Some resource types such as Docker image resource require privileges, and so will not work on Beluga. Instead you can build images using a provided task.

    Resource check intervals

    Each pipeline may run 5 resource checks per minute.

    Concourse will periodically check for new versions of resources defined in a pipeline. The default check interval is 1 minute, but you can define a custom check interval. It is recommended to use webhooks where possible, and set check intervals to their maximum.

    Worker availability

    Your worker will go to sleep when non-check containers are not running.

    As is the same when there are no memory 'slots' available on a worker, builds will remain "running" (yellow in the web UI) and will have an orange task with the following error message until the worker starts:

    no worker fit container placement strategy: limit-total-resources, will retry ...
    

    Number of steps in a job

    The total number of get, put, task and set-pipeline steps in one job is restricted to 20.