mirror of
https://github.com/hanzoai/id.git
synced 2026-10-30 14:57:39 +00:00
Every id host renders the same SPA, and the only thing the pod adds is /config.json, which it writes at boot from two SPA_* env values: the per-host org catalog and the ingest keyring, both public (the browser reads them). That file now ships in the export, and the site lane publishes it to s3://hanzo-sites/hanzo/id, so the edge can serve hanzo.id and its brand hosts with no pod. The image keeps its SPA_* env until the pod is retired, and that env still wins inside the pod. Checked in headless Chromium with /v1 and /.well-known left to cloud: the export renders what the pods render on hanzo.id, iam.hanzo.ai, lux.id, id.lux.network, zoolabs.id and pars.id. Co-authored-by: Hanzo Dev <[email protected]>
2 lines
3.0 KiB
JSON
2 lines
3.0 KiB
JSON
{"iamTenantConfigJson":"{\n \"hanzo.id\": {\"orgId\":\"hanzo\",\"canonical\":true,\"clientId\":\"hanzo-console\",\"appName\":\"hanzo-console\",\"brandUrl\":\"https://cdn.jsdelivr.net/npm/@hanzo/[email protected]/brand.json\"},\n \"iam.hanzo.ai\": {\"orgId\":\"hanzo\",\"clientId\":\"hanzo-console\",\"appName\":\"hanzo-console\",\"iamUrl\":\"https://iam.hanzo.ai\",\"publicOrigin\":\"https://iam.hanzo.ai\",\"brandUrl\":\"https://cdn.jsdelivr.net/npm/@hanzo/[email protected]/brand.json\"},\n \"auth.hanzo.ai\": {\"orgId\":\"hanzo\",\"clientId\":\"hanzo-console\",\"appName\":\"hanzo-console\",\"iamUrl\":\"https://auth.hanzo.ai\",\"publicOrigin\":\"https://auth.hanzo.ai\",\"brandUrl\":\"https://cdn.jsdelivr.net/npm/@hanzo/[email protected]/brand.json\"},\n \"lux.id\": {\"orgId\":\"lux\", \"canonical\":true,\"payUrl\":\"https://pay.lux.cloud\",\"clientId\":\"lux-cloud\", \"appName\":\"lux-cloud\", \"brandUrl\":\"https://cdn.jsdelivr.net/npm/@luxfi/[email protected]/brand.json\"},\n \"id.lux.network\": {\"orgId\":\"lux\", \"payUrl\":\"https://pay.lux.cloud\",\"clientId\":\"lux-cloud\", \"appName\":\"lux-cloud\", \"brandUrl\":\"https://cdn.jsdelivr.net/npm/@luxfi/[email protected]/brand.json\"},\n \"zoolabs.id\": {\"orgId\":\"zoo\", \"canonical\":true,\"payUrl\":\"https://pay.zoo.cloud\",\"clientId\":\"zoo-console\", \"appName\":\"zoo-console\", \"brandUrl\":\"https://cdn.jsdelivr.net/npm/@zooai/[email protected]/brand.json\"},\n \"www.zoolabs.id\": {\"orgId\":\"zoo\", \"payUrl\":\"https://pay.zoo.cloud\",\"clientId\":\"zoo-console\", \"appName\":\"zoo-console\", \"brandUrl\":\"https://cdn.jsdelivr.net/npm/@zooai/[email protected]/brand.json\"},\n \"id.zoo.network\": {\"orgId\":\"zoo\", \"payUrl\":\"https://pay.zoo.cloud\",\"clientId\":\"zoo-console\", \"appName\":\"zoo-console\", \"brandUrl\":\"https://cdn.jsdelivr.net/npm/@zooai/[email protected]/brand.json\"},\n \"pars.id\": {\"orgId\":\"pars\", \"canonical\":true,\"clientId\":\"pars-console\", \"appName\":\"pars-console\", \"brandUrl\":\"https://cdn.jsdelivr.net/npm/@parsdao/[email protected]/brand.json\"},\n \"id.pars.network\": {\"orgId\":\"pars\", \"clientId\":\"pars-console\", \"appName\":\"pars-console\", \"brandUrl\":\"https://cdn.jsdelivr.net/npm/@parsdao/[email protected]/brand.json\"},\n \"osage.id\": {\"orgId\":\"osage\",\"canonical\":true,\"clientId\":\"osage-id-portal\",\"appName\":\"osage-id\"},\n \"www.osage.id\": {\"orgId\":\"osage\",\"clientId\":\"osage-id-portal\",\"appName\":\"osage-id\"},\n \"id.bootno.de\": {\"orgId\":\"bootnode\",\"canonical\":true,\"clientId\":\"bootnode-platform\",\"appName\":\"bootnode-platform\"},\n \"id.adnexus.dev\": {\"orgId\":\"adnexus\",\"canonical\":true,\"clientId\":\"adnexus-app\",\"appName\":\"adnexus-app\"}\n}\n","ingestKeyring":"{\n \"hanzo\": \"pk-rM_CdaF2MQckGCrla113SrR1oH4zvqN8xh2I95Z9tY8\",\n \"lux\": \"pk-gUZp6ZVfhJzSwK-rb4oLbVkpCnMBx5uSCpxf_5yEhQk\",\n \"zoo\": \"pk-3TKpKnERV9AQSsBUERWkZejC1O1mUxc1jRzsP3MPbs4\"\n}\n","v":1}
|