GitHub Actions
You can easily deploy your tasks with GitHub actions.
This simple GitHub action file will deploy your Trigger.dev tasks when new code is pushed to the main
branch and the trigger
directory has changes in it.
The deploy step will fail if any version mismatches are detected. Please see the version pinning section for more details.
If you already have a GitHub action file, you can just add the final step ”🚀 Deploy Trigger.dev” to your existing file.
Creating a Personal Access Token
Create a new access token
Go to your profile page and click on the “Personal Access Tokens” tab.
Go to your repository on GitHub.
Click on ‘Settings’ -> ‘Secrets and variables’ -> ‘Actions’ -> ‘New repository secret’
Add the TRIGGER_ACCESS_TOKEN
Add the name TRIGGER_ACCESS_TOKEN
and the value of your access token.
Version pinning
The CLI and @trigger.dev/*
package versions need to be in sync with the trigger.dev
CLI, otherwise there will be errors and unpredictable behavior. Hence, the deploy
command will automatically fail during CI on any version mismatches.
Tip: add the deploy command to your package.json
file to keep versions managed in the same place. For example:
Your workflow file will follow the version specified in the package.json
script, like so:
You should use the version you run locally during dev and manual deploy. The current version is displayed in the banner, but you can also check it by appending --version
to any command.
Self-hosting
When self-hosting, you will have to take a few additional steps:
- Specify the
TRIGGER_API_URL
environment variable. You can add it to the GitHub secrets the same way as the access token. This should point at your webapp domain, for example:https://trigger.example.com
- Setup docker as you will need to build and push the image to your registry. On Trigger.dev Cloud this is all done remotely.
- Add your registry credentials to the GitHub secrets.
- Use the
--self-hosted
and--push
flags when deploying.
Other than that, your GitHub action file will look very similar to the one above:
Was this page helpful?