Skip to content

disable-eks-addon-s3 #203

disable-eks-addon-s3

disable-eks-addon-s3 #203

# Ref: https://github.com/bitnami/charts/blob/main/.github/workflows/generate-chart-readme.yml
name: '[HELM] Update README'
on:
pull_request:
branches:
- main
types:
- opened
- edited
- reopened
- ready_for_review
paths:
- 'charts/**/values.yaml'
permissions:
contents: write
pull-requests: read
jobs:
update-readme:
runs-on: ubuntu-latest
steps:
- name: Install readme-generator-for-helm
run: npm install -g @bitnami/readme-generator-for-helm@2.6.1
- name: Checkout repo
uses: actions/checkout@v3
with:
ref: ${{github.event.pull_request.head.ref}}
repository: ${{github.event.pull_request.head.repo.full_name}}
fetch-depth: 0
persist-credentials: true
path: luminartech/helm-charts-public
- name: Execute readme-generator-for-helm
run: |
[[ "${{ secrets.SCRIPT_DEBUG }}" == "1" ]] && set -x || true
set -euo pipefail
cd luminartech/helm-charts-public
# Using the Github API to detect the files changed as git merge-base stops working when the branch is behind
# and jitterbit/get-changed-files does not support pull_request_target
URL="https://api.github.com/repos/${{ github.repository }}/pulls/${{ github.event.pull_request.number }}/files"
files_changed_data=$(curl -s --header 'authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' -X GET -G "$URL")
files_changed="$(echo $files_changed_data | jq -r '.[] | .filename')"
# Adding || true to avoid "Process exited with code 1" errors
charts_dirs_changed=($(echo "${files_changed}" | xargs dirname | tr ' ' '\n' | grep -e '^charts\/iac\/.*' | sed -nr "s|charts/iac/([^/]*).*|charts/iac/\1|p" | sort | uniq || true))
charts_dirs_changed+=($(echo "${files_changed}" | xargs dirname | tr ' ' '\n' | grep -e '^charts\/shared\/.*' | sed -nr "s|charts/shared/([^/]*).*|charts/shared/\1|p" | uniq || true))
charts_dirs_changed+=($(echo "${files_changed}" | xargs dirname | tr ' ' '\n' | grep -e '^charts\/modules\/apps\/.*' | sed -nr "s|charts/modules/apps/([^/]*).*|charts/modules/apps/\1|p" | sort | uniq || true))
charts_dirs_changed+=($(echo "${files_changed}" | xargs dirname | tr ' ' '\n' | grep -e '^charts\/modules\/infra\/.*' | sed -nr "s|charts/modules/infra/([^/]*).*|charts/modules/infra/\1|p" | sort | uniq || true))
charts_dirs_changed+=($(echo "${files_changed}" | xargs dirname | tr ' ' '\n' | grep -e '^charts\/modules\/iac\/.*' | sed -nr "s|charts/modules/iac/([^/]*).*|charts/modules/iac/\1|p" | sort | uniq || true))
echo $charts_dirs_changed
for chart in "${charts_dirs_changed[@]}"; do
echo "Updating README.md for ${chart}"
if [ -f "${chart}/values.yaml" ]; then
readme-generator --values "${chart}/values.yaml" --readme "${chart}/README.md" --schema "/tmp/schema.json"
fi
done
- name: Push changes to PR branch
run: |
[[ "${{ secrets.SCRIPT_DEBUG }}" == "1" ]] && set -x || true
# Push all the changes
cd luminartech/helm-charts-public
if git status -s | grep charts; then
git config user.name "CI Bot"
git config user.email "ipe@luminartech.com"
git add . && git commit -am "Update README.md with readme-generator-for-helm" --signoff && git push
fi