Skip to content

Commit 26ee08a

Browse files
committed
Update all READMEs to follow version-agnostic documentation standards
Documentation improvements: - Add Available Tags sections to all image READMEs (ESP-IDF, PlatformIO, ESP-Matter) - Remove specific version numbers throughout, use placeholders (<version>, <commit>) - Remove Version Information tables with hardcoded versions - Simplify root README Registry section (removed detailed tags, kept minimal) - Use generic terms: Python (not 3.11), Ubuntu LTS (not 24.04), Unity (not 2.6.0) - Update build argument examples to use <version> placeholders - Change build arg defaults to 'see Dockerfile' instead of specific versions Rationale: - Follows documentation-standards.mdc rules for version handling - Documentation stays accurate as versions update via build matrix - Reduces maintenance burden (no need to update READMEs when versions change) - Focuses on image capabilities, not specific versions - Tag information is image-specific, not in root README Tag structure documented: - latest/stable (floating) - <prefix>-v<version> (pinned, recommended for CI/CD) - sha-<commit> (debugging/exact build reproduction)
1 parent ec58661 commit 26ee08a

File tree

4 files changed

+82
-46
lines changed

4 files changed

+82
-46
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,8 @@ Images are published to GitHub Container Registry (GHCR):
202202
- **ESP-Matter**: `ghcr.io/jethome-iot/jethome-dev-esp-matter`
203203
- **PlatformIO**: `ghcr.io/jethome-iot/jethome-dev-platformio`
204204

205+
See individual image documentation for available tags and usage examples.
206+
205207
## Use Cases
206208

207209
- **CI/CD**: Automated firmware builds in GitHub Actions, GitLab CI

images/esp-idf/README.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,28 @@ This image extends the official Espressif ESP-IDF image with additional tools fo
3131

3232
## Quick Start
3333

34+
### Available Tags
35+
36+
| Tag Type | Example | Usage |
37+
|----------|---------|-------|
38+
| **Latest** | `latest` | Always points to newest build (floating) |
39+
| **Stable** | `stable` | Same as latest (semantic preference) |
40+
| **Version** | `idf-v<version>` | Pin to specific ESP-IDF base version (recommended for CI/CD) |
41+
| **Commit** | `sha-<commit>` | Pin to exact git commit (debugging) |
42+
43+
**Tag Recommendations:**
44+
- **Development**: Use `latest` for convenience
45+
- **CI/CD**: Use version tags (`idf-v<version>`) for reproducibility
46+
- **Debugging**: Use commit tags (`sha-<commit>`) to reproduce exact build
47+
3448
### Pull Image
3549

3650
```bash
51+
# Latest build
3752
docker pull ghcr.io/jethome-iot/jethome-dev-esp-idf:latest
53+
54+
# Specific version (recommended for CI/CD)
55+
docker pull ghcr.io/jethome-iot/jethome-dev-esp-idf:idf-v<version>
3856
```
3957

4058
### Build Your Project

images/esp-matter/README.md

Lines changed: 31 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# ESP-Matter v1.4.2 Development Image
1+
# ESP-Matter Development Image
22

3-
Docker image for ESP32 Matter device development with ESP-Matter SDK v1.4.2. Built on our ESP-IDF image, it provides a complete environment for developing Matter-compatible smart home devices.
3+
Docker image for ESP32 Matter device development with ESP-Matter SDK. Built on our ESP-IDF image, it provides a complete environment for developing Matter-compatible smart home devices.
44

55
## Overview
66

@@ -9,15 +9,15 @@ This image extends the `jethome-dev-esp-idf` image with Espressif's ESP-Matter S
99
## What's Inside
1010

1111
**Base Image:**
12-
- `jethome-dev-esp-idf:idf-v5.4.1` - Inherits all ESP-IDF tools
13-
- ESP-IDF 5.4.1 with all ESP32 toolchains
12+
- `jethome-dev-esp-idf` - Inherits all ESP-IDF tools
13+
- ESP-IDF with all ESP32 toolchains
1414
- QEMU emulation (Xtensa and RISC-V)
1515
- pytest, pytest-embedded, testing tools
16-
- Python 3.12.3, Ubuntu 24.04 LTS
17-
- Build tools: ccache, jq, vim, nano, rsync
16+
- Python, Ubuntu LTS
17+
- Build tools: ccache, jq
1818

