Skip to content

Commit 504677e

Browse files
committed
Update CI workflows and build checks
- Adjust daily-build workflow settings - Remove docs workflow and update macOS CI checks - Expand post-build checks with tests and health - Refresh agent review bundle
1 parent 4d04764 commit 504677e

5 files changed

Lines changed: 91 additions & 15 deletions

File tree

.github/workflows/daily-build.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
name: Build
1+
name: Daily Build
22

33
on:
44
push:
5-
branches: [main] # Run on every commit to main
5+
branches: [main] # Run on every commit to main
66
schedule:
7-
- cron: "0 8 * * *" # Every day at 08:00 UTC
8-
workflow_dispatch: # Allow manual triggering from GitHub UI
7+
- cron: "0 8 * * *" # Every day at 08:00 UTC
8+
workflow_dispatch: # Allow manual triggering from GitHub UI
99

1010
jobs:
1111
daily-test:

.github/workflows/macos-ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: macOS CI
1+
name: MacOS CI
22

33
on:
44
workflow_dispatch:

.github/workflows/post-build.yml

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,27 @@ jobs:
2424
python -m pip install --upgrade pip
2525
pip install -e ".[dev,docs]"
2626
27-
- name: Build docs (gated after Build)
28-
run: mkdocs build --strict
27+
- name: Compile Python
28+
run: |
29+
python -m compileall src
30+
31+
- name: Ruff Check
32+
run: |
33+
ruff check src
34+
35+
- name: Ruff Format Check
36+
run: |
37+
ruff format --check src
38+
39+
- name: Run Tests
40+
env:
41+
PYTHONWARNINGS: default
42+
run: |
43+
python -m pytest -q
44+
45+
- name: Start PyPNM
46+
run: |
47+
python -m uvicorn pypnm.api.main:app --host 127.0.0.1 --port 8000 &
48+
sleep 5
49+
curl -fsS http://127.0.0.1:8000/health
50+
pkill -f "uvicorn pypnm.api.main:app"
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Docs
1+
name: Publish MkDocs
22

33
on:
44
push:

tools/agent-review/2026-01-25-atdma-group-delay-types.review.md

Lines changed: 61 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,64 @@
11
## Agent Review Bundle Summary
2-
- Goal: Clarify macOS TFTP server availability.
3-
- Changes: Add a note that macOS ships a TFTP client but not a server.
4-
- Files: .github/workflows/macos-ci.yml; README.md; install.sh; src/pypnm/pnm/analysis/atdma_group_delay.py; src/pypnm/pnm/analysis/us_drw.py; src/pypnm/pnm/data_type/DocsEqualizerData.py; src/pypnm/docsis/cm_snmp_operation.py; src/pypnm/api/routes/docs/if30/us/atdma/chan/stats/service.py; docs/api/fast-api/single/us/atdma/chan/pre-equalization.md; docs/api/fast-api/single/us/atdma/chan/stats.md; docs/api/fast-api/single/us/ofdma/stats.md; docs/api/fast-api/single/ds/ofdm/mer-margin.md; docs/api/fast-api/single/general/system-description.md; docs/install/development.md; docs/docker/install.md; docs/kubernetes/pypnm-deploy.md; docs/system/pnm-file-retrieval/tftp.md; tests/test_docs_equalizer_group_delay.py; tools/release/release.py
2+
- Goal: Add a health check to post-build CI.
3+
- Changes: Start uvicorn and curl /health after pytest.
4+
- Files: .github/workflows/post-build.yml; .github/workflows/macos-ci.yml; README.md; install.sh; src/pypnm/pnm/analysis/atdma_group_delay.py; src/pypnm/pnm/analysis/us_drw.py; src/pypnm/pnm/data_type/DocsEqualizerData.py; src/pypnm/docsis/cm_snmp_operation.py; src/pypnm/api/routes/docs/if30/us/atdma/chan/stats/service.py; docs/api/fast-api/single/us/atdma/chan/pre-equalization.md; docs/api/fast-api/single/us/atdma/chan/stats.md; docs/api/fast-api/single/us/ofdma/stats.md; docs/api/fast-api/single/ds/ofdm/mer-margin.md; docs/api/fast-api/single/general/system-description.md; docs/install/development.md; docs/docker/install.md; docs/kubernetes/pypnm-deploy.md; docs/system/pnm-file-retrieval/tftp.md; tests/test_docs_equalizer_group_delay.py; tools/release/release.py
55
- Tests: Not run (not requested).
66
- Notes: None.
77

