ci(integrations): add CI/CD workflows for n8n + Zapier packages
Match the repo's per-integration CI/CD convention (vercel-ai / pi-agent pattern): - n8n-nodes-mem0-checks.yml (lint + build + dist verify) and n8n-nodes-mem0-cd.yml (npm publish --provenance via OIDC, dispatched by the release router on tag n8n-nodes-mem0-v*). - zapier-mem0-checks.yml (zapier validate) and zapier-mem0-cd.yml (manual zapier push; requires ZAPIER_DEPLOY_KEY). Zapier deploys to Zapier's platform, not npm, so it is not in the release router. - Wire both packages into ci-gate.yml (path filters + call jobs + gate). - Register the n8n tag prefix in release.yml and document it + the Zapier manual-deploy in AGENTS.md. - Skip the Zapier E2E suite when MEM0_API_KEY is absent so CI is green offline (it still runs locally with a key).
This commit is contained in:
@@ -450,11 +450,13 @@ Publishing is routed through a single entry point: **`release.yml` (Release Rout
|
||||
| OpenClaw | `openclaw-cd.yml` | `openclaw-v*` | npm (`@mem0/openclaw-mem0`) |
|
||||
| OpenCode Plugin | `opencode-plugin-cd.yml` | `opencode-v*` | npm (`@mem0/opencode-plugin`) |
|
||||
| Pi Agent Plugin | `pi-agent-plugin-cd.yml` | `pi-agent-v*` | npm (`@mem0/pi-agent-plugin`) |
|
||||
| n8n Node | `n8n-nodes-mem0-cd.yml` | `n8n-nodes-mem0-v*` | npm (`n8n-nodes-mem0`) |
|
||||
|
||||
- Package CD workflows are `workflow_dispatch`-only (inputs: `tag`, `prerelease`); they check out and build the given tag. Registry trusted-publisher settings stay pinned to each package's own workflow filename.
|
||||
- All publishing uses **OIDC trusted publishing** — no tokens or secrets required.
|
||||
- First publish of a new npm package must be done manually; OIDC works for subsequent versions.
|
||||
- To re-publish a release (e.g. after a registry settings fix), do **not** delete/recreate the GitHub release — manually dispatch the package workflow instead: `gh workflow run <package>-cd.yml --ref refs/tags/<tag> -f tag=<tag>`.
|
||||
- The **Zapier app** (`integrations/zapier-mem0`) deploys to Zapier's own platform, not npm, so it is **not** in the release router. Deploy it manually: `gh workflow run zapier-mem0-cd.yml --ref main` (requires the `ZAPIER_DEPLOY_KEY` secret).
|
||||
- When adding a new package: add its CD workflow (`workflow_dispatch` with `tag`/`prerelease` inputs), then register its tag prefix in the `case` block in `release.yml`. Keep the bare `v*` arm last.
|
||||
|
||||
### Utility Workflows
|
||||
|
||||
Reference in New Issue
Block a user