Skip to content

PreDeploy Tasks

PreDeploy tasks are tasks that are run sequentially before your services are deployed. Tasks must succeed, otherwise the whole deployment will be halted.

predeploy:
  - name: migrations
    command: ["bundle", "exec", "rake", "db:migrate"]

  - name: warm-caches
    command: ["bundle", "exec", "rake", "caches:warm"]

Fields

name - (required)

Name for your task. This should be short. This name must be unique across all services, tasks, cronjobs, predeploys

command - (recommended)

The command you want to run for this task. This field is not required, but it doesn't make much sense to exclude it.

For details on how to specify a command, see Specifying Command/EntryPoints

timeout

Set a custom timeout for this task. if the task does not complete within the allotted time, it will be killed and considered as a failure.

Note: this is the total launch time + runtime. so if you have a massive image, that will count against the timeout

Default: inherit from settings.predeploy_timeout

disabled

Skip running this task. This allows you to easily skip certain tasks while still keeping them in the configuration

Default: false

ignore_failure

If you want to run a task, but do not care if it fails, then set this to true. Usually you will not want this.

Default: false

<anything from common>

See Common Task Options.