@cardano-sdk/cardano-services 0.9.0-nightly.2 → 0.10.0-nightly.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Asset/AssetHttpService.js +2 -2
- package/dist/cjs/Asset/AssetHttpService.js.map +1 -1
- package/dist/cjs/ChainHistory/ChainHistoryHttpService.js +2 -2
- package/dist/cjs/ChainHistory/ChainHistoryHttpService.js.map +1 -1
- package/dist/cjs/NetworkInfo/NetworkInfoHttpService.js +2 -2
- package/dist/cjs/NetworkInfo/NetworkInfoHttpService.js.map +1 -1
- package/dist/cjs/Program/errors/MissingCardanoNodeOption.d.ts +2 -2
- package/dist/cjs/Program/errors/MissingCardanoNodeOption.d.ts.map +1 -1
- package/dist/cjs/Program/errors/MissingCardanoNodeOption.js +1 -1
- package/dist/cjs/Program/errors/MissingCardanoNodeOption.js.map +1 -1
- package/dist/cjs/Program/errors/MissingProgramOption.d.ts +2 -4
- package/dist/cjs/Program/errors/MissingProgramOption.d.ts.map +1 -1
- package/dist/cjs/Program/errors/MissingProgramOption.js +1 -1
- package/dist/cjs/Program/errors/MissingProgramOption.js.map +1 -1
- package/dist/cjs/Program/errors/MissingServiceDependency.d.ts +1 -2
- package/dist/cjs/Program/errors/MissingServiceDependency.d.ts.map +1 -1
- package/dist/cjs/Program/errors/MissingServiceDependency.js.map +1 -1
- package/dist/cjs/Program/errors/UnknownServiceName.d.ts +2 -2
- package/dist/cjs/Program/errors/UnknownServiceName.d.ts.map +1 -1
- package/dist/cjs/Program/errors/UnknownServiceName.js +2 -3
- package/dist/cjs/Program/errors/UnknownServiceName.js.map +1 -1
- package/dist/cjs/Program/index.d.ts +1 -6
- package/dist/cjs/Program/index.d.ts.map +1 -1
- package/dist/cjs/Program/index.js +1 -6
- package/dist/cjs/Program/index.js.map +1 -1
- package/dist/cjs/Program/options/common.d.ts +26 -0
- package/dist/cjs/Program/options/common.d.ts.map +1 -0
- package/dist/cjs/Program/options/common.js +51 -0
- package/dist/cjs/Program/options/common.js.map +1 -0
- package/dist/cjs/Program/options/index.d.ts +5 -0
- package/dist/cjs/Program/options/index.d.ts.map +1 -0
- package/dist/cjs/Program/options/index.js +21 -0
- package/dist/cjs/Program/options/index.js.map +1 -0
- package/dist/cjs/Program/options/ogmios.d.ts +13 -0
- package/dist/cjs/Program/options/ogmios.d.ts.map +1 -0
- package/dist/cjs/Program/options/ogmios.js +24 -0
- package/dist/cjs/Program/options/ogmios.js.map +1 -0
- package/dist/cjs/Program/options/postgres.d.ts +30 -0
- package/dist/cjs/Program/options/postgres.d.ts.map +1 -0
- package/dist/cjs/Program/options/postgres.js +59 -0
- package/dist/cjs/Program/options/postgres.js.map +1 -0
- package/dist/cjs/Program/options/rabbitMq.d.ts +13 -0
- package/dist/cjs/Program/options/rabbitMq.d.ts.map +1 -0
- package/dist/cjs/Program/options/rabbitMq.js +20 -0
- package/dist/cjs/Program/options/rabbitMq.js.map +1 -0
- package/dist/cjs/Program/programs/httpServer.d.ts +45 -0
- package/dist/cjs/Program/programs/httpServer.d.ts.map +1 -0
- package/dist/cjs/Program/programs/httpServer.js +173 -0
- package/dist/cjs/Program/programs/httpServer.js.map +1 -0
- package/dist/cjs/Program/{programs.d.ts → programs/index.d.ts} +3 -1
- package/dist/cjs/Program/programs/index.d.ts.map +1 -0
- package/dist/cjs/Program/programs/index.js +25 -0
- package/dist/cjs/Program/programs/index.js.map +1 -0
- package/dist/cjs/Program/programs/txWorker.d.ts +15 -0
- package/dist/cjs/Program/programs/txWorker.d.ts.map +1 -0
- package/dist/cjs/Program/programs/txWorker.js +29 -0
- package/dist/cjs/Program/programs/txWorker.js.map +1 -0
- package/dist/cjs/Program/services/ogmios.d.ts +3 -3
- package/dist/cjs/Program/services/ogmios.d.ts.map +1 -1
- package/dist/cjs/Program/services/ogmios.js +3 -9
- package/dist/cjs/Program/services/ogmios.js.map +1 -1
- package/dist/cjs/Program/services/postgres.d.ts +4 -2
- package/dist/cjs/Program/services/postgres.d.ts.map +1 -1
- package/dist/cjs/Program/services/postgres.js +17 -1
- package/dist/cjs/Program/services/postgres.js.map +1 -1
- package/dist/cjs/Program/services/rabbitmq.d.ts +7 -5
- package/dist/cjs/Program/services/rabbitmq.d.ts.map +1 -1
- package/dist/cjs/Program/services/rabbitmq.js +21 -20
- package/dist/cjs/Program/services/rabbitmq.js.map +1 -1
- package/dist/cjs/Program/utils.d.ts +4 -6
- package/dist/cjs/Program/utils.d.ts.map +1 -1
- package/dist/cjs/Program/utils.js +12 -15
- package/dist/cjs/Program/utils.js.map +1 -1
- package/dist/cjs/Rewards/RewardsHttpService.js +2 -2
- package/dist/cjs/Rewards/RewardsHttpService.js.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePoolProvider.d.ts.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePoolProvider.js +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePoolProvider.js.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.d.ts +1 -0
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.d.ts.map +1 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.js +2 -1
- package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.js.map +1 -1
- package/dist/cjs/StakePool/StakePoolHttpService.js +2 -2
- package/dist/cjs/StakePool/StakePoolHttpService.js.map +1 -1
- package/dist/cjs/StakePool/openApi.json +75 -1
- package/dist/cjs/TxSubmit/TxSubmitHttpService.js +2 -2
- package/dist/cjs/TxSubmit/TxSubmitHttpService.js.map +1 -1
- package/dist/cjs/Utxo/UtxoHttpService.js +2 -2
- package/dist/cjs/Utxo/UtxoHttpService.js.map +1 -1
- package/dist/cjs/cli.js +25 -121
- package/dist/cjs/cli.js.map +1 -1
- package/dist/cjs/original-package.json +8 -10
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/cjs/util/validators.js +1 -1
- package/dist/cjs/util/validators.js.map +1 -1
- package/package.json +8 -10
- package/dist/cjs/Program/Options.d.ts +0 -84
- package/dist/cjs/Program/Options.d.ts.map +0 -1
- package/dist/cjs/Program/Options.js +0 -51
- package/dist/cjs/Program/Options.js.map +0 -1
- package/dist/cjs/Program/ServiceNames.d.ts +0 -10
- package/dist/cjs/Program/ServiceNames.d.ts.map +0 -1
- package/dist/cjs/Program/ServiceNames.js +0 -14
- package/dist/cjs/Program/ServiceNames.js.map +0 -1
- package/dist/cjs/Program/defaults.d.ts +0 -10
- package/dist/cjs/Program/defaults.d.ts.map +0 -1
- package/dist/cjs/Program/defaults.js +0 -17
- package/dist/cjs/Program/defaults.js.map +0 -1
- package/dist/cjs/Program/loadHttpServer.d.ts +0 -40
- package/dist/cjs/Program/loadHttpServer.d.ts.map +0 -1
- package/dist/cjs/Program/loadHttpServer.js +0 -145
- package/dist/cjs/Program/loadHttpServer.js.map +0 -1
- package/dist/cjs/Program/loadTxWorker.d.ts +0 -9
- package/dist/cjs/Program/loadTxWorker.d.ts.map +0 -1
- package/dist/cjs/Program/loadTxWorker.js +0 -19
- package/dist/cjs/Program/loadTxWorker.js.map +0 -1
- package/dist/cjs/Program/programs.d.ts.map +0 -1
- package/dist/cjs/Program/programs.js +0 -9
- package/dist/cjs/Program/programs.js.map +0 -1
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
import { CommonProgramOptions, OgmiosProgramOptions, PosgresProgramOptions, RabbitMqProgramOptions } from '../options';
|
|
4
|
+
import { HttpServer } from '../../Http';
|
|
5
|
+
import { Logger } from 'ts-log';
|
|
6
|
+
import { SrvRecord } from 'dns';
|
|
7
|
+
import { URL } from 'url';
|
|
8
|
+
export declare const HTTP_SERVER_API_URL_DEFAULT: URL;
|
|
9
|
+
export declare const PAGINATION_PAGE_SIZE_LIMIT_DEFAULT = 25;
|
|
10
|
+
export declare const USE_QUEUE_DEFAULT = false;
|
|
11
|
+
export declare enum ServiceNames {
|
|
12
|
+
Asset = "asset",
|
|
13
|
+
StakePool = "stake-pool",
|
|
14
|
+
NetworkInfo = "network-info",
|
|
15
|
+
TxSubmit = "tx-submit",
|
|
16
|
+
Utxo = "utxo",
|
|
17
|
+
ChainHistory = "chain-history",
|
|
18
|
+
Rewards = "rewards"
|
|
19
|
+
}
|
|
20
|
+
export declare const cardanoNodeDependantServices: Set<ServiceNames>;
|
|
21
|
+
export declare enum HttpServerOptionDescriptions {
|
|
22
|
+
CardanoNodeConfigPath = "Cardano node config path",
|
|
23
|
+
DbCacheTtl = "Cache TTL in seconds between 60 and 172800 (two days), an option for database related operations",
|
|
24
|
+
EpochPollInterval = "Epoch poll interval",
|
|
25
|
+
TokenMetadataCacheTtl = "Token Metadata API cache TTL in minutes",
|
|
26
|
+
TokenMetadataServerUrl = "Token Metadata API server URL",
|
|
27
|
+
UseQueue = "Enables RabbitMQ",
|
|
28
|
+
PaginationPageSizeLimit = "Pagination page size limit shared across all providers"
|
|
29
|
+
}
|
|
30
|
+
export declare type HttpServerArgs = CommonProgramOptions & PosgresProgramOptions & OgmiosProgramOptions & RabbitMqProgramOptions & {
|
|
31
|
+
cardanoNodeConfigPath?: string;
|
|
32
|
+
tokenMetadataCacheTTL?: number;
|
|
33
|
+
tokenMetadataServerUrl?: string;
|
|
34
|
+
epochPollInterval: number;
|
|
35
|
+
dbCacheTtl: number;
|
|
36
|
+
useQueue?: boolean;
|
|
37
|
+
paginationPageSizeLimit?: number;
|
|
38
|
+
serviceNames: ServiceNames[];
|
|
39
|
+
};
|
|
40
|
+
export interface LoadHttpServerDependencies {
|
|
41
|
+
dnsResolver?: (serviceName: string) => Promise<SrvRecord>;
|
|
42
|
+
logger?: Logger;
|
|
43
|
+
}
|
|
44
|
+
export declare const loadHttpServer: (args: HttpServerArgs, deps?: LoadHttpServerDependencies) => Promise<HttpServer>;
|
|
45
|
+
//# sourceMappingURL=httpServer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"httpServer.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/httpServer.ts"],"names":[],"mappings":";;AAWA,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EAErB,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAQpB,OAAO,EAAE,UAAU,EAAiC,MAAM,YAAY,CAAC;AAEvE,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAEhC,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAQ1B,eAAO,MAAM,2BAA2B,KAAmC,CAAC;AAC5E,eAAO,MAAM,kCAAkC,KAAK,CAAC;AACrD,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAMvC,oBAAY,YAAY;IACtB,KAAK,UAAU;IACf,SAAS,eAAe;IACxB,WAAW,iBAAiB;IAC5B,QAAQ,cAAc;IACtB,IAAI,SAAS;IACb,YAAY,kBAAkB;IAC9B,OAAO,YAAY;CACpB;AAED,eAAO,MAAM,4BAA4B,mBAOvC,CAAC;AAEH,oBAAY,4BAA4B;IACtC,qBAAqB,6BAA6B;IAClD,UAAU,qGAAqG;IAC/G,iBAAiB,wBAAwB;IACzC,qBAAqB,4CAA4C;IACjE,sBAAsB,kCAAkC;IACxD,QAAQ,qBAAqB;IAC7B,uBAAuB,2DAA2D;CACnF;AAED,oBAAY,cAAc,GAAG,oBAAoB,GAC/C,qBAAqB,GACrB,oBAAoB,GACpB,sBAAsB,GAAG;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,YAAY,EAAE,YAAY,EAAE,CAAC;CAC9B,CAAC;AACJ,MAAM,WAAW,0BAA0B;IACzC,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA4GD,eAAO,MAAM,cAAc,SACnB,cAAc,SACd,0BAA0B,KAC/B,QAAQ,UAAU,CA0CpB,CAAC"}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.loadHttpServer = exports.HttpServerOptionDescriptions = exports.cardanoNodeDependantServices = exports.ServiceNames = exports.USE_QUEUE_DEFAULT = exports.PAGINATION_PAGE_SIZE_LIMIT_DEFAULT = exports.HTTP_SERVER_API_URL_DEFAULT = void 0;
|
|
7
|
+
const Asset_1 = require("../../Asset");
|
|
8
|
+
const ChainHistory_1 = require("../../ChainHistory");
|
|
9
|
+
const options_1 = require("../options");
|
|
10
|
+
const util_1 = require("../../util");
|
|
11
|
+
const NetworkInfo_1 = require("../../NetworkInfo");
|
|
12
|
+
const Rewards_1 = require("../../Rewards");
|
|
13
|
+
const StakePool_1 = require("../../StakePool");
|
|
14
|
+
const Utxo_1 = require("../../Utxo");
|
|
15
|
+
const utils_1 = require("../utils");
|
|
16
|
+
const Http_1 = require("../../Http");
|
|
17
|
+
const InMemoryCache_1 = require("../../InMemoryCache");
|
|
18
|
+
const errors_1 = require("../errors");
|
|
19
|
+
const TxSubmit_1 = require("../../TxSubmit");
|
|
20
|
+
const url_1 = require("url");
|
|
21
|
+
const Metadata_1 = require("../../Metadata");
|
|
22
|
+
const bunyan_1 = require("bunyan");
|
|
23
|
+
const services_1 = require("../services");
|
|
24
|
+
const util_2 = require("@cardano-sdk/util");
|
|
25
|
+
const memoize_1 = __importDefault(require("lodash/memoize"));
|
|
26
|
+
exports.HTTP_SERVER_API_URL_DEFAULT = new url_1.URL('http://localhost:3000');
|
|
27
|
+
exports.PAGINATION_PAGE_SIZE_LIMIT_DEFAULT = 25;
|
|
28
|
+
exports.USE_QUEUE_DEFAULT = false;
|
|
29
|
+
var ServiceNames;
|
|
30
|
+
(function (ServiceNames) {
|
|
31
|
+
ServiceNames["Asset"] = "asset";
|
|
32
|
+
ServiceNames["StakePool"] = "stake-pool";
|
|
33
|
+
ServiceNames["NetworkInfo"] = "network-info";
|
|
34
|
+
ServiceNames["TxSubmit"] = "tx-submit";
|
|
35
|
+
ServiceNames["Utxo"] = "utxo";
|
|
36
|
+
ServiceNames["ChainHistory"] = "chain-history";
|
|
37
|
+
ServiceNames["Rewards"] = "rewards";
|
|
38
|
+
})(ServiceNames = exports.ServiceNames || (exports.ServiceNames = {}));
|
|
39
|
+
exports.cardanoNodeDependantServices = new Set([
|
|
40
|
+
ServiceNames.NetworkInfo,
|
|
41
|
+
ServiceNames.StakePool,
|
|
42
|
+
ServiceNames.Utxo,
|
|
43
|
+
ServiceNames.Rewards,
|
|
44
|
+
ServiceNames.Asset,
|
|
45
|
+
ServiceNames.ChainHistory
|
|
46
|
+
]);
|
|
47
|
+
var HttpServerOptionDescriptions;
|
|
48
|
+
(function (HttpServerOptionDescriptions) {
|
|
49
|
+
HttpServerOptionDescriptions["CardanoNodeConfigPath"] = "Cardano node config path";
|
|
50
|
+
HttpServerOptionDescriptions["DbCacheTtl"] = "Cache TTL in seconds between 60 and 172800 (two days), an option for database related operations";
|
|
51
|
+
HttpServerOptionDescriptions["EpochPollInterval"] = "Epoch poll interval";
|
|
52
|
+
HttpServerOptionDescriptions["TokenMetadataCacheTtl"] = "Token Metadata API cache TTL in minutes";
|
|
53
|
+
HttpServerOptionDescriptions["TokenMetadataServerUrl"] = "Token Metadata API server URL";
|
|
54
|
+
HttpServerOptionDescriptions["UseQueue"] = "Enables RabbitMQ";
|
|
55
|
+
HttpServerOptionDescriptions["PaginationPageSizeLimit"] = "Pagination page size limit shared across all providers";
|
|
56
|
+
})(HttpServerOptionDescriptions = exports.HttpServerOptionDescriptions || (exports.HttpServerOptionDescriptions = {}));
|
|
57
|
+
const serviceMapFactory = (options) => {
|
|
58
|
+
const { args, dbConnection, dnsResolver, genesisData, logger, node } = options;
|
|
59
|
+
const withDbSyncProvider = (factory, serviceName) => () => {
|
|
60
|
+
if (!dbConnection)
|
|
61
|
+
throw new errors_1.MissingProgramOption(serviceName, [
|
|
62
|
+
options_1.PostgresOptionDescriptions.ConnectionString,
|
|
63
|
+
options_1.PostgresOptionDescriptions.ServiceDiscoveryArgs
|
|
64
|
+
]);
|
|
65
|
+
if (!node)
|
|
66
|
+
throw new errors_1.MissingServiceDependency(serviceName, errors_1.RunnableDependencies.CardanoNode);
|
|
67
|
+
return factory(dbConnection, node);
|
|
68
|
+
};
|
|
69
|
+
const getEpochMonitor = (0, memoize_1.default)((dbPool) => new util_1.DbSyncEpochPollService(dbPool, args.epochPollInterval));
|
|
70
|
+
return {
|
|
71
|
+
[ServiceNames.Asset]: withDbSyncProvider(async (db, cardanoNode) => {
|
|
72
|
+
const ntfMetadataService = new Asset_1.DbSyncNftMetadataService({
|
|
73
|
+
db,
|
|
74
|
+
logger,
|
|
75
|
+
metadataService: (0, Metadata_1.createDbSyncMetadataService)(db, logger)
|
|
76
|
+
});
|
|
77
|
+
const tokenMetadataService = args.tokenMetadataServerUrl?.startsWith('stub:')
|
|
78
|
+
? new Asset_1.StubTokenMetadataService()
|
|
79
|
+
: new Asset_1.CardanoTokenRegistry({ logger }, args);
|
|
80
|
+
const assetProvider = new Asset_1.DbSyncAssetProvider({
|
|
81
|
+
cardanoNode,
|
|
82
|
+
db,
|
|
83
|
+
logger,
|
|
84
|
+
ntfMetadataService,
|
|
85
|
+
tokenMetadataService
|
|
86
|
+
});
|
|
87
|
+
return new Asset_1.AssetHttpService({ assetProvider, logger });
|
|
88
|
+
}, ServiceNames.Asset),
|
|
89
|
+
[ServiceNames.StakePool]: withDbSyncProvider(async (db, cardanoNode) => {
|
|
90
|
+
if (!genesisData)
|
|
91
|
+
throw new errors_1.MissingProgramOption(ServiceNames.StakePool, HttpServerOptionDescriptions.CardanoNodeConfigPath);
|
|
92
|
+
const stakePoolProvider = new StakePool_1.DbSyncStakePoolProvider({ paginationPageSizeLimit: args.paginationPageSizeLimit }, {
|
|
93
|
+
cache: new InMemoryCache_1.InMemoryCache(args.dbCacheTtl),
|
|
94
|
+
cardanoNode,
|
|
95
|
+
db,
|
|
96
|
+
epochMonitor: getEpochMonitor(db),
|
|
97
|
+
genesisData,
|
|
98
|
+
logger,
|
|
99
|
+
metadataService: (0, StakePool_1.createHttpStakePoolExtMetadataService)(logger)
|
|
100
|
+
});
|
|
101
|
+
return new StakePool_1.StakePoolHttpService({ logger, stakePoolProvider });
|
|
102
|
+
}, ServiceNames.StakePool),
|
|
103
|
+
[ServiceNames.Utxo]: withDbSyncProvider(async (db, cardanoNode) => new Utxo_1.UtxoHttpService({ logger, utxoProvider: new Utxo_1.DbSyncUtxoProvider({ cardanoNode, db, logger }) }), ServiceNames.Utxo),
|
|
104
|
+
[ServiceNames.ChainHistory]: withDbSyncProvider(async (db, cardanoNode) => {
|
|
105
|
+
const metadataService = (0, Metadata_1.createDbSyncMetadataService)(db, logger);
|
|
106
|
+
const chainHistoryProvider = new ChainHistory_1.DbSyncChainHistoryProvider({ paginationPageSizeLimit: args.paginationPageSizeLimit }, { cardanoNode, db, logger, metadataService });
|
|
107
|
+
return new ChainHistory_1.ChainHistoryHttpService({ chainHistoryProvider, logger });
|
|
108
|
+
}, ServiceNames.ChainHistory),
|
|
109
|
+
[ServiceNames.Rewards]: withDbSyncProvider(async (db, cardanoNode) => {
|
|
110
|
+
const rewardsProvider = new Rewards_1.DbSyncRewardsProvider({ paginationPageSizeLimit: args.paginationPageSizeLimit }, { cardanoNode, db, logger });
|
|
111
|
+
return new Rewards_1.RewardsHttpService({ logger, rewardsProvider });
|
|
112
|
+
}, ServiceNames.Rewards),
|
|
113
|
+
[ServiceNames.NetworkInfo]: withDbSyncProvider(async (db, cardanoNode) => {
|
|
114
|
+
if (!genesisData)
|
|
115
|
+
throw new errors_1.MissingProgramOption(ServiceNames.NetworkInfo, HttpServerOptionDescriptions.CardanoNodeConfigPath);
|
|
116
|
+
const networkInfoProvider = new NetworkInfo_1.DbSyncNetworkInfoProvider({
|
|
117
|
+
cache: new InMemoryCache_1.InMemoryCache(args.dbCacheTtl),
|
|
118
|
+
cardanoNode,
|
|
119
|
+
db,
|
|
120
|
+
epochMonitor: getEpochMonitor(db),
|
|
121
|
+
genesisData,
|
|
122
|
+
logger
|
|
123
|
+
});
|
|
124
|
+
return new NetworkInfo_1.NetworkInfoHttpService({ logger, networkInfoProvider });
|
|
125
|
+
}, ServiceNames.NetworkInfo),
|
|
126
|
+
[ServiceNames.TxSubmit]: async () => {
|
|
127
|
+
const txSubmitProvider = args.useQueue
|
|
128
|
+
? await (0, services_1.getRabbitMqTxSubmitProvider)(dnsResolver, logger, args)
|
|
129
|
+
: await (0, services_1.getOgmiosTxSubmitProvider)(dnsResolver, logger, args);
|
|
130
|
+
return new TxSubmit_1.TxSubmitHttpService({ logger, txSubmitProvider });
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
const loadHttpServer = async (args, deps = {}) => {
|
|
135
|
+
const services = [];
|
|
136
|
+
const logger = deps?.logger ||
|
|
137
|
+
(0, bunyan_1.createLogger)({
|
|
138
|
+
level: args.loggerMinSeverity,
|
|
139
|
+
name: 'http-server'
|
|
140
|
+
});
|
|
141
|
+
const dnsResolver = deps?.dnsResolver ||
|
|
142
|
+
(0, utils_1.createDnsResolver)({
|
|
143
|
+
factor: args.serviceDiscoveryBackoffFactor,
|
|
144
|
+
maxRetryTime: args.serviceDiscoveryTimeout
|
|
145
|
+
}, logger);
|
|
146
|
+
const db = await (0, services_1.getPool)(dnsResolver, logger, args);
|
|
147
|
+
const cardanoNode = (0, utils_1.serviceSetHas)(args.serviceNames, exports.cardanoNodeDependantServices)
|
|
148
|
+
? await (0, services_1.getOgmiosCardanoNode)(dnsResolver, logger, args)
|
|
149
|
+
: undefined;
|
|
150
|
+
const genesisData = args.cardanoNodeConfigPath ? await (0, util_1.loadGenesisData)(args.cardanoNodeConfigPath) : undefined;
|
|
151
|
+
const serviceMap = serviceMapFactory({ args, dbConnection: db, dnsResolver, genesisData, logger, node: cardanoNode });
|
|
152
|
+
for (const serviceName of args.serviceNames) {
|
|
153
|
+
if (serviceMap[serviceName]) {
|
|
154
|
+
services.push(await serviceMap[serviceName]());
|
|
155
|
+
}
|
|
156
|
+
else {
|
|
157
|
+
throw new errors_1.UnknownServiceName(serviceName, Object.values(ServiceNames));
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
const config = {
|
|
161
|
+
listen: {
|
|
162
|
+
host: args.apiUrl.hostname,
|
|
163
|
+
port: args.apiUrl ? Number.parseInt(args.apiUrl.port) : undefined
|
|
164
|
+
},
|
|
165
|
+
meta: { ...args.buildInfo, startupTime: Date.now() }
|
|
166
|
+
};
|
|
167
|
+
if (args.enableMetrics) {
|
|
168
|
+
config.metrics = { enabled: args.enableMetrics };
|
|
169
|
+
}
|
|
170
|
+
return new Http_1.HttpServer(config, { logger, runnableDependencies: [cardanoNode].filter(util_2.isNotNil), services });
|
|
171
|
+
};
|
|
172
|
+
exports.loadHttpServer = loadHttpServer;
|
|
173
|
+
//# sourceMappingURL=httpServer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"httpServer.js","sourceRoot":"","sources":["../../../../src/Program/programs/httpServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAM3B,oBAAY,QAAQ;IAClB,UAAU,gBAAgB;IAC1B,cAAc,oBAAoB;CACnC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.Programs = void 0;
|
|
18
|
+
__exportStar(require("./httpServer"), exports);
|
|
19
|
+
__exportStar(require("./txWorker"), exports);
|
|
20
|
+
var Programs;
|
|
21
|
+
(function (Programs) {
|
|
22
|
+
Programs["HttpServer"] = "HTTP server";
|
|
23
|
+
Programs["RabbitmqWorker"] = "RabbitMQ worker";
|
|
24
|
+
})(Programs = exports.Programs || (exports.Programs = {}));
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Program/programs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,6CAA2B;AAM3B,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,sCAA0B,CAAA;IAC1B,8CAAkC,CAAA;AACpC,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGnB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { CommonProgramOptions, OgmiosProgramOptions, RabbitMqProgramOptions } from '../options';
|
|
2
|
+
import { Logger } from 'ts-log';
|
|
3
|
+
import { TxSubmitWorkerConfig } from '../../TxSubmit';
|
|
4
|
+
export declare const TX_WORKER_API_URL_DEFAULT: URL;
|
|
5
|
+
export declare const PARALLEL_MODE_DEFAULT = false;
|
|
6
|
+
export declare const PARALLEL_TXS_DEFAULT = 3;
|
|
7
|
+
export declare const POLLING_CYCLE_DEFAULT = 500;
|
|
8
|
+
export declare enum TxWorkerOptionDescriptions {
|
|
9
|
+
Parallel = "Parallel mode",
|
|
10
|
+
ParallelTxs = "Parallel transactions",
|
|
11
|
+
PollingCycle = "Polling cycle"
|
|
12
|
+
}
|
|
13
|
+
export declare type TxWorkerArgs = CommonProgramOptions & OgmiosProgramOptions & RabbitMqProgramOptions & Pick<TxSubmitWorkerConfig, 'parallel' | 'parallelTxs' | 'pollingCycle'>;
|
|
14
|
+
export declare const loadAndStartTxWorker: (args: TxWorkerArgs, logger?: Logger) => Promise<import("../services").RunningTxSubmitWorker>;
|
|
15
|
+
//# sourceMappingURL=txWorker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"txWorker.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/txWorker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAChG,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAKtD,eAAO,MAAM,yBAAyB,KAAmC,CAAC;AAC1E,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAC3C,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,oBAAY,0BAA0B;IACpC,QAAQ,kBAAkB;IAC1B,WAAW,0BAA0B;IACrC,YAAY,kBAAkB;CAC/B;AAED,oBAAY,YAAY,GAAG,oBAAoB,GAC7C,oBAAoB,GACpB,sBAAsB,GACtB,IAAI,CAAC,oBAAoB,EAAE,UAAU,GAAG,aAAa,GAAG,cAAc,CAAC,CAAC;AAE1E,eAAO,MAAM,oBAAoB,SAAgB,YAAY,WAAW,MAAM,yDAc7E,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loadAndStartTxWorker = exports.TxWorkerOptionDescriptions = exports.POLLING_CYCLE_DEFAULT = exports.PARALLEL_TXS_DEFAULT = exports.PARALLEL_MODE_DEFAULT = exports.TX_WORKER_API_URL_DEFAULT = void 0;
|
|
4
|
+
const utils_1 = require("../utils");
|
|
5
|
+
const bunyan_1 = require("bunyan");
|
|
6
|
+
const services_1 = require("../services");
|
|
7
|
+
exports.TX_WORKER_API_URL_DEFAULT = new URL('http://localhost:3001');
|
|
8
|
+
exports.PARALLEL_MODE_DEFAULT = false;
|
|
9
|
+
exports.PARALLEL_TXS_DEFAULT = 3;
|
|
10
|
+
exports.POLLING_CYCLE_DEFAULT = 500;
|
|
11
|
+
var TxWorkerOptionDescriptions;
|
|
12
|
+
(function (TxWorkerOptionDescriptions) {
|
|
13
|
+
TxWorkerOptionDescriptions["Parallel"] = "Parallel mode";
|
|
14
|
+
TxWorkerOptionDescriptions["ParallelTxs"] = "Parallel transactions";
|
|
15
|
+
TxWorkerOptionDescriptions["PollingCycle"] = "Polling cycle";
|
|
16
|
+
})(TxWorkerOptionDescriptions = exports.TxWorkerOptionDescriptions || (exports.TxWorkerOptionDescriptions = {}));
|
|
17
|
+
const loadAndStartTxWorker = async (args, logger) => {
|
|
18
|
+
const { loggerMinSeverity, serviceDiscoveryBackoffFactor, serviceDiscoveryTimeout } = args;
|
|
19
|
+
if (!logger)
|
|
20
|
+
logger = (0, bunyan_1.createLogger)({ level: loggerMinSeverity, name: 'tx-worker' });
|
|
21
|
+
const dnsResolver = (0, utils_1.createDnsResolver)({
|
|
22
|
+
factor: serviceDiscoveryBackoffFactor,
|
|
23
|
+
maxRetryTime: serviceDiscoveryTimeout
|
|
24
|
+
}, logger);
|
|
25
|
+
const txSubmitProvider = await (0, services_1.getOgmiosTxSubmitProvider)(dnsResolver, logger, args);
|
|
26
|
+
return await (0, services_1.getRunningTxSubmitWorker)(dnsResolver, txSubmitProvider, logger, args);
|
|
27
|
+
};
|
|
28
|
+
exports.loadAndStartTxWorker = loadAndStartTxWorker;
|
|
29
|
+
//# sourceMappingURL=txWorker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"txWorker.js","sourceRoot":"","sources":["../../../../src/Program/programs/txWorker.ts"],"names":[],"mappings":";;;AAGA,oCAA6C;AAC7C,mCAAsC;AACtC,0CAAkF;AAErE,QAAA,yBAAyB,GAAG,IAAI,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAC7D,QAAA,qBAAqB,GAAG,KAAK,CAAC;AAC9B,QAAA,oBAAoB,GAAG,CAAC,CAAC;AACzB,QAAA,qBAAqB,GAAG,GAAG,CAAC;AAEzC,IAAY,0BAIX;AAJD,WAAY,0BAA0B;IACpC,wDAA0B,CAAA;IAC1B,mEAAqC,CAAA;IACrC,4DAA8B,CAAA;AAChC,CAAC,EAJW,0BAA0B,GAA1B,kCAA0B,KAA1B,kCAA0B,QAIrC;AAOM,MAAM,oBAAoB,GAAG,KAAK,EAAE,IAAkB,EAAE,MAAe,EAAE,EAAE;IAChF,MAAM,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,uBAAuB,EAAE,GAAG,IAAI,CAAC;IAE3F,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,IAAA,qBAAY,EAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;IAEpF,MAAM,WAAW,GAAG,IAAA,yBAAiB,EACnC;QACE,MAAM,EAAE,6BAA6B;QACrC,YAAY,EAAE,uBAAuB;KACtC,EACD,MAAM,CACP,CAAC;IACF,MAAM,gBAAgB,GAAG,MAAM,IAAA,oCAAyB,EAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACpF,OAAO,MAAM,IAAA,mCAAwB,EAAC,WAAW,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;AACrF,CAAC,CAAC;AAdW,QAAA,oBAAoB,wBAc/B"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { CommonProgramOptions } from '../Options';
|
|
2
1
|
import { DnsResolver } from '../utils';
|
|
3
2
|
import { Logger } from 'ts-log';
|
|
4
3
|
import { OgmiosCardanoNode, OgmiosTxSubmitProvider } from '@cardano-sdk/ogmios';
|
|
4
|
+
import { OgmiosProgramOptions } from '../options';
|
|
5
5
|
export declare const ogmiosTxSubmitProviderWithDiscovery: (dnsResolver: DnsResolver, logger: Logger, serviceName: string) => Promise<OgmiosTxSubmitProvider>;
|
|
6
|
-
export declare const getOgmiosTxSubmitProvider: (dnsResolver: DnsResolver, logger: Logger, options?:
|
|
6
|
+
export declare const getOgmiosTxSubmitProvider: (dnsResolver: DnsResolver, logger: Logger, options?: OgmiosProgramOptions) => Promise<OgmiosTxSubmitProvider>;
|
|
7
7
|
export declare const ogmiosCardanoNodeWithDiscovery: (dnsResolver: DnsResolver, logger: Logger, serviceName: string) => Promise<OgmiosCardanoNode>;
|
|
8
|
-
export declare const getOgmiosCardanoNode: (dnsResolver: DnsResolver, logger: Logger, options?:
|
|
8
|
+
export declare const getOgmiosCardanoNode: (dnsResolver: DnsResolver, logger: Logger, options?: OgmiosProgramOptions) => Promise<OgmiosCardanoNode>;
|
|
9
9
|
//# sourceMappingURL=ogmios.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ogmios.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/ogmios.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"ogmios.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/ogmios.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAyB,MAAM,qBAAqB,CAAC;AACvG,OAAO,EAA4B,oBAAoB,EAAE,MAAM,YAAY,CAAC;AA6C5E,eAAO,MAAM,mCAAmC,gBACjC,WAAW,UAChB,MAAM,eACD,MAAM,KAClB,QAAQ,sBAAsB,CAwChC,CAAC;AAEF,eAAO,MAAM,yBAAyB,gBACvB,WAAW,UAChB,MAAM,YACJ,oBAAoB,KAC7B,QAAQ,sBAAsB,CAKhC,CAAC;AAaF,eAAO,MAAM,8BAA8B,gBAC5B,WAAW,UAChB,MAAM,eACD,MAAM,KAClB,QAAQ,iBAAiB,CAwC3B,CAAC;AAEF,eAAO,MAAM,oBAAoB,gBAClB,WAAW,UAChB,MAAM,YACJ,oBAAoB,KAC7B,QAAQ,iBAAiB,CAK3B,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getOgmiosCardanoNode = exports.ogmiosCardanoNodeWithDiscovery = exports.getOgmiosTxSubmitProvider = exports.ogmiosTxSubmitProviderWithDiscovery = void 0;
|
|
4
|
-
const Options_1 = require("../Options");
|
|
5
4
|
const errors_1 = require("../errors");
|
|
6
5
|
const ogmios_1 = require("@cardano-sdk/ogmios");
|
|
6
|
+
const options_1 = require("../options");
|
|
7
7
|
const util_1 = require("@cardano-sdk/util");
|
|
8
8
|
const isCardanoNodeOperation = (prop) => ['eraSummaries', 'systemStart', 'stakeDistribution'].includes(prop);
|
|
9
9
|
const recreateOgmiosCardanoNode = async (serviceName, ogmiosCardanoNode, dnsResolver, logger) => {
|
|
@@ -64,10 +64,7 @@ const getOgmiosTxSubmitProvider = async (dnsResolver, logger, options) => {
|
|
|
64
64
|
return (0, exports.ogmiosTxSubmitProviderWithDiscovery)(dnsResolver, logger, options.ogmiosSrvServiceName);
|
|
65
65
|
if (options?.ogmiosUrl)
|
|
66
66
|
return new ogmios_1.OgmiosTxSubmitProvider((0, ogmios_1.urlToConnectionConfig)(options?.ogmiosUrl), { logger });
|
|
67
|
-
throw new errors_1.MissingCardanoNodeOption([
|
|
68
|
-
Options_1.CommonOptionDescriptions.OgmiosUrl,
|
|
69
|
-
Options_1.CommonOptionDescriptions.OgmiosSrvServiceName
|
|
70
|
-
]);
|
|
67
|
+
throw new errors_1.MissingCardanoNodeOption([options_1.OgmiosOptionDescriptions.Url, options_1.OgmiosOptionDescriptions.SrvServiceName]);
|
|
71
68
|
};
|
|
72
69
|
exports.getOgmiosTxSubmitProvider = getOgmiosTxSubmitProvider;
|
|
73
70
|
const ogmiosCardanoNodeWithDiscovery = async (dnsResolver, logger, serviceName) => {
|
|
@@ -112,10 +109,7 @@ const getOgmiosCardanoNode = async (dnsResolver, logger, options) => {
|
|
|
112
109
|
return (0, exports.ogmiosCardanoNodeWithDiscovery)(dnsResolver, logger, options.ogmiosSrvServiceName);
|
|
113
110
|
if (options?.ogmiosUrl)
|
|
114
111
|
return new ogmios_1.OgmiosCardanoNode((0, ogmios_1.urlToConnectionConfig)(options.ogmiosUrl), logger);
|
|
115
|
-
throw new errors_1.MissingCardanoNodeOption([
|
|
116
|
-
Options_1.CommonOptionDescriptions.OgmiosUrl,
|
|
117
|
-
Options_1.CommonOptionDescriptions.OgmiosSrvServiceName
|
|
118
|
-
]);
|
|
112
|
+
throw new errors_1.MissingCardanoNodeOption([options_1.OgmiosOptionDescriptions.Url, options_1.OgmiosOptionDescriptions.SrvServiceName]);
|
|
119
113
|
};
|
|
120
114
|
exports.getOgmiosCardanoNode = getOgmiosCardanoNode;
|
|
121
115
|
//# sourceMappingURL=ogmios.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ogmios.js","sourceRoot":"","sources":["../../../../src/Program/services/ogmios.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ogmios.js","sourceRoot":"","sources":["../../../../src/Program/services/ogmios.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { ClientConfig, Pool } from 'pg';
|
|
2
2
|
import { DnsResolver } from '../utils';
|
|
3
|
-
import {
|
|
3
|
+
import { HttpServerArgs } from '../programs';
|
|
4
4
|
import { Logger } from 'ts-log';
|
|
5
|
+
import { PosgresProgramOptions } from '../options';
|
|
5
6
|
export declare const getPoolWithServiceDiscovery: (dnsResolver: DnsResolver, logger: Logger, { host, database, password, ssl, user }: ClientConfig) => Promise<Pool>;
|
|
6
7
|
export declare const loadSecret: (path: string) => string;
|
|
7
|
-
export declare const getPool: (dnsResolver: DnsResolver, logger: Logger, options?:
|
|
8
|
+
export declare const getPool: (dnsResolver: DnsResolver, logger: Logger, options?: PosgresProgramOptions) => Promise<Pool | undefined>;
|
|
9
|
+
export declare const connectionStringFromArgs: (args: HttpServerArgs) => string | undefined;
|
|
8
10
|
//# sourceMappingURL=postgres.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/postgres.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"postgres.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/postgres.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,IAAI,EAAe,MAAM,IAAI,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAenD,eAAO,MAAM,2BAA2B,gBACzB,WAAW,UAChB,MAAM,2CAC2B,YAAY,KACpD,QAAQ,IAAI,CA0Bd,CAAC;AAEF,eAAO,MAAM,UAAU,SAAU,MAAM,WAA6C,CAAC;AAErF,eAAO,MAAM,OAAO,gBACL,WAAW,UAChB,MAAM,YACJ,qBAAqB,KAC9B,QAAQ,IAAI,GAAG,SAAS,CAc1B,CAAC;AAKF,eAAO,MAAM,wBAAwB,SAAU,cAAc,uBAc5D,CAAC"}
|
|
@@ -3,8 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.getPool = exports.loadSecret = exports.getPoolWithServiceDiscovery = void 0;
|
|
6
|
+
exports.connectionStringFromArgs = exports.getPool = exports.loadSecret = exports.getPoolWithServiceDiscovery = void 0;
|
|
7
7
|
const pg_1 = require("pg");
|
|
8
|
+
const url_1 = require("url");
|
|
8
9
|
const util_1 = require("@cardano-sdk/util");
|
|
9
10
|
const fs_1 = __importDefault(require("fs"));
|
|
10
11
|
const getPoolWithServiceDiscovery = async (dnsResolver, logger, { host, database, password, ssl, user }) => {
|
|
@@ -51,4 +52,19 @@ const getPool = async (dnsResolver, logger, options) => {
|
|
|
51
52
|
return undefined;
|
|
52
53
|
};
|
|
53
54
|
exports.getPool = getPool;
|
|
55
|
+
const getSecret = (secretFilePath, secret) => secretFilePath ? (0, exports.loadSecret)(secretFilePath) : secret ? secret : undefined;
|
|
56
|
+
const connectionStringFromArgs = (args) => {
|
|
57
|
+
const dbName = getSecret(args.postgresDbFile, args.postgresDb);
|
|
58
|
+
const dbUser = getSecret(args.postgresUserFile, args.postgresUser);
|
|
59
|
+
const dbPassword = getSecret(args.postgresPasswordFile, args.postgresPassword);
|
|
60
|
+
let postgresConnectionString;
|
|
61
|
+
if (args.postgresConnectionString) {
|
|
62
|
+
postgresConnectionString = new url_1.URL(args.postgresConnectionString).toString();
|
|
63
|
+
}
|
|
64
|
+
else if (dbName && dbPassword && dbUser && args.postgresHost && args.postgresPort) {
|
|
65
|
+
postgresConnectionString = `postgresql://${dbUser}:${dbPassword}@${args.postgresHost}:${args.postgresPort}/${dbName}`;
|
|
66
|
+
}
|
|
67
|
+
return postgresConnectionString;
|
|
68
|
+
};
|
|
69
|
+
exports.connectionStringFromArgs = connectionStringFromArgs;
|
|
54
70
|
//# sourceMappingURL=postgres.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../../../src/Program/services/postgres.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../../../src/Program/services/postgres.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
import { RabbitMqTxSubmitProvider, TxSubmitWorker } from '../../TxSubmit';
|
|
2
|
-
import { CommonProgramOptions } from '../Options';
|
|
3
2
|
import { DnsResolver } from '../utils';
|
|
4
3
|
import { Logger } from 'ts-log';
|
|
5
4
|
import { OgmiosTxSubmitProvider } from '@cardano-sdk/ogmios';
|
|
6
|
-
import {
|
|
5
|
+
import { RabbitMqProgramOptions } from '../options';
|
|
6
|
+
import { TxWorkerArgs } from '../programs';
|
|
7
|
+
import { SrvRecord } from 'dns';
|
|
8
|
+
export declare const srvRecordToRabbitmqURL: ({ name, port }: SrvRecord) => URL;
|
|
7
9
|
export declare const rabbitMqTxSubmitProviderWithDiscovery: (dnsResolver: DnsResolver, logger: Logger, serviceName: string) => Promise<RabbitMqTxSubmitProvider>;
|
|
8
|
-
export declare const getRabbitMqTxSubmitProvider: (dnsResolver: DnsResolver, logger: Logger, options?:
|
|
10
|
+
export declare const getRabbitMqTxSubmitProvider: (dnsResolver: DnsResolver, logger: Logger, options?: RabbitMqProgramOptions) => Promise<RabbitMqTxSubmitProvider>;
|
|
9
11
|
declare type WorkerFactory = () => Promise<TxSubmitWorker>;
|
|
10
|
-
export declare const createWorkerFactoryWithDiscovery: (dnsResolver: DnsResolver, txSubmitProvider: OgmiosTxSubmitProvider, logger: Logger,
|
|
12
|
+
export declare const createWorkerFactoryWithDiscovery: (dnsResolver: DnsResolver, txSubmitProvider: OgmiosTxSubmitProvider, logger: Logger, args: TxWorkerArgs) => WorkerFactory;
|
|
11
13
|
export declare const createAndStartNewWorker: (workerFactory: WorkerFactory) => Promise<void>;
|
|
12
14
|
export declare const attachOnConnectionErrorHandler: (worker: TxSubmitWorker, factory: WorkerFactory) => void;
|
|
13
15
|
export declare type RunningTxSubmitWorker = Pick<TxSubmitWorker, 'shutdown' | 'getStatus'>;
|
|
14
16
|
export declare const startTxSubmitWorkerWithDiscovery: (workerFactory: WorkerFactory) => Promise<RunningTxSubmitWorker>;
|
|
15
|
-
export declare const getRunningTxSubmitWorker: (dnsResolver: DnsResolver, txSubmitProvider: OgmiosTxSubmitProvider, logger: Logger,
|
|
17
|
+
export declare const getRunningTxSubmitWorker: (dnsResolver: DnsResolver, txSubmitProvider: OgmiosTxSubmitProvider, logger: Logger, args?: TxWorkerArgs) => Promise<RunningTxSubmitWorker>;
|
|
16
18
|
export {};
|
|
17
19
|
//# sourceMappingURL=rabbitmq.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rabbitmq.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/rabbitmq.ts"],"names":[],"mappings":"AAIA,OAAO,EAA0B,wBAAwB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,
|
|
1
|
+
{"version":3,"file":"rabbitmq.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/rabbitmq.ts"],"names":[],"mappings":"AAIA,OAAO,EAA0B,wBAAwB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAA8B,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,EAAgB,YAAY,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAGhC,eAAO,MAAM,sBAAsB,mBAAoB,SAAS,QAAsC,CAAC;AAYvG,eAAO,MAAM,qCAAqC,gBACnC,WAAW,UAChB,MAAM,eACD,MAAM,KAClB,QAAQ,wBAAwB,CAqClC,CAAC;AAEF,eAAO,MAAM,2BAA2B,gBACzB,WAAW,UAChB,MAAM,YACJ,sBAAsB,KAC/B,QAAQ,wBAAwB,CAQlC,CAAC;AAEF,aAAK,aAAa,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;AAWnD,eAAO,MAAM,gCAAgC,gBAE5B,WAAW,oBACN,sBAAsB,UAChC,MAAM,QACR,YAAY,KACjB,aAIF,CAAC;AAOJ,eAAO,MAAM,uBAAuB,kBAAyB,aAAa,kBAIzE,CAAC;AASF,eAAO,MAAM,8BAA8B,WAAY,cAAc,WAAW,aAAa,SAE5F,CAAC;AAEF,oBAAY,qBAAqB,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,WAAW,CAAC,CAAC;AAQnF,eAAO,MAAM,gCAAgC,kBAC5B,aAAa,KAC3B,QAAQ,qBAAqB,CAQ/B,CAAC;AAWF,eAAO,MAAM,wBAAwB,gBACtB,WAAW,oBACN,sBAAsB,UAChC,MAAM,SACP,YAAY,KAClB,QAAQ,qBAAqB,CAkB/B,CAAC"}
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getRunningTxSubmitWorker = exports.startTxSubmitWorkerWithDiscovery = exports.attachOnConnectionErrorHandler = exports.createAndStartNewWorker = exports.createWorkerFactoryWithDiscovery = exports.getRabbitMqTxSubmitProvider = exports.rabbitMqTxSubmitProviderWithDiscovery = void 0;
|
|
3
|
+
exports.getRunningTxSubmitWorker = exports.startTxSubmitWorkerWithDiscovery = exports.attachOnConnectionErrorHandler = exports.createAndStartNewWorker = exports.createWorkerFactoryWithDiscovery = exports.getRabbitMqTxSubmitProvider = exports.rabbitMqTxSubmitProviderWithDiscovery = exports.srvRecordToRabbitmqURL = void 0;
|
|
4
4
|
const TxSubmit_1 = require("../../TxSubmit");
|
|
5
|
-
const Options_1 = require("../Options");
|
|
6
|
-
const utils_1 = require("../utils");
|
|
7
5
|
const errors_1 = require("../errors");
|
|
8
6
|
const core_1 = require("@cardano-sdk/core");
|
|
9
|
-
const
|
|
7
|
+
const options_1 = require("../options");
|
|
8
|
+
const programs_1 = require("../programs");
|
|
10
9
|
const util_1 = require("@cardano-sdk/util");
|
|
10
|
+
const srvRecordToRabbitmqURL = ({ name, port }) => new URL(`amqp://${name}:${port}`);
|
|
11
|
+
exports.srvRecordToRabbitmqURL = srvRecordToRabbitmqURL;
|
|
11
12
|
const rabbitMqTxSubmitProviderWithDiscovery = async (dnsResolver, logger, serviceName) => {
|
|
12
13
|
const record = await dnsResolver(serviceName);
|
|
13
|
-
let rabbitmqProvider = new TxSubmit_1.RabbitMqTxSubmitProvider({ rabbitmqUrl: (0,
|
|
14
|
+
let rabbitmqProvider = new TxSubmit_1.RabbitMqTxSubmitProvider({ rabbitmqUrl: (0, exports.srvRecordToRabbitmqURL)(record) }, { logger });
|
|
14
15
|
return new Proxy({}, {
|
|
15
16
|
get(_, prop) {
|
|
16
17
|
if (prop === 'then')
|
|
@@ -24,7 +25,7 @@ const rabbitMqTxSubmitProviderWithDiscovery = async (dnsResolver, logger, servic
|
|
|
24
25
|
await rabbitmqProvider
|
|
25
26
|
.close?.()
|
|
26
27
|
.catch((error_) => logger.warn(`RabbitMQ provider failed to close after DNS resolution: ${error_}`));
|
|
27
|
-
rabbitmqProvider = new TxSubmit_1.RabbitMqTxSubmitProvider({ rabbitmqUrl: (0,
|
|
28
|
+
rabbitmqProvider = new TxSubmit_1.RabbitMqTxSubmitProvider({ rabbitmqUrl: (0, exports.srvRecordToRabbitmqURL)(resolvedRecord) }, { logger });
|
|
28
29
|
return await rabbitmqProvider.submitTx(submitTxArgs);
|
|
29
30
|
}
|
|
30
31
|
throw error;
|
|
@@ -44,15 +45,15 @@ const getRabbitMqTxSubmitProvider = async (dnsResolver, logger, options) => {
|
|
|
44
45
|
return (0, exports.rabbitMqTxSubmitProviderWithDiscovery)(dnsResolver, logger, options.rabbitmqSrvServiceName);
|
|
45
46
|
if (options?.rabbitmqUrl)
|
|
46
47
|
return new TxSubmit_1.RabbitMqTxSubmitProvider({ rabbitmqUrl: options.rabbitmqUrl }, { logger });
|
|
47
|
-
throw new errors_1.MissingProgramOption(
|
|
48
|
-
|
|
49
|
-
|
|
48
|
+
throw new errors_1.MissingProgramOption(programs_1.ServiceNames.TxSubmit, [
|
|
49
|
+
options_1.RabbitMqOptionDescriptions.Url,
|
|
50
|
+
options_1.RabbitMqOptionDescriptions.SrvServiceName
|
|
50
51
|
]);
|
|
51
52
|
};
|
|
52
53
|
exports.getRabbitMqTxSubmitProvider = getRabbitMqTxSubmitProvider;
|
|
53
|
-
const createWorkerFactoryWithDiscovery = (dnsResolver, txSubmitProvider, logger,
|
|
54
|
-
const record = await dnsResolver(
|
|
55
|
-
return new TxSubmit_1.TxSubmitWorker({ ...
|
|
54
|
+
const createWorkerFactoryWithDiscovery = (dnsResolver, txSubmitProvider, logger, args) => async () => {
|
|
55
|
+
const record = await dnsResolver(args.rabbitmqSrvServiceName);
|
|
56
|
+
return new TxSubmit_1.TxSubmitWorker({ ...args, rabbitmqUrl: (0, exports.srvRecordToRabbitmqURL)(record) }, { logger, txSubmitProvider });
|
|
56
57
|
};
|
|
57
58
|
exports.createWorkerFactoryWithDiscovery = createWorkerFactoryWithDiscovery;
|
|
58
59
|
const createAndStartNewWorker = async (workerFactory) => {
|
|
@@ -74,11 +75,11 @@ const startTxSubmitWorkerWithDiscovery = async (workerFactory) => {
|
|
|
74
75
|
};
|
|
75
76
|
};
|
|
76
77
|
exports.startTxSubmitWorkerWithDiscovery = startTxSubmitWorkerWithDiscovery;
|
|
77
|
-
const getRunningTxSubmitWorker = async (dnsResolver, txSubmitProvider, logger,
|
|
78
|
-
if (
|
|
79
|
-
return (0, exports.startTxSubmitWorkerWithDiscovery)((0, exports.createWorkerFactoryWithDiscovery)(dnsResolver, txSubmitProvider, logger,
|
|
80
|
-
if (
|
|
81
|
-
const worker = new TxSubmit_1.TxSubmitWorker({ ...
|
|
78
|
+
const getRunningTxSubmitWorker = async (dnsResolver, txSubmitProvider, logger, args) => {
|
|
79
|
+
if (args?.rabbitmqSrvServiceName)
|
|
80
|
+
return (0, exports.startTxSubmitWorkerWithDiscovery)((0, exports.createWorkerFactoryWithDiscovery)(dnsResolver, txSubmitProvider, logger, args));
|
|
81
|
+
if (args?.rabbitmqUrl) {
|
|
82
|
+
const worker = new TxSubmit_1.TxSubmitWorker({ ...args, rabbitmqUrl: args.rabbitmqUrl }, { logger, txSubmitProvider });
|
|
82
83
|
worker.on(TxSubmit_1.CONNECTION_ERROR_EVENT, (error) => {
|
|
83
84
|
logger.error(`Worker received a connection error event, terminating the process caused by: ${error}`);
|
|
84
85
|
throw new core_1.ProviderError(core_1.ProviderFailure.ConnectionFailure, error);
|
|
@@ -86,9 +87,9 @@ const getRunningTxSubmitWorker = async (dnsResolver, txSubmitProvider, logger, o
|
|
|
86
87
|
await worker.start();
|
|
87
88
|
return worker;
|
|
88
89
|
}
|
|
89
|
-
throw new errors_1.MissingProgramOption(
|
|
90
|
-
|
|
91
|
-
|
|
90
|
+
throw new errors_1.MissingProgramOption(programs_1.ServiceNames.TxSubmit, [
|
|
91
|
+
options_1.RabbitMqOptionDescriptions.Url,
|
|
92
|
+
options_1.RabbitMqOptionDescriptions.SrvServiceName
|
|
92
93
|
]);
|
|
93
94
|
};
|
|
94
95
|
exports.getRunningTxSubmitWorker = getRunningTxSubmitWorker;
|