Skip to content

Commit a8b2c48

Browse files
committed
👷 Update CI/CD workflow configuration
Update CI/CD workflow configuration Modify the GitHub Actions workflow configuration to improve our continuous integration and deployment pipeline. This builds on our recent development tooling updates and maintains consistency with our move to the UV build system.
1 parent cde462f commit a8b2c48

File tree

1 file changed

+30
-40
lines changed

1 file changed

+30
-40
lines changed

.github/workflows/ci-cd.yml

Lines changed: 30 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -16,33 +16,33 @@ jobs:
1616
runs-on: ubuntu-latest
1717
steps:
1818
- name: Checkout code
19-
uses: actions/checkout@v3
19+
uses: actions/checkout@v4
2020

21-
- name: Set up Python 3.12
22-
uses: actions/setup-python@v4
21+
- name: Set up Python 3.13
22+
uses: actions/setup-python@v5
2323
with:
24-
python-version: "3.12"
24+
python-version: "3.13"
2525

2626
- name: Set up uv
2727
uses: astral-sh/setup-uv@v5
2828
with:
2929
version: "0.6.3"
3030

3131
- name: Install dependencies
32-
run: uv pip install --system -e ".[dev]"
32+
run: make install
3333

34-
- name: Run Ruff
35-
run: uv run ruff check .
34+
- name: Run lint
35+
run: make lint
3636

3737
test:
3838
name: Run Tests
3939
runs-on: ubuntu-latest
4040
steps:
4141
- name: Checkout code
42-
uses: actions/checkout@v3
42+
uses: actions/checkout@v4
4343

4444
- name: Set up Python 3.12
45-
uses: actions/setup-python@v4
45+
uses: actions/setup-python@v5
4646
with:
4747
python-version: "3.12"
4848

@@ -52,17 +52,17 @@ jobs:
5252
version: "0.6.3"
5353

5454
- name: Install dependencies
55-
run: uv pip install --system -e ".[dev]"
55+
run: make install
5656

5757
- name: Run tests with pytest
58-
run: uv run pytest --cov=custom_components/signalrgb --cov-report=xml
58+
run: make test
5959

6060
validate:
6161
name: Validate Project
6262
runs-on: ubuntu-latest
6363
steps:
6464
- name: Checkout code
65-
uses: actions/checkout@v3
65+
uses: actions/checkout@v4
6666

6767
- name: Run hassfest
6868
uses: home-assistant/actions/hassfest@master
@@ -78,25 +78,30 @@ jobs:
7878
runs-on: ubuntu-latest
7979
steps:
8080
- name: Checkout code
81-
uses: actions/checkout@v3
81+
uses: actions/checkout@v4
8282

83-
- name: Set up Python 3.12
84-
uses: actions/setup-python@v4
83+
- name: Set up Python 3.13
84+
uses: actions/setup-python@v5
8585
with:
86-
python-version: "3.12"
86+
python-version: "3.13"
8787

8888
- name: Set up uv
8989
uses: astral-sh/setup-uv@v5
9090
with:
9191
version: "0.6.3"
9292

9393
- name: Install dependencies
94-
run: |
95-
uv pip install --system -e ".[dev]"
96-
uv pip install build
94+
run: uv sync
9795

9896
- name: Build the package
99-
run: uv run python -m build
97+
run: uv build
98+
99+
- name: Upload Build Artifacts
100+
uses: actions/upload-artifact@v3
101+
with:
102+
name: dist
103+
path: dist/
104+
retention-days: 1
100105

101106
release:
102107
name: Create Release
@@ -105,22 +110,13 @@ jobs:
105110
runs-on: ubuntu-latest
106111
steps:
107112
- name: Checkout code
108-
uses: actions/checkout@v3
109-
110-
- name: Set up Python 3.12
111-
uses: actions/setup-python@v4
112-
with:
113-
python-version: "3.12"
113+
uses: actions/checkout@v4
114114

115-
- name: Set up uv
116-
uses: astral-sh/setup-uv@v5
115+
- name: Download Build Artifacts
116+
uses: actions/download-artifact@v3
117117
with:
118-
version: "0.6.3"
119-
120-
- name: Install dependencies
121-
run: |
122-
uv pip install --system -e ".[dev]"
123-
uv pip install build twine
118+
name: dist
119+
path: dist
124120

125121
- name: Create release
126122
id: create_release
@@ -132,9 +128,3 @@ jobs:
132128
release_name: Release ${{ github.ref }}
133129
draft: false
134130
prerelease: false
135-
136-
- name: Upload Build Artifacts
137-
uses: actions/upload-artifact@v3
138-
with:
139-
name: dist
140-
path: dist/

0 commit comments

Comments
 (0)