Merge branch 'dev' into jesserockz-2023-304

This commit is contained in:
Jesse Hills
2023-09-21 10:11:51 +12:00
committed by GitHub
50 changed files with 1049 additions and 192 deletions
+30 -26
View File
@@ -7,6 +7,10 @@ on:
branches: [dev, beta, release]
pull_request:
paths:
- "**"
- "!.github/workflows/*.yml"
- ".github/workflows/ci.yml"
merge_group:
permissions:
@@ -30,13 +34,13 @@ jobs:
cache-key: ${{ steps.cache-key.outputs.key }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4
uses: actions/checkout@v4.0.0
- name: Generate cache-key
id: cache-key
run: echo key="${{ hashFiles('requirements.txt', 'requirements_optional.txt', 'requirements_test.txt') }}" >> $GITHUB_OUTPUT
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v4.6.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore Python virtual environment
@@ -55,15 +59,6 @@ jobs:
pip install -r requirements.txt -r requirements_optional.txt -r requirements_test.txt
pip install -e .
yamllint:
name: yamllint
runs-on: ubuntu-latest
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4
- name: Run yamllint
uses: frenck/action-yamllint@v1.4.1
black:
name: Check black
runs-on: ubuntu-latest
@@ -71,7 +66,7 @@ jobs:
- common
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4
uses: actions/checkout@v4.0.0
- name: Restore Python
uses: ./.github/actions/restore-python
with:
@@ -92,7 +87,7 @@ jobs:
- common
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4
uses: actions/checkout@v4.0.0
- name: Restore Python
uses: ./.github/actions/restore-python
with:
@@ -113,7 +108,7 @@ jobs:
- common
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4
uses: actions/checkout@v4.0.0
- name: Restore Python
uses: ./.github/actions/restore-python
with:
@@ -134,7 +129,7 @@ jobs:
- common
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4
uses: actions/checkout@v4.0.0
- name: Restore Python
uses: ./.github/actions/restore-python
with:
@@ -155,7 +150,7 @@ jobs:
- common
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4
uses: actions/checkout@v4.0.0
- name: Restore Python
uses: ./.github/actions/restore-python
with:
@@ -176,7 +171,7 @@ jobs:
- common
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4
uses: actions/checkout@v4.0.0
- name: Restore Python
uses: ./.github/actions/restore-python
with:
@@ -196,7 +191,7 @@ jobs:
- common
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4
uses: actions/checkout@v4.0.0
- name: Restore Python
uses: ./.github/actions/restore-python
with:
@@ -215,6 +210,17 @@ jobs:
run: script/ci-suggest-changes
if: always()
compile-tests-list:
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.0.0
- name: Find all YAML test files
id: set-matrix
run: echo "matrix=$(ls tests/test*.yaml | jq -R -s -c 'split("\n")[:-1]')" >> $GITHUB_OUTPUT
compile-tests:
name: Run YAML test ${{ matrix.file }}
runs-on: ubuntu-latest
@@ -227,24 +233,24 @@ jobs:
- pylint
- pytest
- pyupgrade
- yamllint
- compile-tests-list
strategy:
fail-fast: false
max-parallel: 2
matrix:
file: [1, 2, 3, 3.1, 4, 5, 6, 7, 8, 9, 9.1, 10]
file: ${{ fromJson(needs.compile-tests-list.outputs.matrix) }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4
uses: actions/checkout@v4.0.0
- name: Restore Python
uses: ./.github/actions/restore-python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
cache-key: ${{ needs.common.outputs.cache-key }}
- name: Run esphome compile tests/test${{ matrix.file }}.yaml
- name: Run esphome compile ${{ matrix.file }}
run: |
. venv/bin/activate
esphome compile tests/test${{ matrix.file }}.yaml
esphome compile ${{ matrix.file }}
clang-tidy:
name: ${{ matrix.name }}
@@ -258,7 +264,6 @@ jobs:
- pylint
- pytest
- pyupgrade
- yamllint
strategy:
fail-fast: false
max-parallel: 2
@@ -295,7 +300,7 @@ jobs:
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4
uses: actions/checkout@v4.0.0
- name: Restore Python
uses: ./.github/actions/restore-python
with:
@@ -341,7 +346,6 @@ jobs:
- pylint
- pytest
- pyupgrade
- yamllint
- compile-tests
- clang-tidy
if: always()