Loading...
Loading...
Earthly E2E validation for YAML schema contracts. TRIGGERS - schema validation, YAML schema, schema contracts, regenerate types.
npx skill4agent add terrylica/cc-skills schema-e2e-validationcolima startdocker ps # Should not error+test-schema-validate+test-schema-e2edoppler configure set token <token_from_1password>
doppler setup --project gapless-network-data --config prdbrew install earthlycd /Users/terryli/eon/gapless-network-data
colima start # If not already running
earthly +test-schema-generatecd /Users/terryli/eon/gapless-network-data
colima start # If not already running
./scripts/earthly-with-doppler.sh +test-schema-e2ecd /Users/terryli/eon/gapless-network-data
earthly +all+test-schema-generate+test-schema-e2e./earthly-artifacts/| Path | Contents |
|---|---|
| Pydantic + TypedDict models |
| Package init |
| ClickHouse DDL |
| Markdown documentation |
e2e/types/e2e/ddl/e2e/docs/| Target | Secrets | Purpose |
|---|---|---|
| No | Install uv + dependencies |
| No | Copy source files |
| No | Run pytest |
| No | Generate types/DDL/docs |
| Yes | Validate vs ClickHouse |
| Yes | Full workflow + artifacts |
| No | Run all non-secret targets |
colima start
# Wait for "done" message, then retry
earthly +test-schema-generate--secret-file-path--secret-file# WRONG
earthly --secret-file=/path/to/secrets +target
# CORRECT
earthly --secret-file-path=/path/to/secrets +target# WRONG format
CLICKHOUSE_HOST="host.cloud"
# CORRECT format
CLICKHOUSE_HOST=host.clouddeps:
COPY pyproject.toml uv.lock README.md ./ # README.md required!# Verify Doppler has the secrets
doppler secrets --project gapless-network-data --config prd | grep CLICKHOUSE
# Use the wrapper script (handles secret injection)
./scripts/earthly-with-doppler.sh +test-schema-validateearthly --no-cache +test-schema-e2escripts/earthly-with-doppler.shCLICKHOUSE_*KEY="value"KEY=value--secret-file-path| Secret | Purpose |
|---|---|
| ClickHouse Cloud host |
| Read-only user |
| Read-only password |
| File | Purpose |
|---|---|
| Main build file |
| Secret injection wrapper |
| SSoT schema |
| ADR |
--secret-file-path--secret-file--format envsed 's/"//g'quality-tools:clickhouse-architect| Skill | Purpose |
|---|---|
| Schema design before validation |
| Cloud credentials for E2E tests |
| Client configuration |