name: Pre-Commit Checks on: [push, pull_request] jobs: pre-commit: runs-on: ubuntu-22.04 steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Python uses: actions/setup-python@v4 with: python-version: '3.11' - name: Install pre-commit run: pip install pre-commit - name: Install generate run: | sudo apt update sudo apt install curl -y curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash - sudo apt install nodejs -y git clone https://github.com/bitnami/readme-generator-for-helm cd ./readme-generator-for-helm npm install npm install -g pkg pkg . -o /usr/local/bin/readme-generator - name: Run pre-commit hooks run: | git fetch origin main || git fetch origin master base_commit=$(git rev-parse --verify origin/main || git rev-parse --verify origin/master || echo "") if [ -z "$base_commit" ]; then files=$(git ls-files '*.yaml' '*.md') else files=$(git diff --name-only "$base_commit" -- '*.yaml' '*.md') fi if [ -n "$files" ]; then echo "$files" | xargs pre-commit run --files else echo "No YAML or Markdown files to lint" fi