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).
88 lines
4.5 KiB
Bash
Executable file
88 lines
4.5 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
# Create Forgejo repos and push each module (no node_modules).
|
|
set -euo pipefail
|
|
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
|
TOKEN_FILE="${FORGEJO_TOKEN_FILE:-/tmp/forgejo-zapier.token}"
|
|
TOKEN="$(cat "$TOKEN_FILE")"
|
|
API="https://git.georgelambert.org/api/v1"
|
|
GITSSH="ssh://git@git.georgelambert.org:2223/marchon"
|
|
export GIT_SSH_COMMAND="ssh -o StrictHostKeyChecking=accept-new -p 2223"
|
|
|
|
create() {
|
|
local name="$1" desc="$2"
|
|
curl -sS -X POST "$API/user/repos" \
|
|
-H "Authorization: token $TOKEN" \
|
|
-H "Content-Type: application/json" \
|
|
-d "{\"name\":\"$name\",\"description\":\"$desc\",\"private\":false,\"auto_init\":false}" \
|
|
>/tmp/forgejo-mod.json || true
|
|
echo "repo $name"
|
|
}
|
|
|
|
push_dir() {
|
|
local src="$1" name="$2"
|
|
local tmp
|
|
tmp="$(mktemp -d)"
|
|
rsync -a --exclude node_modules --exclude dist --exclude data --exclude '*.db' --exclude .git \
|
|
"$src/" "$tmp/"
|
|
git -C "$tmp" init -q -b main
|
|
git -C "$tmp" add -A
|
|
git -C "$tmp" -c user.email=marchon@gmail.com -c user.name="George Lambert" \
|
|
commit -q -m "Initial import of $name from zapier monorepo"
|
|
git -C "$tmp" remote add origin "$GITSSH/${name}.git"
|
|
git -C "$tmp" push -u --force origin main
|
|
git -C "$tmp" push --force origin main:master || true
|
|
rm -rf "$tmp"
|
|
echo "pushed $name"
|
|
}
|
|
|
|
create zappier-edge "Metered commercial HTTPS edge (portal, admin, Stripe)"
|
|
create verae-middleware "Zapier-facing HTTP middleware + NATS workers"
|
|
create verae-zapier-app "Zapier Platform CLI app (timestamp/verify/hooks)"
|
|
create verae-activate "Activate-now Zapier app (Add Numbers, Echo, SHA256)"
|
|
create verae-request-splitter "Split hash vs attachments for chain vs WORM"
|
|
create verae-archive-worm "Bloom-filtered WORM archive node"
|
|
create verae-archive-aggregator "Aggregate archive replies into job JSON"
|
|
create zapier-docs-master "Master summaries, NATS contracts, message flows"
|
|
create verae-tree-node "Merkle leaf proofs for hashes only sealed as a bulk summary"
|
|
create verae-zapier-simulator "Zapier interface simulator with hop-by-hop trace console"
|
|
create zapier-user-docs "User docs from signup through hash register, chain lookup, tree-node query"
|
|
create verae-fleet "Service catalog, replica floors, monitor, restart, pause"
|
|
create overview "High-level system overview, NATS cluster, uptime, docs index"
|
|
create verae-nats-process "Template JetStream worker for a new verae.* address"
|
|
create verae-ops "Install, Docker, Proxmox, VMs, dedicated hardware, service linking"
|
|
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
|
|
push_dir "$ROOT/packages/verae-zapier" verae-zapier-app
|
|
push_dir "$ROOT/packages/verae-activate" verae-activate
|
|
push_dir "$ROOT/packages/verae-request-splitter" verae-request-splitter
|
|
push_dir "$ROOT/packages/verae-archive-worm" verae-archive-worm
|
|
push_dir "$ROOT/packages/verae-archive-aggregator" verae-archive-aggregator
|
|
push_dir "$ROOT/packages/docs-master" zapier-docs-master
|
|
push_dir "$ROOT/packages/verae-tree-node" verae-tree-node
|
|
push_dir "$ROOT/packages/verae-zapier-simulator" verae-zapier-simulator
|
|
push_dir "$ROOT/packages/zapier-user-docs" zapier-user-docs
|
|
push_dir "$ROOT/packages/verae-fleet" verae-fleet
|
|
push_dir "$ROOT/packages/overview" overview
|
|
push_dir "$ROOT/packages/verae-nats-process" verae-nats-process
|
|
push_dir "$ROOT/packages/verae-ops" verae-ops
|
|
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
|