Skip to content

feat: auto-generated Pipelit API client + auth rewrite#21

Merged
theuseless-ai merged 3 commits into
mainfrom
feat/api-client
Mar 18, 2026
Merged

feat: auto-generated Pipelit API client + auth rewrite#21
theuseless-ai merged 3 commits into
mainfrom
feat/api-client

Conversation

@theuseless-ai

Copy link
Copy Markdown
Contributor

Summary

  • Add pipelit-client/ crate — auto-generated from Pipelit's OpenAPI spec (84 models, 19 API modules, rustls TLS)
  • Rewrite src/commands/auth.rs to use generated client instead of raw reqwest calls
  • Add auth::pipelit_config() public helper for future plit api subcommands
  • Add scripts/generate-client.sh for local regeneration with post-gen fixups (AnyOf type + serde attr fixes)
  • Add .github/workflows/regenerate-client.yml — triggered on Pipelit stable releases, opens PR with regenerated client
  • Add e2e/api-client.sh — bash E2E tests covering auth, list endpoints, and full CRUD (17 assertions)
  • Wire E2E into existing Docker CI job

E2E test coverage

  • Auth: login (token + password), status, logout
  • Read: /auth/me, /workflows, /node-types, /credentials, /executions, /health
  • CRUD: create workflow → add nodes → add edge → validate → delete

Closes #17

- Add pipelit-client/ crate generated from OpenAPI spec (84 models, 19 API modules)
- Rewrite src/commands/auth.rs to use generated client instead of raw reqwest
- Add auth::pipelit_config() helper for downstream plit api subcommands
- Add scripts/generate-client.sh for local regeneration with post-gen fixups
- Add .github/workflows/regenerate-client.yml triggered on Pipelit stable releases
- Add e2e/api-client.sh bash E2E tests (auth, CRUD, 17 assertions)
- Wire E2E into Docker CI job
- Add ROADMAP.md and update CLAUDE.md with versioning reference

Closes #17
@theuseless-ai theuseless-ai added this to the v0.5.0 milestone Mar 18, 2026
@theuseless-ai
theuseless-ai merged commit 6e508a4 into main Mar 18, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Auto-generate Rust API client crate from Pipelit OpenAPI spec

1 participant