The set-imgpkg-bundle-as-vendir-path action sets an imgpkg bundle image as a vendir path. This is useful for managing environment promotion and release management via GitOps.
This action sets a directory under the top-level channels directory in vendir.yml to a specified imgpkg bundle image. If vendir.yml does not exist, it will be created. The action ensures that the channels directory is always the first top-level directory in vendir.yml so that other configurations can reference it as needed.
Given a vendir.yml structured like this:
# vendir.yml
apiVersion: vendir.k14s.io/v1alpha1
kind: Config
directories:
- path: channels
contents:
- path: latest
imgpkgBundle:
image: registry.example.com/repository/bundle:build-1
- path: environments
contents:
- path: development
directory:
path: channels/latestThe following job will update the imgpkgBundle for channels/latest to use the build-2 tag:
jobs:
update-vendir:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Update latest release channel
uses: codebandits/github-actions/set-imgpkg-bundle-as-vendir-path@v1
with:
channel_name: latest
imgpkg_bundle_image: registry.example.com/repository/bundle:build-2
bearer_token: ${{ secrets.SOME_BEARER_TOKEN }}channel_name: Required. The path under the channels directory in vendir.yml to update.imgpkg_bundle_image: Required. The published imgpkg bundle image.bearer_token: Optional. The bearer token for authentication with the registry. Defaults to empty (no authentication).path: Optional. The base directory path where vendir.yml is located. Defaults to.(current directory).
This action does not define any outputs.