Home Assistant CI #574
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: Home Assistant CI | |
# yamllint disable-line rule:truthy | |
on: | |
push: | |
pull_request: | |
schedule: | |
- cron: 0 12 * * * | |
jobs: | |
yamllint: | |
name: 🧹 yamllint | |
runs-on: ubuntu-latest | |
steps: | |
- name: ⤵️ Check out configuration from GitHub | |
uses: actions/[email protected] | |
- name: 🚀 Run yamllint | |
uses: frenck/[email protected] | |
remarklint: | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: ⤵️ Check out configuration from GitHub | |
uses: actions/[email protected] | |
- name: Running Remark lint | |
uses: "docker://pipelinecomponents/remark-lint:latest" | |
continue-on-error: true | |
with: | |
args: "remark --no-stdout --color --frail --use preset-lint-recommended ." | |
home-assistant: | |
name: "Home Assistant Core ${{ matrix.version }} Configuration Check" | |
needs: [yamllint] | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
version: ["stable", "beta", "dev"] | |
steps: | |
- name: ⤵️ Check out configuration from GitHub | |
uses: actions/[email protected] | |
- name: 🚀 Run Home Assistant Configuration Check | |
uses: frenck/[email protected] | |
with: | |
path: "." | |
secrets: ./secrets.fake.yaml | |
version: "${{ matrix.version }}" | |
esphome: | |
runs-on: ubuntu-latest | |
needs: [yamllint] | |
steps: | |
- name: ⤵️ Check out configuration from GitHub | |
uses: actions/[email protected] | |
- name: Set up Python 3.7 | |
uses: actions/setup-python@v4 | |
with: | |
python-version: 3.7 | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip setuptools wheel | |
pip install esphome | |
pip list | |
esphome version | |
- name: Copy secrets stub into configuration folder | |
run: cp ./secrets.fake.yaml ./esphome/secrets.yaml | |
- name: Run esphome on all files | |
# yamllint disable rule:line-length | |
run: | | |
for file in $(find ./config/esphome -type f -name "*.yaml" -maxdepth 1 -not -name "secrets.yaml"); do esphome "${file}" config; done |