How to create jobs
Jobs are used to run a command that ultimately terminates. They are distinct from services (which stay running) and cron jobs (which run on a schedule).
Some common use cases for jobs include:
- Set-up scripts
- Database migrations
- Compiling assets
- Validation scripts
To create jobs in Release, edit your "Environment Configuration" under Settings.
Edit environment configuration
At the end of the YAML, add a section called
jobsand define any jobs you want to run following the example below.
- name: migrate
- name: setup
Press Save as new version.
Save new configuration version
Back in your Environment Settings page, apply this new configuration to your environment. This will redeploy your existing instances, and also add a new one to run the job you defined.
Apply latest configuration
Wait for the new environment to deploy. If you used the configuration from the example above, you should see a new instance come up every five minutes. Viewing the logs of that instance will confirm that the job ran as expected.
Instead of choosing a
from_servicesto base your job on, you can define
imageto base your job on a Docker image. You can find more examples and the full schema in the schema docs.