Separate Zapier, web, API, and leaf access planes with NATS authz
Some checks are pending
offline / test (push) Waiting to run

Zapier is one ingress. Direct web, customer API, and S2S leaf nodes are their own services. Every hop to an internal subject must pass verae.access.authz.check (default deny by plane).
This commit is contained in:
George Lambert 2026-09-11 16:05:05 -04:00
parent ac38676645
commit 1b199ca4d4
117 changed files with 2640 additions and 105 deletions

View file

@ -75,6 +75,11 @@ SECTIONS = [
("packages/zappier-customer-service/README.md", "Customer-service credits API"),
("packages/zappier-sales-pricing/README.md", "Sales per-customer pricing API"),
("packages/zappier-accounting-export/README.md", "QuickBooks / accounting export"),
("packages/verae-access-authz/README.md", "Access-plane authorization"),
("packages/verae-access-web/README.md", "Direct web access plane"),
("packages/verae-access-api/README.md", "Direct customer API plane"),
("packages/verae-access-leaf/README.md", "S2S NATS leaf plane"),
("packages/verae-access-zapier/README.md", "Zapier-only access plane"),
],
),
(
@ -331,6 +336,11 @@ def main() -> None:
"zappier-customer-service",
"zappier-sales-pricing",
"zappier-accounting-export",
"verae-access-authz",
"verae-access-web",
"verae-access-api",
"verae-access-leaf",
"verae-access-zapier",
):
pkg_root = ROOT / "packages" / pkg
if pkg in {"zapier-user-docs", "overview", "docs-master", "verae-ops"}:
@ -493,6 +503,11 @@ def main() -> None:
("zappier-customer-service", "CS credits"),
("zappier-sales-pricing", "Sales per-customer pricing"),
("zappier-accounting-export", "QuickBooks export"),
("verae-access-authz", "Access-plane authorization"),
("verae-access-web", "Direct web access"),
("verae-access-api", "Direct customer API"),
("verae-access-leaf", "S2S NATS leaf"),
("verae-access-zapier", "Zapier access plane"),
]
git_lis = "".join(
f'<li><a href="https://git.georgelambert.org/marchon/{name}">{name}</a> '

View file

@ -26,6 +26,11 @@ PACKAGES = [
("zappier-customer-service", ROOT / "packages" / "zappier-customer-service" / "src", (".js",)),
("zappier-sales-pricing", ROOT / "packages" / "zappier-sales-pricing" / "src", (".js",)),
("zappier-accounting-export", ROOT / "packages" / "zappier-accounting-export" / "src", (".js",)),
("verae-access-authz", ROOT / "packages" / "verae-access-authz" / "src", (".js",)),
("verae-access-web", ROOT / "packages" / "verae-access-web" / "src", (".js",)),
("verae-access-api", ROOT / "packages" / "verae-access-api" / "src", (".js",)),
("verae-access-leaf", ROOT / "packages" / "verae-access-leaf" / "src", (".js",)),
("verae-access-zapier", ROOT / "packages" / "verae-access-zapier" / "src", (".js",)),
]
REPO_READMES = [
@ -48,6 +53,11 @@ REPO_READMES = [
"zappier-customer-service",
"zappier-sales-pricing",
"zappier-accounting-export",
"verae-access-authz",
"verae-access-web",
"verae-access-api",
"verae-access-leaf",
"verae-access-zapier",
]
SKIP_PARTS = {"test", "tests", "node_modules", "dist"}

View file

@ -54,6 +54,11 @@ create zappier-account-balance "NATS account balance source of truth"
create zappier-customer-service "Customer-service prepaid credit adjustments"
create zappier-sales-pricing "Sales per-customer pricing"
create zappier-accounting-export "QuickBooks IIF and accounting CSV export"
create verae-access-authz "NATS authorization step for access planes"
create verae-access-web "Direct customer web access plane"
create verae-access-api "Direct customer API access plane"
create verae-access-leaf "Server-to-server NATS leaf access plane"
create verae-access-zapier "Zapier Platform access plane only"
push_dir "$ROOT/packages/zappier" zappier-edge
push_dir "$ROOT/packages/verae-zapier-middleware" verae-middleware
@ -74,5 +79,10 @@ push_dir "$ROOT/packages/zappier-account-balance" zappier-account-balance
push_dir "$ROOT/packages/zappier-customer-service" zappier-customer-service
push_dir "$ROOT/packages/zappier-sales-pricing" zappier-sales-pricing
push_dir "$ROOT/packages/zappier-accounting-export" zappier-accounting-export
push_dir "$ROOT/packages/verae-access-authz" verae-access-authz
push_dir "$ROOT/packages/verae-access-web" verae-access-web
push_dir "$ROOT/packages/verae-access-api" verae-access-api
push_dir "$ROOT/packages/verae-access-leaf" verae-access-leaf
push_dir "$ROOT/packages/verae-access-zapier" verae-access-zapier
echo ALL_MODULE_REPOS_PUSHED