Skip to content
Use this GitHub Action with your project

Add this Action to an existing workflow or create a new one.

View on Marketplace
main
Switch branches/tags
Code

Latest commit

* update ct to 3.5.0

Signed-off-by: Carlos Panato <ctadeu@gmail.com>

* add gh actions to test ct action itself

Signed-off-by: Carlos Panato <ctadeu@gmail.com>
6b64532

Git stats

Files

Permalink
Failed to load latest commit information.

chart-testing Action

A GitHub Action for installing the helm/chart-testing CLI tool.

Usage

Pre-requisites

  1. A GitHub repo containing a directory with your Helm charts (e.g: charts)
  2. A workflow YAML file in your .github/workflows directory. An example workflow is available below. For more information, reference the GitHub Help Documentation for Creating a workflow file

Inputs

For more information on inputs, see the API Documentation

  • version: The chart-testing version to install (default: v3.5.0)

Example Workflow

Create a workflow (eg: .github/workflows/lint-test.yaml):

Note that Helm and Python must be installed. This can be achieved using actions as shown in the example below. Python is required because ct lint runs Yamale and yamllint which require Python.

name: Lint and Test Charts

on: pull_request

jobs:
  lint-test:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v2
        with:
          fetch-depth: 0

      - name: Set up Helm
        uses: azure/setup-helm@v1
        with:
          version: v3.7.2

      - uses: actions/setup-python@v2
        with:
          python-version: 3.7

      - name: Set up chart-testing
        uses: helm/chart-testing-action@v2.2.0

      - name: Run chart-testing (list-changed)
        id: list-changed
        run: |
          changed=$(ct list-changed)
          if [[ -n "$changed" ]]; then
            echo "::set-output name=changed::true"
          fi

      - name: Run chart-testing (lint)
        run: ct lint

      - name: Create kind cluster
        uses: helm/kind-action@v1.2.0
        if: steps.list-changed.outputs.changed == 'true'

      - name: Run chart-testing (install)
        run: ct install

This uses helm/kind-action GitHub Action to spin up a kind Kubernetes cluster, and helm/chart-testing to lint and test your charts on every pull request.

Upgrading from v1.x.x

v2.0.0 is a major release with breaking changes. The action no longer wraps the chart-testing tool but simply installs it. It is no longer run in a Docker container. All ct options are now directly available without the additional abstraction layer.

Code of conduct

Participation in the Helm community is governed by the Code of Conduct.