1919
**ESP-Matter SDK:**
20-
- ESP-Matter v1.4.2
20+
- ESP-Matter
2121
- ConnectedHomeIP SDK (Matter reference implementation)
2222
- Matter device libraries and clusters
2323
- Example applications (light, switch, bridge, etc.)
@@ -38,10 +38,30 @@ Host tools (chip-tool, chip-cert, ZAP) are **NOT included** in this image to kee
3838

3939
## Quick Start
4040

41+
### Available Tags
42+
43+
| Tag Type | Example | Usage |
44+
|----------|---------|-------|
45+
| **Latest** | `latest` | Always points to newest build (floating) |
46+
| **Stable** | `stable` | Same as latest (semantic preference) |
47+
| **Version** | `idf-v<idf-ver>-matter-v<matter-ver>` | Pin to specific IDF + Matter combination (recommended for CI/CD) |
48+
| **Commit** | `sha-<commit>` | Pin to exact git commit (debugging) |
49+
50+
**Tag Recommendations:**
51+
- **Development**: Use `latest` for convenience
52+
- **CI/CD**: Use version tags (`idf-v<idf-ver>-matter-v<matter-ver>`) for reproducibility
53+
- **Debugging**: Use commit tags (`sha-<commit>`) to reproduce exact build
54+
55+
**Note**: Version tags include both ESP-IDF and ESP-Matter versions for full clarity.
56+
4157
### Pull Image
4258

4359
```bash
60+
# Latest build
4461
docker pull ghcr.io/jethome-iot/jethome-dev-esp-matter:latest
62+
63+
# Specific version (recommended for CI/CD)
64+
docker pull ghcr.io/jethome-iot/jethome-dev-esp-matter:idf-v<idf-ver>-matter-v<matter-ver>
4565
```
4666

4767
### Build Matter Example
@@ -252,31 +272,19 @@ docker build -t jethome-dev-esp-matter .
252272

253273
```bash
254274
docker build \
255-
--build-arg BASE_IMAGE_TAG=idf-v5.4.1 \
256-
--build-arg ESP_MATTER_VERSION=v1.4.2 \
275+
--build-arg BASE_IMAGE_TAG=idf-v<version> \
276+
--build-arg ESP_MATTER_VERSION=v<version> \
257277
-t jethome-dev-esp-matter .
258278
```
259279

260280
Available build arguments:
261-
- `BASE_IMAGE_TAG` - ESP-IDF base image tag (default: `idf-v5.4.1`)
262-
- `ESP_MATTER_VERSION` - ESP-Matter version tag (default: `v1.4.2`)
281+
- `BASE_IMAGE_TAG` - ESP-IDF base image tag (default: see Dockerfile)
282+
- `ESP_MATTER_VERSION` - ESP-Matter version tag (default: see Dockerfile)
263283

264284
### Multi-Platform Support
265285

266286
This image is built for both **linux/amd64** and **linux/arm64** architectures. Docker automatically pulls the correct image for your platform.
267287

268-
## Version Information
269-
270-
| Component | Version | Notes |
271-
|-----------|---------|-------|
272-
| Base Image | jethome-dev-esp-idf:idf-v5.4.1 | Our ESP-IDF image |
273-
| ESP-IDF | 5.4.1 | From base image |
274-
| ESP-Matter | v1.4.2 | Matter SDK for ESP32 |
275-
| ConnectedHomeIP | Included as submodule | Matter reference implementation |
276-
| Python | 3.12.3 | From base image |
277-
| Ubuntu | 24.04 LTS | From base image |
278-
| QEMU | 9.0.0 | From base image |
279-
280288
## Notes
281289

282290
**Host Tools Not Included**: chip-tool, chip-cert, and ZAP are not included in this image to keep size minimal. For testing and commissioning, use separate controller installations or Matter-compatible platforms (Apple Home, Google Home, etc.).

images/platformio/README.md

Lines changed: 31 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ This image provides a ready-to-use PlatformIO environment with ESP32 platform su
99
## What's Inside
1010

1111
**Base Environment:**
12-
- Python 3.11 slim (Debian Bookworm)
13-
- PlatformIO Core (latest)
12+
- Python slim (Debian)
13+
- PlatformIO Core
1414

