name: Lint

on:
  push:
    branches:
      - master
  pull_request:
    branches:
      - master
  schedule:
    - cron: "0 0 * * *"

jobs:
  find:
    name: Find add-ons
    runs-on: ubuntu-latest
    outputs:
      addons: ${{ steps.addons.outputs.addons_list }}
    steps:
      - name: ⤵️ Check out code from GitHub
        uses: actions/checkout@v4.2.2

      - name: 🔍 Find add-on directories
        id: addons
        uses: home-assistant/actions/helpers/find-addons@master

  lint:
    name: Lint add-on ${{ matrix.path }}
    runs-on: ubuntu-latest
    needs: find
    strategy:
      matrix:
        path: ${{ fromJson(needs.find.outputs.addons) }}
    steps:
      - name: ⤵️ Check out code from GitHub
        uses: actions/checkout@v4.2.2

      - name: 🚀 Run Home Assistant Add-on Lint
        uses: frenck/action-addon-linter@v2.18
        with:
          path: "./${{ matrix.path }}"