feat: add post3 s3 proxy for postgresql
Signed-off-by: kjuulh <contact@kjuulh.io>
This commit is contained in:
30
todos/POST3-009-ci-dagger.md
Normal file
30
todos/POST3-009-ci-dagger.md
Normal file
@@ -0,0 +1,30 @@
|
||||
# POST3-009: CI pipeline with Dagger Rust SDK
|
||||
|
||||
**Status:** Done
|
||||
**Priority:** P1
|
||||
**Blocked by:** —
|
||||
|
||||
## Description
|
||||
|
||||
Set up a Dagger-based CI pipeline using a custom self-contained `ci/` crate with `dagger-sdk` directly (not the external `cuddle-ci` / `dagger-rust` components, which are too opinionated for post3's context).
|
||||
|
||||
## What was built
|
||||
|
||||
- [x] `ci/` added as workspace member
|
||||
- [x] `ci/Cargo.toml` with dependencies: dagger-sdk, eyre, tokio, clap
|
||||
- [x] `ci/src/main.rs` — custom pipeline with:
|
||||
- `pr` and `main` subcommands (clap CLI)
|
||||
- Source loading with dependency caching (skeleton files pattern from dagger-components)
|
||||
- `rustlang/rust:nightly` base with clang + mold 2.3.3 for fast linking
|
||||
- Dagger cache volumes for target/ and cargo registry
|
||||
- `cargo check --workspace` compilation check
|
||||
- PostgreSQL 18 as Dagger service container for integration tests
|
||||
- `cargo test --workspace -- --test-threads=1` against Dagger PG
|
||||
- Release binary build + packaging into `debian:bookworm-slim`
|
||||
- `post3-server --help` sanity check in final image
|
||||
- [x] `mise.toml` tasks: `ci:pr`, `ci:main`
|
||||
- [x] No container publish (deferred until registry is decided)
|
||||
|
||||
## Reference
|
||||
|
||||
Pattern inspired by dagger-components (`/home/kjuulh/git/git.kjuulh.io/kjuulh/dagger-components`) but self-contained — no external git dependencies.
|
||||
Reference in New Issue
Block a user