Skip to content

Commit 1652f79

Browse files
authored
Merge branch 'athom-tech:main' into main
2 parents a2f24f0 + 5eeaeea commit 1652f79

33 files changed

Lines changed: 4066 additions & 467 deletions

.github/actions/build/action.yml

Lines changed: 0 additions & 48 deletions
This file was deleted.

.github/dependabot.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "github-actions"
4+
directory: "/"
5+
schedule:
6+
interval: "weekly"

.github/workflows/build.yml

Lines changed: 0 additions & 51 deletions
This file was deleted.

.github/workflows/ci.yml

Lines changed: 48 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -2,43 +2,59 @@ name: CI
22

33
on:
44
pull_request:
5+
paths:
6+
- '*.yaml'
7+
- '.github/workflows/ci.yml'
8+
schedule:
9+
- cron: '0 0 * * *'
10+
11+
concurrency:
12+
group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
13+
cancel-in-progress: true
514

615
jobs:
7-
build:
8-
name: Building ${{ matrix.device }}
16+
ci:
17+
name: Building ${{ matrix.file }} / ${{ matrix.esphome-version }}
918
runs-on: ubuntu-latest
1019
strategy:
1120
fail-fast: false
21+
max-parallel: 3
1222
matrix:
13-
device:
14-
- rgb-light
15-
- rgbww-light
16-
- rgbct-light
17-
- rgbw-light
18-
- garage-door
19-
- ws2812b
20-
- mini-switch
21-
- relay-board-x1
22-
- relay-board-x2
23-
- relay-board-x4
24-
- relay-board-x8
25-
- smart-plug
26-
- smart-plug-v2
27-
- wall-outlet
28-
- sw01
29-
- sw01-v2
30-
- sw02
31-
- sw02-v2
32-
- sw03
33-
- sw04
34-
- cb02
35-
- ls-4p-3wire
36-
- ls-4p-4wire
37-
- presence-sensor
23+
#### Modify below here to match your project ####
24+
file:
25+
- athom-cb02
26+
- athom-garage-door
27+
- athom-mini-switch
28+
- athom-presence-sensor
29+
- athom-relay-board-x1
30+
- athom-relay-board-x2
31+
- athom-relay-board-x4
32+
- athom-relay-board-x8
33+
- athom-rgb-light
34+
- athom-rgbct-light
35+
- athom-rgbw-light
36+
- athom-rgbww-light
37+
- athom-smart-plug-v2
38+
- athom-smart-plug
39+
- athom-sw01-v2
40+
- athom-sw01
41+
- athom-sw02-v2
42+
- athom-sw02
43+
- athom-sw03
44+
- athom-sw04
45+
- athom-wall-outlet
46+
- athom-without-relay-plug
47+
#### Modify above here to match your project ####
48+
49+
esphome-version:
50+
- stable
51+
- beta
52+
- dev
3853
steps:
39-
- name: Checkout source
40-
uses: actions/checkout@v3.2.0
41-
- uses: esphome/build-action@v1.1.0
42-
id: esphome-build
54+
- name: Checkout source code
55+
uses: actions/checkout@v5
56+
- name: ESPHome ${{ matrix.esphome-version }}
57+
uses: esphome/build-action@v7
4358
with:
44-
yaml_file: athom-${{ matrix.device }}.yaml
59+
yaml-file: ${{ matrix.file }}.yaml
60+
version: ${{ matrix.esphome-version }}
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: Publish Firmware
2+
3+
on:
4+
release:
5+
types: [published]
6+
7+
permissions:
8+
contents: write
9+
10+
jobs:
11+
build-firmware:
12+
name: Build Firmware
13+
uses: esphome/workflows/.github/workflows/build.yml@2025.8.1
14+
with:
15+
#### Modify below here to match your project ####
16+
files: |
17+
athom-cb02.yaml
18+
athom-garage-door.yaml
19+
athom-mini-switch.yaml
20+
athom-presence-sensor.yaml
21+
athom-relay-board-x1.yaml
22+
athom-relay-board-x2.yaml
23+
athom-relay-board-x4.yaml
24+
athom-relay-board-x8.yaml
25+
athom-rgb-light.yaml
26+
athom-rgbct-light.yaml
27+
athom-rgbw-light.yaml
28+
athom-rgbww-light.yaml
29+
athom-smart-plug-v2.yaml
30+
athom-smart-plug.yaml
31+
athom-sw01-v2.yaml
32+
athom-sw01.yaml
33+
athom-sw02-v2.yaml
34+
athom-sw02.yaml
35+
athom-sw03.yaml
36+
athom-sw04.yaml
37+
athom-wall-outlet.yaml
38+
athom-without-relay-plug.yaml
39+
esphome-version: 2025.8.0
40+
combined-name: project-template
41+
#### Modify above here to match your project ####
42+
43+
release-summary: ${{ github.event.release.body }}
44+
release-url: ${{ github.event.release.html_url }}
45+
release-version: ${{ github.event.release.tag_name }}
46+
47+
upload-to-release:
48+
name: Upload to Release
49+
uses: esphome/workflows/.github/workflows/upload-to-gh-release.yml@2025.8.1
50+
needs:
51+
- build-firmware
52+
with:
53+
version: ${{ github.event.release.tag_name }}
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
name: Publish Pages
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
paths:
8+
- 'static/**'
9+
- '.github/workflows/publish-pages.yml'
10+
workflow_run:
11+
workflows:
12+
- Publish Firmware
13+
types:
14+
- completed
15+
pull_request:
16+
paths:
17+
- 'static/**'
18+
- '.github/workflows/publish-pages.yml'
19+
20+
21+
concurrency:
22+
group: ${{ github.workflow }}-${{ github.ref }}
23+
cancel-in-progress: true
24+
25+
jobs:
26+
build:
27+
name: Build
28+
runs-on: ubuntu-latest
29+
steps:
30+
- name: Checkout source code
31+
uses: actions/checkout@v5
32+
33+
- run: mkdir -p output/firmware
34+
35+
- name: Build
36+
uses: actions/jekyll-build-pages@v1
37+
with:
38+
source: ./static
39+
destination: ./output
40+
41+
- name: Fetch firmware files
42+
uses: robinraju/release-downloader@v1
43+
with:
44+
latest: true
45+
fileName: '*'
46+
out-file-path: output/firmware
47+
48+
- name: Upload artifact
49+
uses: actions/upload-pages-artifact@v4
50+
with:
51+
path: output
52+
retention-days: 1
53+
54+
publish:
55+
if: github.event_name != 'pull_request'
56+
name: Publish
57+
runs-on: ubuntu-latest
58+
needs:
59+
- build
60+
permissions:
61+
pages: write
62+
id-token: write
63+
environment:
64+
name: github-pages
65+
url: ${{ steps.deployment.outputs.page_url }}
66+
steps:
67+
- name: Setup Pages
68+
uses: actions/configure-pages@v5
69+
70+
- name: Deploy to GitHub Pages
71+
id: deployment
72+
uses: actions/deploy-pages@v4

0 commit comments

Comments
 (0)