SPB Git forge
38commits 1branches 0releases
338.7 MBsize
maindefault branch
yesterdaylast push
HTML 53.9% TypeScript 44.5% JavaScript 0.6% SQL 0.5%
1.5 KB · 26 lines typescript
Raw Blame History
1import { registerParser, registerImplementation } from "@dci/connectors";2import { CloudConnector, CloudNewsroomConnector } from "./shared.js";3import { azureRegionsParser } from "./azure.js";4import { awsDocsRegionsParser, awsLocalZonesParser } from "./aws.js";5import { gcpRegionsParser, googleDatacentersParser } from "./gcp.js";6import { oracleRegionsParser } from "./oracle.js";7import { alibabaRegionsParser } from "./alibaba.js";8import { tencentRegionsParser } from "./tencent.js";9import { ibmRegionsParser } from "./ibm.js";10import { metaDatacentersParser } from "./meta.js";1112/**13 * Cloud / hyperscaler connectors: cloud regions (Azure, AWS, Google Cloud, Oracle, Alibaba, Tencent, IBM),14 * hyperscaler-owned facilities (Google, Meta) and infrastructure newsrooms (Microsoft, AWS, Google, Meta, Apple).15 * Referenced from config/connectors/{azure,aws,gcp,oracle,alibaba,tencent,ibm}-regions.yaml,16 * google-datacenters.yaml, meta-datacenters.yaml and *-news.yaml.17 */18let registered = false;19export function register(): void {20  if (registered) return;21  registered = true;22  for (const p of [azureRegionsParser, awsDocsRegionsParser, awsLocalZonesParser, gcpRegionsParser, googleDatacentersParser, oracleRegionsParser, alibabaRegionsParser, tencentRegionsParser, ibmRegionsParser, metaDatacentersParser]) registerParser(p);23  registerImplementation("cloud_regions", (cfg) => new CloudConnector(cfg));24  registerImplementation("cloud_newsroom", (cfg) => new CloudNewsroomConnector(cfg));25}26