1515
**Pre-installed Platforms:**
16-
- `espressif32@6.11.0` - ESP32 platform (all chip variants)
17-
- `native@1.2.1` - Native platform for unit testing
16+
- `espressif32` - ESP32 platform (all chip variants)
17+
- `native` - Native platform for unit testing
1818

1919
**Build Tools:**
2020
- build-essential (gcc, g++, make)
@@ -27,14 +27,32 @@ This image provides a ready-to-use PlatformIO environment with ESP32 platform su
2727
- jinja2 - Template engine
2828

2929
**Testing:**
30-
- Unity 2.6.0 - Globally installed test framework
30+
- Unity - Globally installed test framework
3131

3232
## Quick Start
3333

34+
### Available Tags
35+
36+
| Tag Type | Example | Usage |
37+
|----------|---------|-------|
38+
| **Latest** | `latest` | Always points to newest build (floating) |
39+
| **Stable** | `stable` | Same as latest (semantic preference) |
40+
| **Version** | `pio-v<version>` | Pin to specific PlatformIO version (recommended for CI/CD) |
41+
| **Commit** | `sha-<commit>` | Pin to exact git commit (debugging) |
42+
43+
**Tag Recommendations:**
44+
- **Development**: Use `latest` for convenience
45+
- **CI/CD**: Use version tags (`pio-v<version>`) for reproducibility
46+
- **Debugging**: Use commit tags (`sha-<commit>`) to reproduce exact build
47+
3448
### Pull Image
3549

3650
```bash
51+
# Latest build
3752
docker pull ghcr.io/jethome-iot/jethome-dev-platformio:latest
53+
54+
# Specific version (recommended for CI/CD)
55+
docker pull ghcr.io/jethome-iot/jethome-dev-platformio:pio-v<version>
3856
```
3957

4058
### Build Your Project
@@ -219,34 +237,24 @@ docker build -t jethome-dev-platformio .
219237

220238
```bash
221239
docker build \
222-
--build-arg PIO_VERSION=6.1.18 \
223-
--build-arg ESP32_PLATFORM_VERSION=6.11.0 \
224-
--build-arg NATIVE_PLATFORM_VERSION=1.2.1 \
225-
--build-arg UNITY_VERSION=2.6.0 \
240+
--build-arg PIO_VERSION=<version> \
241+
--build-arg ESP32_PLATFORM_VERSION=<version> \
242+
--build-arg NATIVE_PLATFORM_VERSION=<version> \
243+
--build-arg UNITY_VERSION=<version> \
226244
-t jethome-dev-platformio .
227245
```
228246

229247
Available build arguments:
230-
- `PIO_VERSION` - PlatformIO Core version (default: 6.1.18)
231-
- `ESP32_PLATFORM_VERSION` - Espressif32 platform version (default: 6.11.0)
232-
- `NATIVE_PLATFORM_VERSION` - Native platform version (default: 1.2.1)
233-
- `UNITY_VERSION` - Unity test framework version (default: 2.6.0)
248+
- `PIO_VERSION` - PlatformIO Core version (default: see Dockerfile)
249+
- `ESP32_PLATFORM_VERSION` - Espressif32 platform version (default: see Dockerfile)
250+
- `NATIVE_PLATFORM_VERSION` - Native platform version (default: see Dockerfile)
251+
- `UNITY_VERSION` - Unity test framework version (default: see Dockerfile)
234252
- `PIO_ENVS` - Environments for pre-build (currently disabled)
235253

236254
### Multi-Platform Support
237255

238256
This image is built for both **linux/amd64** and **linux/arm64** architectures. Docker automatically pulls the correct image for your platform.
239257

240-
## Version Information
241-
242-
| Component | Version | Notes |
243-
|-----------|---------|-------|
244-
| Base Image | Python 3.11 slim | Debian Bookworm |
245-
| PlatformIO Core | 6.1.18 | Latest stable release |
246-
| ESP32 Platform | 6.11.0 | Version 6.12.0 has compatibility issues |
247-
| Native Platform | 1.2.1 | For unit testing |
248-
| Unity Framework | 2.6.0 | Globally installed |
249-
250258
## License
251259

252260
MIT License - see [LICENSE](../../LICENSE) file.

0 commit comments

Comments
 (0)