Description / Problem Statement:
Currently, Gentleman.Dots has an incredibly robust set of E2E verification tests using Docker (docker-test.sh & e2e_test.sh). However, these are handled manually, relying on local developers to verify against regressions before merging PRs. This creates workflow friction, enables "it works on my machine" pitfalls, and leaves a massive testing blindspot for macOS since Docker natively tests Linux variants.
Proposal (SDD Spec):
I would like to architect and implement an automated GitHub Actions workflow (.github/workflows/e2e-testing.yml) that acts as a mandatory gate for all Pull Requests and heavy commits to main.
Technical Approach / Deliverables:
- Linux Container Matrix Job: Leverage the existing, mature Docker setups in
installer/e2e to run automated non-interactive validations across a parallel matrix slice: [ubuntu, debian, fedora, alpine, termux].
- macOS Native Ephemeral Job: Spin up a
macos-latest GitHub runner to compile the custom Go binaries and execute the core installation logic locally over the OS filesystem to prevent Apple-specific architecture lock-ups.
- Go Build Caching: Create proper cache restoration points for
go mod files to ensure our pipeline executes blazingly fast without eating GitHub minute quotas.
Value Added:
This inherently protects the codebase from shipping corrupted dotfile installers breaking our active user base's environments. It brings immediate QA scaling without shifting the burden heavily onto the core maintainers.
I'd gladly take ownership of building this workflow cleanly. If this resonates with the vision of the repo, I'll branch out and open a Draft PR shortly.
Description / Problem Statement:
Currently, Gentleman.Dots has an incredibly robust set of E2E verification tests using Docker (
docker-test.sh&e2e_test.sh). However, these are handled manually, relying on local developers to verify against regressions before merging PRs. This creates workflow friction, enables "it works on my machine" pitfalls, and leaves a massive testing blindspot for macOS since Docker natively tests Linux variants.Proposal (SDD Spec):
I would like to architect and implement an automated GitHub Actions workflow (
.github/workflows/e2e-testing.yml) that acts as a mandatory gate for all Pull Requests and heavy commits tomain.Technical Approach / Deliverables:
installer/e2eto run automatednon-interactivevalidations across a parallel matrix slice:[ubuntu, debian, fedora, alpine, termux].macos-latestGitHub runner to compile the custom Go binaries and execute the core installation logic locally over the OS filesystem to prevent Apple-specific architecture lock-ups.go modfiles to ensure our pipeline executes blazingly fast without eating GitHub minute quotas.Value Added:
This inherently protects the codebase from shipping corrupted
dotfileinstallers breaking our active user base's environments. It brings immediate QA scaling without shifting the burden heavily onto the core maintainers.I'd gladly take ownership of building this workflow cleanly. If this resonates with the vision of the repo, I'll branch out and open a Draft PR shortly.