-
-
Notifications
You must be signed in to change notification settings - Fork 0
46 lines (34 loc) · 1.29 KB
/
test.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
name: Test
on: [push, workflow_dispatch]
jobs:
test:
if: github.actor != 'dependabot[bot]'
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x, 20.9.0, 20.x, 22.x]
homebridge-version: ['^1.8.0', '^2.0.0-beta.0']
steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Install dependencies
run: npm ci
- name: Use homebridge ${{ matrix.homebridge-version }}
run: npm install homebridge@${{ matrix.homebridge-version }}
- name: Copy homebridge configuration
run: cp -R ./.devcontainer/.homebridge ~/
- name: Build the project
run: npm run build
- name: Retrieve an Electrolux Group API Access Token
run: |
curl -s https://www.thouky.co.uk/api/oauth/electrolux/${{ secrets.ELECTROLUX_API_KEY }} -o token.txt
echo "::add-mask::$(cat token.txt)"
echo "ELECTROLUX_ACCESS_TOKEN=$(cat token.txt)" >> $GITHUB_ENV
- name: Run the tests
run: npm run test
env:
ELECTROLUX_API_KEY: ${{ secrets.ELECTROLUX_API_KEY }}
ELECTROLUX_ACCESS_TOKEN: ${{ env.ELECTROLUX_ACCESS_TOKEN }}