How to Manage Jobs in App Platform

App Platform is a Platform-as-a-Service (PaaS) offering that allows developers to publish code directly to DigitalOcean servers without worrying about the underlying infrastructure.


Jobs can consist of any application code you would like to run at a specific time. Currently, App Platform only supports scheduling code to run at pre-deploy time, or after deploy time. If scheduling your job to run after deploy time, you can further select whether to run a job after a successful deployment or whether the job should be run if the app fails to deploy.

Like workers, jobs are not “routable,” meaning they run in the background and cannot accept HTTP/S requests.

Create Jobs

  1. In the Apps section of the DigitalOcean Control Panel, select your app, then click the Create dropdown and choose Create Resources From Source Code to add a Job.
Resources screen
  1. Select the repository service to retrieve your source code from, either: GitHub, GitLab, DigitalOcean Container Registry, Docker Hub, or a sample app. If you are connecting to your repository from DigitalOcean for the first time, you will need to click the Manage Access button to provide DigitalOcean access to the repositories or containers, then refresh this page.

  2. Select the repository from the Repository drop-down list. Next, select which branch of the source repo you’d like to use as the source. Optionally, for monorepos, specify the folder that contains the source in the Source Directory field. For containers, specify the image tag to use. Click Next.

    App Platform will inspect the code, select an appropriate resource type and also detect any appropriate build and run commands.

Create job

To change to a different resource type, click the edit icon to open the Settings page of the resource. Click Edit next to Resource Type, choose another option from the Type drop-down list. Additionally, for jobs, in the When to Run drop-down list, you can specify when the job should run. For example, after every failed deployment. Click Save to confirm your changes.

In the settings page, you can also change the resource’s name, view the resource’s buildpacks, edit its build and run commands, edit the HTTP port and the request route, and more. Click Save to confirm your changes.

Create jobs settings
  1. Optionally, if you want to specify additional resources, click the Add Additional Resource From Source link, repeat the procedure and click Next.

  2. If you need to use environment variables, click Edit to the right of the resource name and supply them. Click the Encrypt checkbox to ensure a variable’s value is obscured in all build, deploy, and application logs.

    To specify an app-level environment variable, click Edit to the right of Global. Click Save and then click Next.

    Resources env variables
  3. Review the resources, environment variables and pricing, and click Create Resources.

Edit Jobs

In the Apps section of the DigitalOcean Control Panel, select your app and click on the Settings tab. Click the Job you’d like to edit.

You can use the configuration settings you see here to change the Job’s scaling behavior, modify environment variables, edit commands, and more.

You can also change when your job runs by modifying the Job Trigger value.

Job trigger drop-down

Destroy Jobs

In the Apps section of the DigitalOcean Control Panel, select your app and click on the Settings tab. Click on the Job you’d like to destroy.

You can destroy the Job by clicking the Destroy Component button on the bottom of the page and entering its name to confirm your selection.