@cardano-sdk/cardano-services 0.11.2-patch.0 → 0.11.3
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/README.md +29 -12
- package/dist/cjs/Asset/AssetHttpService.d.ts.map +1 -1
- package/dist/cjs/Asset/AssetHttpService.js +1 -0
- package/dist/cjs/Asset/AssetHttpService.js.map +1 -1
- package/dist/cjs/Asset/CardanoTokenRegistry.d.ts +1 -1
- package/dist/cjs/Asset/CardanoTokenRegistry.d.ts.map +1 -1
- package/dist/cjs/Asset/CardanoTokenRegistry.js +10 -8
- package/dist/cjs/Asset/CardanoTokenRegistry.js.map +1 -1
- package/dist/cjs/Asset/DbSyncAssetProvider/AssetBuilder.d.ts +1 -2
- package/dist/cjs/Asset/DbSyncAssetProvider/AssetBuilder.d.ts.map +1 -1
- package/dist/cjs/Asset/DbSyncAssetProvider/AssetBuilder.js +15 -17
- package/dist/cjs/Asset/DbSyncAssetProvider/AssetBuilder.js.map +1 -1
- package/dist/cjs/Asset/DbSyncAssetProvider/DbSyncAssetProvider.d.ts +7 -2
- package/dist/cjs/Asset/DbSyncAssetProvider/DbSyncAssetProvider.d.ts.map +1 -1
- package/dist/cjs/Asset/DbSyncAssetProvider/DbSyncAssetProvider.js +49 -13
- package/dist/cjs/Asset/DbSyncAssetProvider/DbSyncAssetProvider.js.map +1 -1
- package/dist/cjs/Asset/DbSyncAssetProvider/queries.d.ts +1 -3
- package/dist/cjs/Asset/DbSyncAssetProvider/queries.d.ts.map +1 -1
- package/dist/cjs/Asset/DbSyncAssetProvider/queries.js +13 -11
- package/dist/cjs/Asset/DbSyncAssetProvider/queries.js.map +1 -1
- package/dist/cjs/Asset/DbSyncAssetProvider/types.d.ts +2 -5
- package/dist/cjs/Asset/DbSyncAssetProvider/types.d.ts.map +1 -1
- package/dist/cjs/Asset/openApi.json +102 -3
- package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.d.ts +1 -1
- package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.d.ts.map +1 -1
- package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.js +3 -5
- package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.js.map +1 -1
- package/dist/cjs/Http/HttpServer.d.ts +1 -7
- package/dist/cjs/Http/HttpServer.d.ts.map +1 -1
- package/dist/cjs/Http/HttpServer.js +36 -26
- package/dist/cjs/Http/HttpServer.js.map +1 -1
- package/dist/cjs/Http/index.d.ts +1 -0
- package/dist/cjs/Http/index.d.ts.map +1 -1
- package/dist/cjs/Http/index.js +1 -0
- package/dist/cjs/Http/index.js.map +1 -1
- package/dist/cjs/Http/types.d.ts +1 -0
- package/dist/cjs/Http/types.d.ts.map +1 -1
- package/dist/cjs/Http/util.js +1 -1
- package/dist/cjs/Http/util.js.map +1 -1
- package/dist/cjs/Metadata/DbSyncMetadataService.d.ts.map +1 -1
- package/dist/cjs/Metadata/DbSyncMetadataService.js +5 -1
- package/dist/cjs/Metadata/DbSyncMetadataService.js.map +1 -1
- package/dist/cjs/NetworkInfo/NetworkInfoHttpService.d.ts.map +1 -1
- package/dist/cjs/NetworkInfo/NetworkInfoHttpService.js +0 -1
- package/dist/cjs/NetworkInfo/NetworkInfoHttpService.js.map +1 -1
- package/dist/cjs/NetworkInfo/openApi.json +11 -67
- package/dist/cjs/PgBoss/stakePoolMetadataHandler.d.ts +16 -0
- package/dist/cjs/PgBoss/stakePoolMetadataHandler.d.ts.map +1 -0
- package/dist/cjs/PgBoss/stakePoolMetadataHandler.js +59 -0
- package/dist/cjs/PgBoss/stakePoolMetadataHandler.js.map +1 -0
- package/dist/cjs/PgBoss/types.d.ts +7 -0
- package/dist/cjs/PgBoss/types.d.ts.map +1 -0
- package/dist/cjs/PgBoss/types.js +6 -0
- package/dist/cjs/PgBoss/types.js.map +1 -0
- package/dist/cjs/PgBoss/util.d.ts +4 -0
- package/dist/cjs/PgBoss/util.d.ts.map +1 -0
- package/dist/cjs/PgBoss/util.js +12 -0
- package/dist/cjs/PgBoss/util.js.map +1 -0
- package/dist/cjs/Program/errors/MissingProgramOption.d.ts +3 -0
- package/dist/cjs/Program/errors/MissingProgramOption.d.ts.map +1 -1
- package/dist/cjs/Program/errors/MissingProgramOption.js +8 -1
- package/dist/cjs/Program/errors/MissingProgramOption.js.map +1 -1
- package/dist/cjs/Program/options/postgres.d.ts +7 -2
- package/dist/cjs/Program/options/postgres.d.ts.map +1 -1
- package/dist/cjs/Program/options/postgres.js +49 -41
- package/dist/cjs/Program/options/postgres.js.map +1 -1
- package/dist/cjs/Program/programs/blockfrostWorker.d.ts +1 -1
- package/dist/cjs/Program/programs/blockfrostWorker.d.ts.map +1 -1
- package/dist/cjs/Program/programs/pgBossWorker.d.ts +25 -0
- package/dist/cjs/Program/programs/pgBossWorker.d.ts.map +1 -0
- package/dist/cjs/Program/programs/pgBossWorker.js +40 -0
- package/dist/cjs/Program/programs/pgBossWorker.js.map +1 -0
- package/dist/cjs/Program/programs/projector.d.ts +1 -1
- package/dist/cjs/Program/programs/projector.d.ts.map +1 -1
- package/dist/cjs/Program/programs/projector.js +1 -1
- package/dist/cjs/Program/programs/projector.js.map +1 -1
- package/dist/cjs/Program/programs/providerServer.d.ts +3 -1
- package/dist/cjs/Program/programs/providerServer.d.ts.map +1 -1
- package/dist/cjs/Program/programs/providerServer.js +7 -2
- package/dist/cjs/Program/programs/providerServer.js.map +1 -1
- package/dist/cjs/Program/programs/types.d.ts +9 -2
- package/dist/cjs/Program/programs/types.d.ts.map +1 -1
- package/dist/cjs/Program/programs/types.js +8 -1
- package/dist/cjs/Program/programs/types.js.map +1 -1
- package/dist/cjs/Program/services/ogmios.d.ts +3 -1
- package/dist/cjs/Program/services/ogmios.d.ts.map +1 -1
- package/dist/cjs/Program/services/ogmios.js +14 -1
- package/dist/cjs/Program/services/ogmios.js.map +1 -1
- package/dist/cjs/Program/services/pgboss.d.ts +27 -0
- package/dist/cjs/Program/services/pgboss.d.ts.map +1 -0
- package/dist/cjs/Program/services/pgboss.js +114 -0
- package/dist/cjs/Program/services/pgboss.js.map +1 -0
- package/dist/cjs/Program/services/postgres.d.ts +6 -3
- package/dist/cjs/Program/services/postgres.d.ts.map +1 -1
- package/dist/cjs/Program/services/postgres.js +101 -21
- package/dist/cjs/Program/services/postgres.js.map +1 -1
- package/dist/cjs/Projection/createTypeormProjection.d.ts +2 -1
- package/dist/cjs/Projection/createTypeormProjection.d.ts.map +1 -1
- package/dist/cjs/Projection/createTypeormProjection.js +4 -3
- package/dist/cjs/Projection/createTypeormProjection.js.map +1 -1
- package/dist/cjs/Projection/prepareTypeormProjection.d.ts +2 -2
- package/dist/cjs/Projection/prepareTypeormProjection.d.ts.map +1 -1
- package/dist/cjs/Projection/prepareTypeormProjection.js +1 -3
- package/dist/cjs/Projection/prepareTypeormProjection.js.map +1 -1
- package/dist/cjs/StakePool/HttpStakePoolMetadata/HttpStakePoolMetadataService.d.ts.map +1 -1
- package/dist/cjs/StakePool/HttpStakePoolMetadata/HttpStakePoolMetadataService.js +31 -28
- package/dist/cjs/StakePool/HttpStakePoolMetadata/HttpStakePoolMetadataService.js.map +1 -1
- package/dist/cjs/StakePool/HttpStakePoolMetadata/errors.d.ts +2 -1
- package/dist/cjs/StakePool/HttpStakePoolMetadata/errors.d.ts.map +1 -1
- package/dist/cjs/StakePool/HttpStakePoolMetadata/errors.js +1 -0
- package/dist/cjs/StakePool/HttpStakePoolMetadata/errors.js.map +1 -1
- package/dist/cjs/StakePool/types.d.ts +2 -0
- package/dist/cjs/StakePool/types.d.ts.map +1 -1
- package/dist/cjs/StakePool/types.js.map +1 -1
- package/dist/cjs/TxSubmit/rabbitmq/RabbitMqTxSubmitProvider.d.ts.map +1 -1
- package/dist/cjs/TxSubmit/rabbitmq/RabbitMqTxSubmitProvider.js +1 -1
- package/dist/cjs/TxSubmit/rabbitmq/RabbitMqTxSubmitProvider.js.map +1 -1
- package/dist/cjs/TxSubmit/rabbitmq/TxSubmitWorker.d.ts.map +1 -1
- package/dist/cjs/TxSubmit/rabbitmq/TxSubmitWorker.js +4 -4
- package/dist/cjs/TxSubmit/rabbitmq/TxSubmitWorker.js.map +1 -1
- package/dist/cjs/cli.js +54 -11
- package/dist/cjs/cli.js.map +1 -1
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/original-package.json +23 -12
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/package.json +23 -12
- package/dist/cjs/Projection/migrations/0-block-table.d.ts +0 -8
- package/dist/cjs/Projection/migrations/0-block-table.d.ts.map +0 -1
- package/dist/cjs/Projection/migrations/0-block-table.js +0 -19
- package/dist/cjs/Projection/migrations/0-block-table.js.map +0 -1
- package/dist/cjs/Projection/migrations/1-block-data-table.d.ts +0 -8
- package/dist/cjs/Projection/migrations/1-block-data-table.d.ts.map +0 -1
- package/dist/cjs/Projection/migrations/1-block-data-table.js +0 -17
- package/dist/cjs/Projection/migrations/1-block-data-table.js.map +0 -1
- package/dist/cjs/Projection/migrations/10-fk-pool-retirement.d.ts +0 -8
- package/dist/cjs/Projection/migrations/10-fk-pool-retirement.d.ts.map +0 -1
- package/dist/cjs/Projection/migrations/10-fk-pool-retirement.js +0 -17
- package/dist/cjs/Projection/migrations/10-fk-pool-retirement.js.map +0 -1
- package/dist/cjs/Projection/migrations/2-pool-registration-table.d.ts +0 -8
- package/dist/cjs/Projection/migrations/2-pool-registration-table.d.ts.map +0 -1
- package/dist/cjs/Projection/migrations/2-pool-registration-table.js +0 -17
- package/dist/cjs/Projection/migrations/2-pool-registration-table.js.map +0 -1
- package/dist/cjs/Projection/migrations/3-pool-retirement-table.d.ts +0 -8
- package/dist/cjs/Projection/migrations/3-pool-retirement-table.d.ts.map +0 -1
- package/dist/cjs/Projection/migrations/3-pool-retirement-table.js +0 -17
- package/dist/cjs/Projection/migrations/3-pool-retirement-table.js.map +0 -1
- package/dist/cjs/Projection/migrations/4-stake-pool-table.d.ts +0 -8
- package/dist/cjs/Projection/migrations/4-stake-pool-table.d.ts.map +0 -1
- package/dist/cjs/Projection/migrations/4-stake-pool-table.js +0 -19
- package/dist/cjs/Projection/migrations/4-stake-pool-table.js.map +0 -1
- package/dist/cjs/Projection/migrations/5-pool-metadata-table.d.ts +0 -8
- package/dist/cjs/Projection/migrations/5-pool-metadata-table.d.ts.map +0 -1
- package/dist/cjs/Projection/migrations/5-pool-metadata-table.js +0 -23
- package/dist/cjs/Projection/migrations/5-pool-metadata-table.js.map +0 -1
- package/dist/cjs/Projection/migrations/6-asset-table.d.ts +0 -8
- package/dist/cjs/Projection/migrations/6-asset-table.d.ts.map +0 -1
- package/dist/cjs/Projection/migrations/6-asset-table.js +0 -17
- package/dist/cjs/Projection/migrations/6-asset-table.js.map +0 -1
- package/dist/cjs/Projection/migrations/7-output-table.d.ts +0 -8
- package/dist/cjs/Projection/migrations/7-output-table.d.ts.map +0 -1
- package/dist/cjs/Projection/migrations/7-output-table.js +0 -23
- package/dist/cjs/Projection/migrations/7-output-table.js.map +0 -1
- package/dist/cjs/Projection/migrations/8-tokens-table.d.ts +0 -8
- package/dist/cjs/Projection/migrations/8-tokens-table.d.ts.map +0 -1
- package/dist/cjs/Projection/migrations/8-tokens-table.js +0 -19
- package/dist/cjs/Projection/migrations/8-tokens-table.js.map +0 -1
- package/dist/cjs/Projection/migrations/9-fk-pool-registration.d.ts +0 -8
- package/dist/cjs/Projection/migrations/9-fk-pool-registration.d.ts.map +0 -1
- package/dist/cjs/Projection/migrations/9-fk-pool-registration.js +0 -17
- package/dist/cjs/Projection/migrations/9-fk-pool-registration.js.map +0 -1
- package/dist/cjs/dataSource.d.ts +0 -2
- package/dist/cjs/dataSource.d.ts.map +0 -1
- package/dist/cjs/dataSource.js +0 -26
- package/dist/cjs/dataSource.js.map +0 -1
|
@@ -147,33 +147,6 @@
|
|
|
147
147
|
}
|
|
148
148
|
}
|
|
149
149
|
},
|
|
150
|
-
"/network-info/current-wallet-protocol-parameters": {
|
|
151
|
-
"post": {
|
|
152
|
-
"summary": "fetch current wallet protocol params",
|
|
153
|
-
"description": "Fetch current Wallet Protocol Params",
|
|
154
|
-
"operationId": "protocolParams",
|
|
155
|
-
"requestBody": {
|
|
156
|
-
"content": {
|
|
157
|
-
"application/json": {}
|
|
158
|
-
}
|
|
159
|
-
},
|
|
160
|
-
"responses": {
|
|
161
|
-
"200": {
|
|
162
|
-
"description": "current wallet protocol params fetched",
|
|
163
|
-
"content": {
|
|
164
|
-
"application/json": {
|
|
165
|
-
"schema": {
|
|
166
|
-
"$ref": "#/components/schemas/ProtocolParametersResponse"
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
},
|
|
171
|
-
"400": {
|
|
172
|
-
"description": "invalid request"
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
},
|
|
177
150
|
"/network-info/genesis-parameters": {
|
|
178
151
|
"post": {
|
|
179
152
|
"summary": "fetch genesis params",
|
|
@@ -205,10 +178,7 @@
|
|
|
205
178
|
"components": {
|
|
206
179
|
"schemas": {
|
|
207
180
|
"Stake": {
|
|
208
|
-
"required": [
|
|
209
|
-
"active",
|
|
210
|
-
"live"
|
|
211
|
-
],
|
|
181
|
+
"required": ["active", "live"],
|
|
212
182
|
"type": "object",
|
|
213
183
|
"properties": {
|
|
214
184
|
"live": {
|
|
@@ -220,10 +190,7 @@
|
|
|
220
190
|
}
|
|
221
191
|
},
|
|
222
192
|
"LovelaceSupply": {
|
|
223
|
-
"required": [
|
|
224
|
-
"circulating",
|
|
225
|
-
"total"
|
|
226
|
-
],
|
|
193
|
+
"required": ["circulating", "total"],
|
|
227
194
|
"type": "object",
|
|
228
195
|
"properties": {
|
|
229
196
|
"circulating": {
|
|
@@ -235,17 +202,11 @@
|
|
|
235
202
|
}
|
|
236
203
|
},
|
|
237
204
|
"EraSummary": {
|
|
238
|
-
"required": [
|
|
239
|
-
"parameters",
|
|
240
|
-
"start"
|
|
241
|
-
],
|
|
205
|
+
"required": ["parameters", "start"],
|
|
242
206
|
"type": "object",
|
|
243
207
|
"properties": {
|
|
244
208
|
"parameters": {
|
|
245
|
-
"required": [
|
|
246
|
-
"epochLength",
|
|
247
|
-
"slotLength"
|
|
248
|
-
],
|
|
209
|
+
"required": ["epochLength", "slotLength"],
|
|
249
210
|
"type": "object",
|
|
250
211
|
"properties": {
|
|
251
212
|
"epochLength": {
|
|
@@ -259,10 +220,7 @@
|
|
|
259
220
|
}
|
|
260
221
|
},
|
|
261
222
|
"start": {
|
|
262
|
-
"required": [
|
|
263
|
-
"slot",
|
|
264
|
-
"time"
|
|
265
|
-
],
|
|
223
|
+
"required": ["slot", "time"],
|
|
266
224
|
"type": "object",
|
|
267
225
|
"properties": {
|
|
268
226
|
"slot": {
|
|
@@ -277,10 +235,7 @@
|
|
|
277
235
|
}
|
|
278
236
|
},
|
|
279
237
|
"Date": {
|
|
280
|
-
"required": [
|
|
281
|
-
"__type",
|
|
282
|
-
"value"
|
|
283
|
-
],
|
|
238
|
+
"required": ["__type", "value"],
|
|
284
239
|
"type": "object",
|
|
285
240
|
"properties": {
|
|
286
241
|
"value": {
|
|
@@ -288,17 +243,12 @@
|
|
|
288
243
|
},
|
|
289
244
|
"__type": {
|
|
290
245
|
"type": "string",
|
|
291
|
-
"enum": [
|
|
292
|
-
"Date"
|
|
293
|
-
]
|
|
246
|
+
"enum": ["Date"]
|
|
294
247
|
}
|
|
295
248
|
}
|
|
296
249
|
},
|
|
297
250
|
"BigInt": {
|
|
298
|
-
"required": [
|
|
299
|
-
"__type",
|
|
300
|
-
"value"
|
|
301
|
-
],
|
|
251
|
+
"required": ["__type", "value"],
|
|
302
252
|
"type": "object",
|
|
303
253
|
"properties": {
|
|
304
254
|
"value": {
|
|
@@ -307,19 +257,13 @@
|
|
|
307
257
|
},
|
|
308
258
|
"__type": {
|
|
309
259
|
"type": "string",
|
|
310
|
-
"enum": [
|
|
311
|
-
"bigint"
|
|
312
|
-
]
|
|
260
|
+
"enum": ["bigint"]
|
|
313
261
|
}
|
|
314
262
|
}
|
|
315
263
|
},
|
|
316
264
|
"LedgerTipResponse": {
|
|
317
265
|
"type": "object",
|
|
318
|
-
"required": [
|
|
319
|
-
"blockNo",
|
|
320
|
-
"slot",
|
|
321
|
-
"hash"
|
|
322
|
-
],
|
|
266
|
+
"required": ["blockNo", "slot", "hash"],
|
|
323
267
|
"properties": {
|
|
324
268
|
"blockNo": {
|
|
325
269
|
"type": "number",
|
|
@@ -450,4 +394,4 @@
|
|
|
450
394
|
}
|
|
451
395
|
}
|
|
452
396
|
}
|
|
453
|
-
}
|
|
397
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Cardano } from '@cardano-sdk/core';
|
|
2
|
+
import { DataSource } from 'typeorm';
|
|
3
|
+
import { Hash32ByteBase16 } from '@cardano-sdk/crypto';
|
|
4
|
+
import { WorkerHandlerFactory } from './types';
|
|
5
|
+
export declare const isUpdateOutdated: (dataSource: DataSource, poolId: Cardano.PoolId, poolRegistrationId: string) => Promise<boolean>;
|
|
6
|
+
interface SavePoolMetadataArguments {
|
|
7
|
+
dataSource: DataSource;
|
|
8
|
+
hash: Hash32ByteBase16;
|
|
9
|
+
metadata: Cardano.StakePoolMetadata;
|
|
10
|
+
poolId: Cardano.PoolId;
|
|
11
|
+
poolRegistrationId: string;
|
|
12
|
+
}
|
|
13
|
+
export declare const savePoolMetadata: (args: SavePoolMetadataArguments) => Promise<void>;
|
|
14
|
+
export declare const stakePoolMetadataHandlerFactory: WorkerHandlerFactory;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=stakePoolMetadataHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stakePoolMetadataHandler.d.ts","sourceRoot":"","sources":["../../../src/PgBoss/stakePoolMetadataHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAY,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAM/C,eAAO,MAAM,gBAAgB,eAAsB,UAAU,UAAU,QAAQ,MAAM,sBAAsB,MAAM,qBAUhH,CAAC;AAEF,UAAU,yBAAyB;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,EAAE,gBAAgB,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC,iBAAiB,CAAC;IACpC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,gBAAgB,SAAgB,yBAAyB,kBAkBrE,CAAC;AAEF,eAAO,MAAM,+BAA+B,EAAE,oBAoC7C,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.stakePoolMetadataHandlerFactory = exports.savePoolMetadata = exports.isUpdateOutdated = void 0;
|
|
4
|
+
const typeorm_1 = require("typeorm");
|
|
5
|
+
const projection_typeorm_1 = require("@cardano-sdk/projection-typeorm");
|
|
6
|
+
const StakePool_1 = require("../StakePool");
|
|
7
|
+
const isErrorWithConstraint = (error) => error instanceof Error && 'constraint' in error;
|
|
8
|
+
const isUpdateOutdated = async (dataSource, poolId, poolRegistrationId) => {
|
|
9
|
+
const repos = dataSource.getRepository(projection_typeorm_1.PoolRegistrationEntity);
|
|
10
|
+
const res = await repos.countBy({
|
|
11
|
+
id: (0, typeorm_1.MoreThan)(poolRegistrationId),
|
|
12
|
+
stakePool: { id: poolId }
|
|
13
|
+
});
|
|
14
|
+
return res > 0;
|
|
15
|
+
};
|
|
16
|
+
exports.isUpdateOutdated = isUpdateOutdated;
|
|
17
|
+
const savePoolMetadata = async (args) => {
|
|
18
|
+
const { dataSource, hash, metadata, poolId, poolRegistrationId } = args;
|
|
19
|
+
const repos = dataSource.getRepository(projection_typeorm_1.PoolMetadataEntity);
|
|
20
|
+
const entity = repos.create({
|
|
21
|
+
...metadata,
|
|
22
|
+
hash,
|
|
23
|
+
poolUpdate: { id: BigInt(poolRegistrationId) },
|
|
24
|
+
stakePool: { id: poolId }
|
|
25
|
+
});
|
|
26
|
+
try {
|
|
27
|
+
await repos.upsert(entity, ['poolUpdate']);
|
|
28
|
+
}
|
|
29
|
+
catch (error) {
|
|
30
|
+
if (isErrorWithConstraint(error) && error.constraint === 'FK_pool_metadata_pool_update_id')
|
|
31
|
+
return;
|
|
32
|
+
throw error;
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
exports.savePoolMetadata = savePoolMetadata;
|
|
36
|
+
const stakePoolMetadataHandlerFactory = (dataSource, logger) => {
|
|
37
|
+
const service = (0, StakePool_1.createHttpStakePoolMetadataService)(logger);
|
|
38
|
+
return async (task) => {
|
|
39
|
+
const { metadataJson, poolId, poolRegistrationId } = task;
|
|
40
|
+
const { hash, url } = metadataJson;
|
|
41
|
+
logger.info(`Checking if pool update ${poolRegistrationId} is outdated by a more recent update`);
|
|
42
|
+
if (await (0, exports.isUpdateOutdated)(dataSource, poolId, poolRegistrationId)) {
|
|
43
|
+
logger.info('Pool update is outdated, metadata no longer needed');
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
logger.info('Resolving stake pool metadata...', { poolId, poolRegistrationId });
|
|
47
|
+
const { errors, metadata } = await service.getStakePoolMetadata(hash, url);
|
|
48
|
+
logger.info('Stake pool metadata resolved', { errors, metadata, poolId, poolRegistrationId });
|
|
49
|
+
if (metadata) {
|
|
50
|
+
logger.info('Saving stake pool metadata...');
|
|
51
|
+
await (0, exports.savePoolMetadata)({ dataSource, hash, metadata, poolId, poolRegistrationId });
|
|
52
|
+
logger.info('Stake pool metadata saved');
|
|
53
|
+
}
|
|
54
|
+
if (errors?.length)
|
|
55
|
+
throw errors[0];
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
exports.stakePoolMetadataHandlerFactory = stakePoolMetadataHandlerFactory;
|
|
59
|
+
//# sourceMappingURL=stakePoolMetadataHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stakePoolMetadataHandler.js","sourceRoot":"","sources":["../../../src/PgBoss/stakePoolMetadataHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DataSource } from 'typeorm';
|
|
2
|
+
import { Logger } from 'ts-log';
|
|
3
|
+
export declare const workerQueues: readonly ["pool-metadata"];
|
|
4
|
+
export declare type PgBossQueue = typeof workerQueues[number];
|
|
5
|
+
export declare type WorkerHandler = (data: any) => Promise<void>;
|
|
6
|
+
export declare type WorkerHandlerFactory = (dataSource: DataSource, logger: Logger) => WorkerHandler;
|
|
7
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/PgBoss/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,eAAO,MAAM,YAAY,4BAAuC,CAAC;AAEjE,oBAAY,WAAW,GAAG,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAGtD,oBAAY,aAAa,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AACzD,oBAAY,oBAAoB,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,KAAK,aAAa,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.workerQueues = void 0;
|
|
4
|
+
const projection_typeorm_1 = require("@cardano-sdk/projection-typeorm");
|
|
5
|
+
exports.workerQueues = [projection_typeorm_1.STAKE_POOL_METADATA_QUEUE];
|
|
6
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/PgBoss/types.ts"],"names":[],"mappings":";;;AAEA,wEAA4E;AAE/D,QAAA,YAAY,GAAG,CAAC,8CAAyB,CAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/PgBoss/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAgB,MAAM,SAAS,CAAC;AAI1E,eAAO,MAAM,YAAY,UAAW,MAAM,6BAAsE,CAAC;AAKjH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,WAAW,EAAE,oBAAoB,CAEnE,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.queueHandlers = exports.isValidQueue = void 0;
|
|
4
|
+
const types_1 = require("./types");
|
|
5
|
+
const projection_typeorm_1 = require("@cardano-sdk/projection-typeorm");
|
|
6
|
+
const stakePoolMetadataHandler_1 = require("./stakePoolMetadataHandler");
|
|
7
|
+
const isValidQueue = (queue) => types_1.workerQueues.includes(queue);
|
|
8
|
+
exports.isValidQueue = isValidQueue;
|
|
9
|
+
exports.queueHandlers = {
|
|
10
|
+
[projection_typeorm_1.STAKE_POOL_METADATA_QUEUE]: stakePoolMetadataHandler_1.stakePoolMetadataHandlerFactory
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/PgBoss/util.ts"],"names":[],"mappings":";;;AAAA,mCAA0E;AAC1E,wEAA4E;AAC5E,yEAA6E;AAEtE,MAAM,YAAY,GAAG,CAAC,KAAa,EAAwB,EAAE,CAAC,oBAAY,CAAC,QAAQ,CAAC,KAAoB,CAAC,CAAC;AAApG,QAAA,YAAY,gBAAwF;AAKpG,QAAA,aAAa,GAA8C;IACtE,CAAC,8CAAyB,CAAC,EAAE,0DAA+B;CAC7D,CAAC"}
|
|
@@ -2,4 +2,7 @@ import { CustomError } from 'ts-custom-error';
|
|
|
2
2
|
export declare class MissingProgramOption<ServiceNames, OptionsType> extends CustomError {
|
|
3
3
|
constructor(service: ServiceNames, option: OptionsType | OptionsType[]);
|
|
4
4
|
}
|
|
5
|
+
export declare class InvalidProgramOption<OptionsType> extends CustomError {
|
|
6
|
+
constructor(option: OptionsType | OptionsType[]);
|
|
7
|
+
}
|
|
5
8
|
//# sourceMappingURL=MissingProgramOption.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MissingProgramOption.d.ts","sourceRoot":"","sources":["../../../../src/Program/errors/MissingProgramOption.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,qBAAa,oBAAoB,CAAC,YAAY,EAAE,WAAW,CAAE,SAAQ,WAAW;gBAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,GAAG,WAAW,EAAE;CAI9E"}
|
|
1
|
+
{"version":3,"file":"MissingProgramOption.d.ts","sourceRoot":"","sources":["../../../../src/Program/errors/MissingProgramOption.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,qBAAa,oBAAoB,CAAC,YAAY,EAAE,WAAW,CAAE,SAAQ,WAAW;gBAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,GAAG,WAAW,EAAE;CAI9E;AAED,qBAAa,oBAAoB,CAAC,WAAW,CAAE,SAAQ,WAAW;gBAC7C,MAAM,EAAE,WAAW,GAAG,WAAW,EAAE;CAIvD"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MissingProgramOption = void 0;
|
|
3
|
+
exports.InvalidProgramOption = exports.MissingProgramOption = void 0;
|
|
4
4
|
const ts_custom_error_1 = require("ts-custom-error");
|
|
5
5
|
class MissingProgramOption extends ts_custom_error_1.CustomError {
|
|
6
6
|
constructor(service, option) {
|
|
@@ -9,4 +9,11 @@ class MissingProgramOption extends ts_custom_error_1.CustomError {
|
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
11
|
exports.MissingProgramOption = MissingProgramOption;
|
|
12
|
+
class InvalidProgramOption extends ts_custom_error_1.CustomError {
|
|
13
|
+
constructor(option) {
|
|
14
|
+
super();
|
|
15
|
+
this.message = `Invalid program option: ${Array.isArray(option) ? option.join(' or ') : option}.`;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.InvalidProgramOption = InvalidProgramOption;
|
|
12
19
|
//# sourceMappingURL=MissingProgramOption.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MissingProgramOption.js","sourceRoot":"","sources":["../../../../src/Program/errors/MissingProgramOption.ts"],"names":[],"mappings":";;;AAAA,qDAA8C;AAE9C,MAAa,oBAAgD,SAAQ,6BAAW;IAC9E,YAAmB,OAAqB,EAAE,MAAmC;QAC3E,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,GAAG,OAAO,iBAAiB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC;IACnH,CAAC;CACF;AALD,oDAKC"}
|
|
1
|
+
{"version":3,"file":"MissingProgramOption.js","sourceRoot":"","sources":["../../../../src/Program/errors/MissingProgramOption.ts"],"names":[],"mappings":";;;AAAA,qDAA8C;AAE9C,MAAa,oBAAgD,SAAQ,6BAAW;IAC9E,YAAmB,OAAqB,EAAE,MAAmC;QAC3E,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,GAAG,OAAO,iBAAiB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC;IACnH,CAAC;CACF;AALD,oDAKC;AAED,MAAa,oBAAkC,SAAQ,6BAAW;IAChE,YAAmB,MAAmC;QACpD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,2BAA2B,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC;IACpG,CAAC;CACF;AALD,oDAKC"}
|
|
@@ -14,7 +14,7 @@ export declare enum PostgresOptionDescriptions {
|
|
|
14
14
|
PoolMax = "Maximum number of clients in the PostgreSQL pool",
|
|
15
15
|
ServiceDiscoveryArgs = "Postgres SRV service name, db, user and password"
|
|
16
16
|
}
|
|
17
|
-
export interface
|
|
17
|
+
export interface BasePosgresProgramOptions {
|
|
18
18
|
postgresConnectionString?: string;
|
|
19
19
|
postgresSrvServiceName?: string;
|
|
20
20
|
postgresDb?: string;
|
|
@@ -28,5 +28,10 @@ export interface PosgresProgramOptions {
|
|
|
28
28
|
postgresPort?: string;
|
|
29
29
|
postgresSslCaFile?: string;
|
|
30
30
|
}
|
|
31
|
-
export declare
|
|
31
|
+
export declare type ConnectionNames = 'DbSync' | 'StakePool';
|
|
32
|
+
export declare type PosgresProgramOptions<Suffix extends ConnectionNames, Options extends keyof BasePosgresProgramOptions = keyof BasePosgresProgramOptions> = {
|
|
33
|
+
[k in Options as `${k}${Suffix}`]?: BasePosgresProgramOptions[k];
|
|
34
|
+
};
|
|
35
|
+
export declare const getPostgresOption: <Suffix extends ConnectionNames, Options extends keyof BasePosgresProgramOptions>(suffix: Suffix, option: Options, args: PosgresProgramOptions<Suffix, Options> | undefined) => BasePosgresProgramOptions[Options];
|
|
36
|
+
export declare const withPostgresOptions: (command: Command, suffix: ConnectionNames) => Command;
|
|
32
37
|
//# sourceMappingURL=postgres.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres.d.ts","sourceRoot":"","sources":["../../../../src/Program/options/postgres.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAG5C,oBAAY,0BAA0B;IACpC,gBAAgB,iCAAiC;IACjD,cAAc,6DAA6D;IAC3E,EAAE,6BAA6B;IAC/B,MAAM,uCAAuC;IAC7C,IAAI,oBAAoB;IACxB,QAAQ,8BAA8B;IACtC,QAAQ,wBAAwB;IAChC,YAAY,kCAAkC;IAC9C,SAAS,gCAAgC;IACzC,IAAI,oBAAoB;IACxB,IAAI,oBAAoB;IACxB,OAAO,qDAAqD;IAC5D,oBAAoB,qDAAqD;CAC1E;AAED,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"postgres.d.ts","sourceRoot":"","sources":["../../../../src/Program/options/postgres.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAG5C,oBAAY,0BAA0B;IACpC,gBAAgB,iCAAiC;IACjD,cAAc,6DAA6D;IAC3E,EAAE,6BAA6B;IAC/B,MAAM,uCAAuC;IAC7C,IAAI,oBAAoB;IACxB,QAAQ,8BAA8B;IACtC,QAAQ,wBAAwB;IAChC,YAAY,kCAAkC;IAC9C,SAAS,gCAAgC;IACzC,IAAI,oBAAoB;IACxB,IAAI,oBAAoB;IACxB,OAAO,qDAAqD;IAC5D,oBAAoB,qDAAqD;CAC1E;AAED,MAAM,WAAW,yBAAyB;IACxC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,oBAAY,eAAe,GAAG,QAAQ,GAAG,WAAW,CAAC;AAErD,oBAAY,qBAAqB,CAC/B,MAAM,SAAS,eAAe,EAC9B,OAAO,SAAS,MAAM,yBAAyB,GAAG,MAAM,yBAAyB,IAC/E;KAAG,CAAC,IAAI,OAAO,IAAI,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC,EAAE,yBAAyB,CAAC,CAAC,CAAC;CAAE,CAAC;AAEzE,eAAO,MAAM,iBAAiB,oNAI+C,CAAC;AAE9E,eAAO,MAAM,mBAAmB,YAAa,OAAO,UAAU,eAAe,YAqG5E,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.withPostgresOptions = exports.PostgresOptionDescriptions = void 0;
|
|
3
|
+
exports.withPostgresOptions = exports.getPostgresOption = exports.PostgresOptionDescriptions = void 0;
|
|
4
4
|
const commander_1 = require("commander");
|
|
5
5
|
const validators_1 = require("../../util/validators");
|
|
6
6
|
var PostgresOptionDescriptions;
|
|
@@ -19,45 +19,53 @@ var PostgresOptionDescriptions;
|
|
|
19
19
|
PostgresOptionDescriptions["PoolMax"] = "Maximum number of clients in the PostgreSQL pool";
|
|
20
20
|
PostgresOptionDescriptions["ServiceDiscoveryArgs"] = "Postgres SRV service name, db, user and password";
|
|
21
21
|
})(PostgresOptionDescriptions = exports.PostgresOptionDescriptions || (exports.PostgresOptionDescriptions = {}));
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
.
|
|
26
|
-
.
|
|
27
|
-
.
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
22
|
+
const getPostgresOption = (suffix, option, args) => args?.[`${option}${suffix}`];
|
|
23
|
+
exports.getPostgresOption = getPostgresOption;
|
|
24
|
+
const withPostgresOptions = (command, suffix) => {
|
|
25
|
+
const cliSuffix = suffix.replace(/[A-Z]/g, (_) => `-${_.toLowerCase()}`);
|
|
26
|
+
const dscSuffix = suffix.replace(/[A-Z]/g, (_) => ` ${_.toLowerCase()}`);
|
|
27
|
+
const envSuffix = suffix.replace(/[A-Z]/g, (_) => `_${_}`).replace(/[a-z]/g, (_) => _.toUpperCase());
|
|
28
|
+
const descSuffix = ` for${dscSuffix}`;
|
|
29
|
+
return command
|
|
30
|
+
.addOption(new commander_1.Option(`--postgres-connection-string${cliSuffix} <postgresConnectionString${suffix}>`, PostgresOptionDescriptions.ConnectionString + descSuffix)
|
|
31
|
+
.env(`POSTGRES_CONNECTION_STRING${envSuffix}`)
|
|
32
|
+
.conflicts(`postgresSrvServiceName${suffix}`)
|
|
33
|
+
.conflicts(`postgresDb${suffix}`)
|
|
34
|
+
.conflicts(`postgresDbFile${suffix}`)
|
|
35
|
+
.conflicts(`postgresUser${suffix}`)
|
|
36
|
+
.conflicts(`postgresUserFile${suffix}`)
|
|
37
|
+
.conflicts(`postgresPassword${suffix}`)
|
|
38
|
+
.conflicts(`postgresPasswordFile${suffix}`)
|
|
39
|
+
.conflicts(`postgresHost${suffix}`)
|
|
40
|
+
.conflicts(`postgresPort${suffix}`))
|
|
41
|
+
.addOption(new commander_1.Option(`--postgres-srv-service-name${cliSuffix} <postgresSrvServiceName${suffix}>`, PostgresOptionDescriptions.SrvServiceName + descSuffix)
|
|
42
|
+
.env(`POSTGRES_SRV_SERVICE_NAME${envSuffix}`)
|
|
43
|
+
.conflicts(`postgresHost${suffix}`)
|
|
44
|
+
.conflicts(`postgresPort${suffix}`))
|
|
45
|
+
.addOption(new commander_1.Option(`--postgres-db${cliSuffix} <postgresDb${suffix}>`, PostgresOptionDescriptions.Db + descSuffix)
|
|
46
|
+
.env(`POSTGRES_DB${envSuffix}`)
|
|
47
|
+
.conflicts(`postgresDbFile${suffix}`))
|
|
48
|
+
.addOption(new commander_1.Option(`--postgres-db-file${cliSuffix} <postgresDbFile${suffix}>`, PostgresOptionDescriptions.DbFile + descSuffix)
|
|
49
|
+
.env(`POSTGRES_DB_FILE${envSuffix}`)
|
|
50
|
+
.argParser(validators_1.existingFileValidator))
|
|
51
|
+
.addOption(new commander_1.Option(`--postgres-user${cliSuffix} <postgresUser${suffix}>`, PostgresOptionDescriptions.User + descSuffix)
|
|
52
|
+
.env(`POSTGRES_USER${envSuffix}`)
|
|
53
|
+
.conflicts(`postgresUserFile${suffix}`))
|
|
54
|
+
.addOption(new commander_1.Option(`--postgres-user-file${cliSuffix} <postgresUserFile${suffix}>`, PostgresOptionDescriptions.UserFile + descSuffix)
|
|
55
|
+
.env(`POSTGRES_USER_FILE${envSuffix}`)
|
|
56
|
+
.argParser(validators_1.existingFileValidator))
|
|
57
|
+
.addOption(new commander_1.Option(`--postgres-password${cliSuffix} <postgresPassword${suffix}>`, PostgresOptionDescriptions.Password + descSuffix)
|
|
58
|
+
.env(`POSTGRES_PASSWORD${envSuffix}`)
|
|
59
|
+
.conflicts(`postgresPasswordFile${suffix}`))
|
|
60
|
+
.addOption(new commander_1.Option(`--postgres-password-file${cliSuffix} <postgresPasswordFile${suffix}>`, PostgresOptionDescriptions.PasswordFile + descSuffix)
|
|
61
|
+
.env(`POSTGRES_PASSWORD_FILE${envSuffix}`)
|
|
62
|
+
.argParser(validators_1.existingFileValidator))
|
|
63
|
+
.addOption(new commander_1.Option(`--postgres-host${cliSuffix} <postgresHost${suffix}>`, PostgresOptionDescriptions.Host + descSuffix).env(`POSTGRES_HOST${envSuffix}`))
|
|
64
|
+
.addOption(new commander_1.Option(`--postgres-pool-max${cliSuffix} <postgresPoolMax${suffix}>`, PostgresOptionDescriptions.PoolMax + descSuffix)
|
|
65
|
+
.env(`POSTGRES_POOL_MAX${envSuffix}`)
|
|
66
|
+
.argParser((max) => Number.parseInt(max, 10)))
|
|
67
|
+
.addOption(new commander_1.Option(`--postgres-port${cliSuffix} <postgresPort${suffix}>`, PostgresOptionDescriptions.Port + descSuffix).env(`POSTGRES_PORT${envSuffix}`))
|
|
68
|
+
.addOption(new commander_1.Option(`--postgres-ssl-ca-file${cliSuffix} <postgresSslCaFile${suffix}>`, PostgresOptionDescriptions.SslCaFile + descSuffix).env(`POSTGRES_SSL_CA_FILE${envSuffix}`));
|
|
69
|
+
};
|
|
62
70
|
exports.withPostgresOptions = withPostgresOptions;
|
|
63
71
|
//# sourceMappingURL=postgres.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../../../src/Program/options/postgres.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAC5C,sDAA8D;AAE9D,IAAY,0BAcX;AAdD,WAAY,0BAA0B;IACpC,+EAAiD,CAAA;IACjD,yGAA2E,CAAA;IAC3E,6DAA+B,CAAA;IAC/B,2EAA6C,CAAA;IAC7C,sDAAwB,CAAA;IACxB,oEAAsC,CAAA;IACtC,8DAAgC,CAAA;IAChC,4EAA8C,CAAA;IAC9C,uEAAyC,CAAA;IACzC,sDAAwB,CAAA;IACxB,sDAAwB,CAAA;IACxB,0FAA4D,CAAA;IAC5D,uGAAyE,CAAA;AAC3E,CAAC,EAdW,0BAA0B,GAA1B,kCAA0B,KAA1B,kCAA0B,QAcrC;
|
|
1
|
+
{"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../../../src/Program/options/postgres.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,7 +21,7 @@ export declare enum BlockfrostWorkerOptionDescriptions {
|
|
|
21
21
|
Network = "network to run against",
|
|
22
22
|
ScanInterval = "interval between a scan and the next one in minutes"
|
|
23
23
|
}
|
|
24
|
-
export declare type BlockfrostWorkerArgs = CommonProgramOptions & PosgresProgramOptions & BlockfrostWorkerConfig & {
|
|
24
|
+
export declare type BlockfrostWorkerArgs = CommonProgramOptions & PosgresProgramOptions<'DbSync'> & BlockfrostWorkerConfig & {
|
|
25
25
|
blockfrostApiFile?: string;
|
|
26
26
|
};
|
|
27
27
|
export interface LoadBlockfrostWorkerDependencies {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockfrostWorker.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/blockfrostWorker.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAW,MAAM,aAAa,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAA8B,MAAM,YAAY,CAAC;AACrG,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAKhC,eAAO,MAAM,iCAAiC,KAAmC,CAAC;AAClF,eAAO,MAAM,iBAAiB,QAAU,CAAC;AACzC,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAC3C,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AACzC,eAAO,MAAM,eAAe,QAAQ,CAAC;AACrC,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC,eAAO,MAAM,iBAAiB,4CAA6C,CAAC;AAC5E,oBAAY,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAEjE,oBAAY,kCAAkC;IAC5C,iBAAiB,iCAAiC;IAClD,gBAAgB,uBAAuB;IACvC,QAAQ,gDAAgD;IACxD,YAAY,8CAA8C;IAC1D,UAAU,4CAA4C;IACtD,MAAM,8BAA8B;IACpC,OAAO,2BAA2B;IAClC,YAAY,wDAAwD;CACrE;AAED,oBAAY,oBAAoB,GAAG,oBAAoB,GACrD,qBAAqB,
|
|
1
|
+
{"version":3,"file":"blockfrostWorker.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/blockfrostWorker.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAW,MAAM,aAAa,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAA8B,MAAM,YAAY,CAAC;AACrG,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAKhC,eAAO,MAAM,iCAAiC,KAAmC,CAAC;AAClF,eAAO,MAAM,iBAAiB,QAAU,CAAC;AACzC,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAC3C,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AACzC,eAAO,MAAM,eAAe,QAAQ,CAAC;AACrC,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC,eAAO,MAAM,iBAAiB,4CAA6C,CAAC;AAC5E,oBAAY,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAEjE,oBAAY,kCAAkC;IAC5C,iBAAiB,iCAAiC;IAClD,gBAAgB,uBAAuB;IACvC,QAAQ,gDAAgD;IACxD,YAAY,8CAA8C;IAC1D,UAAU,4CAA4C;IACtD,MAAM,8BAA8B;IACpC,OAAO,2BAA2B;IAClC,YAAY,wDAAwD;CACrE;AAED,oBAAY,oBAAoB,GAAG,oBAAoB,GACrD,qBAAqB,CAAC,QAAQ,CAAC,GAC/B,sBAAsB,GAAG;IAAE,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1D,MAAM,WAAW,gCAAgC;IAC/C,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID,eAAO,MAAM,oBAAoB,SAAgB,oBAAoB,SAAQ,gCAAgC,8BAqC5G,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { CommonProgramOptions, PosgresProgramOptions } from '../options';
|
|
3
|
+
import { HttpServer } from '../../Http/HttpServer';
|
|
4
|
+
import { Logger } from 'ts-log';
|
|
5
|
+
import { PgBossServiceConfig, PgBossServiceDependencies } from '../services/pgboss';
|
|
6
|
+
import { SrvRecord } from 'dns';
|
|
7
|
+
export declare const PARALLEL_JOBS_DEFAULT = 10;
|
|
8
|
+
export declare const PG_BOSS_WORKER_API_URL_DEFAULT: URL;
|
|
9
|
+
export declare enum PgBossWorkerOptionDescriptions {
|
|
10
|
+
ParallelJobs = "Parallel jobs to run",
|
|
11
|
+
Queues = "Comma separated queue names"
|
|
12
|
+
}
|
|
13
|
+
export declare type PgBossWorkerArgs = CommonProgramOptions & PosgresProgramOptions<'DbSync'> & PosgresProgramOptions<'StakePool'> & PgBossServiceConfig;
|
|
14
|
+
export interface LoadPgBossWorkerDependencies {
|
|
15
|
+
dnsResolver?: (serviceName: string) => Promise<SrvRecord>;
|
|
16
|
+
logger?: Logger;
|
|
17
|
+
}
|
|
18
|
+
export interface PgBossWorkerConfig extends PgBossServiceConfig {
|
|
19
|
+
apiUrl: URL;
|
|
20
|
+
}
|
|
21
|
+
export declare class PgBossWorkerHttpServer extends HttpServer {
|
|
22
|
+
constructor(cfg: PgBossWorkerConfig, deps: PgBossServiceDependencies);
|
|
23
|
+
}
|
|
24
|
+
export declare const loadPgBossWorker: (args: PgBossWorkerArgs, deps?: LoadPgBossWorkerDependencies) => Promise<PgBossWorkerHttpServer>;
|
|
25
|
+
//# sourceMappingURL=pgBossWorker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pgBossWorker.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/pgBossWorker.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAA8B,MAAM,YAAY,CAAC;AACrG,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAqB,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AACvG,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAMhC,eAAO,MAAM,qBAAqB,KAAK,CAAC;AACxC,eAAO,MAAM,8BAA8B,KAAmC,CAAC;AAE/E,oBAAY,8BAA8B;IACxC,YAAY,yBAAyB;IACrC,MAAM,gCAAgC;CACvC;AAED,oBAAY,gBAAgB,GAAG,oBAAoB,GACjD,qBAAqB,CAAC,QAAQ,CAAC,GAC/B,qBAAqB,CAAC,WAAW,CAAC,GAClC,mBAAmB,CAAC;AAEtB,MAAM,WAAW,4BAA4B;IAC3C,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID,MAAM,WAAW,kBAAmB,SAAQ,mBAAmB;IAC7D,MAAM,EAAE,GAAG,CAAC;CACb;AAED,qBAAa,sBAAuB,SAAQ,UAAU;gBACxC,GAAG,EAAE,kBAAkB,EAAE,IAAI,EAAE,yBAAyB;CAUrE;AAED,eAAO,MAAM,gBAAgB,SAAgB,gBAAgB,SAAQ,4BAA4B,oCAchG,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loadPgBossWorker = exports.PgBossWorkerHttpServer = exports.PgBossWorkerOptionDescriptions = exports.PG_BOSS_WORKER_API_URL_DEFAULT = exports.PARALLEL_JOBS_DEFAULT = void 0;
|
|
4
|
+
const options_1 = require("../options");
|
|
5
|
+
const HttpServer_1 = require("../../Http/HttpServer");
|
|
6
|
+
const errors_1 = require("../errors");
|
|
7
|
+
const pgboss_1 = require("../services/pgboss");
|
|
8
|
+
const utils_1 = require("../utils");
|
|
9
|
+
const bunyan_1 = require("bunyan");
|
|
10
|
+
const postgres_1 = require("../services/postgres");
|
|
11
|
+
const util_1 = require("../../Http/util");
|
|
12
|
+
exports.PARALLEL_JOBS_DEFAULT = 10;
|
|
13
|
+
exports.PG_BOSS_WORKER_API_URL_DEFAULT = new URL('http://localhost:3003');
|
|
14
|
+
var PgBossWorkerOptionDescriptions;
|
|
15
|
+
(function (PgBossWorkerOptionDescriptions) {
|
|
16
|
+
PgBossWorkerOptionDescriptions["ParallelJobs"] = "Parallel jobs to run";
|
|
17
|
+
PgBossWorkerOptionDescriptions["Queues"] = "Comma separated queue names";
|
|
18
|
+
})(PgBossWorkerOptionDescriptions = exports.PgBossWorkerOptionDescriptions || (exports.PgBossWorkerOptionDescriptions = {}));
|
|
19
|
+
const pgBossWorker = 'pg-boss-worker';
|
|
20
|
+
class PgBossWorkerHttpServer extends HttpServer_1.HttpServer {
|
|
21
|
+
constructor(cfg, deps) {
|
|
22
|
+
const { apiUrl } = cfg;
|
|
23
|
+
const { logger } = deps;
|
|
24
|
+
const pgBossService = new pgboss_1.PgBossHttpService(cfg, deps);
|
|
25
|
+
super({ listen: (0, util_1.getListen)(apiUrl), name: pgBossWorker }, { logger, runnableDependencies: [], services: [pgBossService] });
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.PgBossWorkerHttpServer = PgBossWorkerHttpServer;
|
|
29
|
+
const loadPgBossWorker = async (args, deps = {}) => {
|
|
30
|
+
const logger = deps?.logger || (0, bunyan_1.createLogger)({ level: args.loggerMinSeverity, name: pgBossWorker });
|
|
31
|
+
const dnsResolver = deps?.dnsResolver ||
|
|
32
|
+
(0, utils_1.createDnsResolver)({ factor: args.serviceDiscoveryBackoffFactor, maxRetryTime: args.serviceDiscoveryTimeout }, logger);
|
|
33
|
+
const connectionConfig$ = (0, postgres_1.getConnectionConfig)(dnsResolver, pgBossWorker, args);
|
|
34
|
+
const db = await (0, postgres_1.getPool)(dnsResolver, logger, args);
|
|
35
|
+
if (!db)
|
|
36
|
+
throw new errors_1.MissingProgramOption(pgBossWorker, options_1.PostgresOptionDescriptions.ConnectionString);
|
|
37
|
+
return new PgBossWorkerHttpServer(args, { connectionConfig$, db, logger });
|
|
38
|
+
};
|
|
39
|
+
exports.loadPgBossWorker = loadPgBossWorker;
|
|
40
|
+
//# sourceMappingURL=pgBossWorker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pgBossWorker.js","sourceRoot":"","sources":["../../../../src/Program/programs/pgBossWorker.ts"],"names":[],"mappings":";;;AAAA,wCAAqG;AACrG,sDAAmD;AAEnD,sCAAiD;AACjD,+CAAuG;AAEvG,oCAA6C;AAC7C,mCAAsC;AACtC,mDAAoE;AACpE,0CAA4C;AAE/B,QAAA,qBAAqB,GAAG,EAAE,CAAC;AAC3B,QAAA,8BAA8B,GAAG,IAAI,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAE/E,IAAY,8BAGX;AAHD,WAAY,8BAA8B;IACxC,uEAAqC,CAAA;IACrC,wEAAsC,CAAA;AACxC,CAAC,EAHW,8BAA8B,GAA9B,sCAA8B,KAA9B,sCAA8B,QAGzC;AAYD,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAMtC,MAAa,sBAAuB,SAAQ,uBAAU;IACpD,YAAY,GAAuB,EAAE,IAA+B;QAClE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;QACvB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxB,MAAM,aAAa,GAAG,IAAI,0BAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAEvD,KAAK,CACH,EAAE,MAAM,EAAE,IAAA,gBAAS,EAAC,MAAM,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EACjD,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,aAAa,CAAC,EAAE,CAChE,CAAC;IACJ,CAAC;CACF;AAXD,wDAWC;AAEM,MAAM,gBAAgB,GAAG,KAAK,EAAE,IAAsB,EAAE,OAAqC,EAAE,EAAE,EAAE;IACxG,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,IAAA,qBAAY,EAAC,EAAE,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;IACnG,MAAM,WAAW,GACf,IAAI,EAAE,WAAW;QACjB,IAAA,yBAAiB,EACf,EAAE,MAAM,EAAE,IAAI,CAAC,6BAA6B,EAAE,YAAY,EAAE,IAAI,CAAC,uBAAuB,EAAE,EAC1F,MAAM,CACP,CAAC;IACJ,MAAM,iBAAiB,GAAG,IAAA,8BAAmB,EAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;IAC/E,MAAM,EAAE,GAAG,MAAM,IAAA,kBAAO,EAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAEpD,IAAI,CAAC,EAAE;QAAE,MAAM,IAAI,6BAAoB,CAAC,YAAY,EAAE,oCAA0B,CAAC,gBAAgB,CAAC,CAAC;IAEnG,OAAO,IAAI,sBAAsB,CAAC,IAAI,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AAC7E,CAAC,CAAC;AAdW,QAAA,gBAAgB,oBAc3B"}
|
|
@@ -7,7 +7,7 @@ import { ProjectionName } from '../../Projection';
|
|
|
7
7
|
import { SrvRecord } from 'dns';
|
|
8
8
|
import { URL } from 'url';
|
|
9
9
|
export declare const PROJECTOR_API_URL_DEFAULT: URL;
|
|
10
|
-
export declare type ProjectorArgs = CommonProgramOptions & PosgresProgramOptions & OgmiosProgramOptions & {
|
|
10
|
+
export declare type ProjectorArgs = CommonProgramOptions & PosgresProgramOptions<'StakePool'> & OgmiosProgramOptions & {
|
|
11
11
|
projectionNames: ProjectionName[];
|
|
12
12
|
dropSchema: boolean;
|
|
13
13
|
dryRun: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projector.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/projector.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAE/F,OAAO,EAAE,UAAU,EAAoB,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAyB,cAAc,EAA2B,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAEhC,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAK1B,eAAO,MAAM,yBAAyB,KAAmC,CAAC;AAE1E,oBAAY,aAAa,GAAG,oBAAoB,GAC9C,qBAAqB,
|
|
1
|
+
{"version":3,"file":"projector.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/projector.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAE/F,OAAO,EAAE,UAAU,EAAoB,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAyB,cAAc,EAA2B,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAEhC,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAK1B,eAAO,MAAM,yBAAyB,KAAmC,CAAC;AAE1E,oBAAY,aAAa,GAAG,oBAAoB,GAC9C,qBAAqB,CAAC,WAAW,CAAC,GAClC,oBAAoB,GAAG;IACrB,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AACJ,MAAM,WAAW,yBAAyB;IACxC,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAkCD,eAAO,MAAM,aAAa,SAAgB,aAAa,SAAQ,yBAAyB,KAAQ,QAAQ,UAAU,CAkCjH,CAAC"}
|
|
@@ -17,7 +17,7 @@ const createProjectionHttpService = async (options) => {
|
|
|
17
17
|
ogmiosSrvServiceName: args.ogmiosSrvServiceName,
|
|
18
18
|
ogmiosUrl: args.ogmiosUrl
|
|
19
19
|
});
|
|
20
|
-
const connectionConfig$ = (0, services_1.getConnectionConfig)(dnsResolver, args);
|
|
20
|
+
const connectionConfig$ = (0, services_1.getConnectionConfig)(dnsResolver, 'projector', args);
|
|
21
21
|
const buffer = new projection_typeorm_1.TypeormStabilityWindowBuffer({ logger });
|
|
22
22
|
const projection$ = (0, Projection_1.createTypeormProjection)({
|
|
23
23
|
buffer,
|