8+
# FILE: .github/workflows/post-build.yml
9+
name: Post Build
10+
11+
on:
12+
workflow_run:
13+
workflows: ["Build"]
14+
types: [completed]
15+
16+
jobs:
17+
downstream:
18+
if: ${{ github.event.workflow_run.conclusion == 'success' }}
19+
runs-on: ubuntu-latest
20+
21+
steps:
22+
- name: Checkout
23+
uses: actions/checkout@v4
24+
25+
- name: Set up Python
26+
uses: actions/setup-python@v5
27+
with:
28+
python-version: "3.12"
29+
30+
- name: Install dependencies
31+
run: |
32+
python -m pip install --upgrade pip
33+
pip install -e ".[dev,docs]"
34+
35+
- name: Build docs (gated after Build)
36+
run: mkdocs build --strict
37+
38+
- name: Compile Python
39+
run: |
40+
python -m compileall src
41+
42+
- name: Ruff Check
43+
run: |
44+
ruff check src
45+
46+
- name: Ruff Format Check
47+
run: |
48+
ruff format --check .
49+
50+
- name: Run Tests
51+
env:
52+
PYTHONWARNINGS: default
53+
run: |
54+
python -m pytest -q
55+
56+
- name: Start PyPNM
57+
run: |
58+
python -m uvicorn pypnm.api.main:app --host 127.0.0.1 --port 8000 &
59+
sleep 5
60+
curl -fsS http://127.0.0.1:8000/health
61+
pkill -f "uvicorn pypnm.api.main:app"
862
# FILE: .github/workflows/macos-ci.yml
963
name: macOS CI
1064

@@ -145,7 +199,7 @@ PyPNM is a DOCSIS 3.x/4.0 Proactive Network Maintenance toolkit for engineers wh
145199
Fast install (helper script; latest release auto-detected):
146200

147201
```bash
148-
TAG="v1.0.52.0-rc1"
202+
TAG="v1.0.53.0"
149203
PORT=8080
150204

151205
curl -fsSLo install-pypnm-docker-container.sh \
@@ -5067,7 +5121,7 @@ PyPNM ships with Docker assets so you can run the API quickly on a workstation,
50675121
## Fast path: PyPNM Docker container install
50685122

50695123
```bash
5070-
TAG="v1.0.52.0-rc1"
5124+
TAG="v1.0.53.0"
50715125
PORT=8080
50725126

50735127
curl -fsSLo install-pypnm-docker-container.sh \
@@ -5099,7 +5153,7 @@ curl -X GET http://127.0.0.1:${PORT}/pypnm/system/webService/reload -H 'accept:
50995153
## Deploy bundle flow (tarball)
51005154

51015155
```bash
5102-
TAG="v1.0.52.0-rc1"
5156+
TAG="v1.0.53.0"
51035157
WORKING_DIR="PyPNM-${TAG}"
51045158

51055159
mkdir -p "${WORKING_DIR}"
@@ -5156,7 +5210,7 @@ This workflow pulls the manifests from GitHub and deploys the GHCR image directl
51565210
```bash
51575211
curl -fsSL https://raw.githubusercontent.com/PyPNMApps/PyPNM/main/tools/k8s/pypnm_k8s_remote_deploy.sh \\
51585212
-o /tmp/pypnm_k8s_remote_deploy.sh
5159-
TAG="v1.0.52.0-rc1"
5213+
TAG="v1.0.53.0"
51605214
NAMESPACE="pypnm-cmts-a"
51615215

51625216
bash /tmp/pypnm_k8s_remote_deploy.sh --create --tag "${TAG}" --namespace "${NAMESPACE}" --replicas 1

0 commit comments

Comments
 (0)