CI Release Helm Chart #4
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI Release Helm Chart | |
on: | |
release: | |
types: [published] | |
env: | |
REPO_NAME: openfaas | |
jobs: | |
release-helm-chart: | |
name: Release Helm Chart | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Use Node.js 18 | |
uses: actions/setup-node@v1 | |
with: | |
node-version: 18 | |
- name: Login to GitHub Container Registry | |
run: | | |
REPO_OWNER=`echo "${{ github.repository_owner }}" | tr '[:upper:]' '[:lower:]'` | |
echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
- run: yarn install | |
# - run: yarn build | |
# - run: yarn test | |
- name: helm-build-dependencies | |
run: helm dep up deploy/${REPO_NAME} | |
- name: helm-check | |
run: yarn helm-lint | |
- name: helm-chart-version-check | |
run: yarn check-helm-chart-version deploy/${REPO_NAME}/Chart.yaml | |
- name: Check Helm Chart Document | |
run: | | |
code=0 | |
docker run --rm -v "$(pwd):/helm-docs" -u $(id -u) jnorwood/helm-docs:v1.5.0 -t ./README.md.gotmpl -o ../../README.md || code=$?; | |
if [ "$code" != "0" ]; then | |
echo "Failed to run helm-docs!"; | |
exit 1; | |
fi; | |
cd deploy | |
code=0 | |
git ls-files -m | grep -i readme.md || code=$?; | |
if [ "$code" == "0" ]; then | |
echo -e "Some of helm chart docs are required to be updated using the [helm-docs](https://github.com/norwoodj/helm-docs) tool. \n | |
Please run helm-docs (v1.5.0) at project root, review & commit docs changes and push a new commit."; | |
exit 1; | |
else | |
echo -e "helm docs check passed. helm docs update is not required."; | |
fi; | |
- name: Release Helm Chart | |
run: | | |
REPO_OWNER=`echo "${{ github.repository_owner }}" | tr '[:upper:]' '[:lower:]'` | |
cd deploy | |
helm package ${REPO_NAME} | |
PKG_NAME=`ls *.tgz` | |
helm push ${PKG_NAME} oci://ghcr.io/${REPO_OWNER}/charts |