carvel-setup-action

April 14, 2026 ยท View on GitHub

Build Status Release Status

A Github Action to install Carvel apps (ytt, kbld, kapp, kwt, imgpkg, vendir and kctrl).

Usage

By default, installs latest versions of ytt, kbld, kapp, kwt, imgpkg, vendir and kctrl:

steps:
- uses: carvel-dev/setup-action@v3
- run: |
    ytt version
    kbld version

carvel-setup-action uses the GitHub API to find information about latest releases. To avoid rate limits it is recommended you pass a token:

steps:
- uses: carvel-dev/setup-action@v3
  with:
    token: ${{ secrets.GITHUB_TOKEN }}
- run: |
    ytt version
    kbld version

To install only specific apps:

steps:
- uses: carvel-dev/setup-action@v3
  with:
    only: ytt, kbld
- run: |
    ytt version
    kbld version

To exclude specific apps:

steps:
- uses: carvel-dev/setup-action@v3
  with:
    exclude: kwt, vendir
- run: |
    ytt version
    kbld version

To use a specific version of an app:

steps:
- uses: carvel-dev/setup-action@v3
  with:
    only: ytt, kbld
    kbld: v0.28.0
- run: |
    ytt version
    kbld version

When you host the carvel repositories in your own github instance:

steps:
- uses: carvel-dev/setup-action@v3
  with:
    endpoint: https://acme.github.com/api/v3
    token: token-for-your-instance
- run: |
    ytt version
    kbld version

When you are running the action in your own github instance and want to retrieve carvel from the github.com:

steps:
- uses: carvel-dev/setup-action@v3
  with:
    token: TOKEN-FROM-GITHUB.COM
- run: |
    ytt version
    kbld version

Node version support

Version v3 requires a Node 24 runner. If you're using older self-hosted runners, you can still use v2 for Node 20 support or v1 for Node 16 support.

Development

See DEVELOPMENT.