Vertra + GitHub Actions

From your push to your next deploy.

Your code is already on GitHub. Add the official Action to your workflow and update your Vertra application as part of your development process.

  1. 01

    Push to main

    git push

  2. 02

    Repository checkout

    actions/checkout

  3. 03

    Upload to Vertra

    vertracloud/github-action

  4. 04

    Application restart

    restart: true

Your repository · Your workflow · Your application.github/workflows/deploy.yml
Ready for the next push

One workflow. One less manual task.

Save this file in your repository to deploy on every push to main. Create the application in Vertra before your first deployment.

.github/workflows/deploy.yml
name: Deploy
on:
  push:
    branches: [main]
permissions:
  contents: read
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: vertracloud/github-action@v1
        with:
          api-key: ${{ secrets.VERTRA_API_KEY }}
          app-id: ${{ secrets.VERTRA_APP_ID }}

Add VERTRA_API_KEY and VERTRA_APP_ID under Settings → Secrets and variables → Actions in your repository. Never put the key directly in this file.

api-key
Required. API key stored in a GitHub Secret.
app-id
Required. ID of the existing application receiving the files.
path
Optional. Project directory. Defaults to the repository root (.).
restart
Optional. Restart after uploading. Defaults to "true".
At your project’s pace

You choose when to deploy.

Fit deployment into the steps that already make up your development process.

After your tests

Add the deploy step after your workflow’s tests and build, so files are sent only when the previous steps pass.

Works with monorepos

Use path to send just the application directory, such as apps/api, without packaging the entire repository.

Credentials in secrets

Authenticate with an API key stored in GitHub Secrets. You stay in control of its permissions.

Files and restarts

The Action packages your project, respects .vertraignore and .vertracloudignore, and lets you choose whether to restart after uploading.

Initial setup

Three steps. Then follow your workflow.

01

Prepare the application

Create the application in Vertra, copy its ID and generate an API key with the permissions needed for uploads and restarts.

02

Add your secrets

In your repository, save the key as VERTRA_API_KEY and the ID as VERTRA_APP_ID in GitHub Actions secrets.

03

Add the workflow

Create .github/workflows/deploy.yml using the example above. Push to main and follow the run in the Actions tab.

FAQ

Before you automate.

Does the Action create a new application?

No. It updates files in an existing application identified by app-id. Create the application in the dashboard before running the workflow.

Can I change the deployment trigger?

Yes. The example uses push to main, but you can configure GitHub Actions events to match your process, including tags or manual runs.

What happens to old files?

Uploaded files overwrite matching paths. Files already in the application but absent from the upload remain there; deployment does not delete them.

Can I upload without restarting?

Yes. Set restart to "false". The default is "true", which restarts the application after uploading. Upload and plan limits still apply.

Vertra + GitHub Actions

Your next push can bring the deploy along.

Set it up once and follow each run on GitHub.