Skip to content

feat(helm): make runnable chart standalone #78

feat(helm): make runnable chart standalone

feat(helm): make runnable chart standalone #78

Workflow file for this run

# /********************************************************************************
# * Copyright (c) 2021,2023 Contributors to the Eclipse Foundation
# *
# * See the NOTICE file(s) distributed with this work for additional
# * information regarding copyright ownership.
# *
# * This program and the accompanying materials are made available under the
# * terms of the Apache License, Version 2.0 which is available at
# * https://www.apache.org/licenses/LICENSE-2.0.
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# * License for the specific language governing permissions and limitations
# * under the License.
# *
# * SPDX-License-Identifier: Apache-2.0
# ********************************************************************************/
name: Lint and Test Charts
# Run chart linting and tests on each pull request
on:
pull_request:
paths:
- 'charts/**'
jobs:
chart-lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Set up Helm
uses: azure/setup-helm@v3
with:
version: v3.11.3
- name: Update Helm dependencies
run: |
cd charts/managed-identity-wallet
helm dependency update
- name: Install Helm unittest plugin
run: |
helm plugin install https://github.com/helm-unittest/helm-unittest.git
# Setup python as a prerequisite for chart linting
- uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Set up chart-testing
uses: helm/chart-testing-action@v2.3.1
- name: Install Task
uses: arduino/setup-task@v1
- name: Run chart-testing (list-changed)
id: list-changed
run: |
changed=$(ct list-changed --target-branch ${{ github.event.repository.default_branch }})
if [[ -n "$changed" ]]; then
echo "::set-output name=changed::true"
fi
# run chart linting
- name: Run chart-testing (lint)
run: ct lint --config charts/chart-testing-config.yaml --charts ./charts/managed-identity-wallet
# run chart unittest
- name: Run Helm unittests
run: task helm:unittest
# Preparing a kind cluster to install and test charts on
- name: Create kind cluster
uses: helm/kind-action@v1.7.0
if: steps.list-changed.outputs.changed == 'true'
# install the chart to the kind cluster and run helm test
# define charts to test with the --charts parameter
- name: Run chart-testing (install)
run: ct install --charts charts/managed-identity-wallet --config charts/chart-testing-config.yaml
if: steps.list-changed.outputs.changed == 'true'