@webiny/data-migration 6.0.0-alpha.5 → 6.0.0-rc.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/MigrationRunner.d.ts +1 -1
- package/MigrationRunner.js +13 -20
- package/MigrationRunner.js.map +1 -1
- package/README.md +9 -4
- package/cli/CliMigrationRunReporter.d.ts +8 -5
- package/cli/CliMigrationRunReporter.js +15 -20
- package/cli/CliMigrationRunReporter.js.map +1 -1
- package/cli/InteractiveCliStatusReporter.d.ts +3 -3
- package/cli/InteractiveCliStatusReporter.js +4 -12
- package/cli/InteractiveCliStatusReporter.js.map +1 -1
- package/cli/LogReporter.d.ts +1 -1
- package/cli/LogReporter.js +3 -10
- package/cli/LogReporter.js.map +1 -1
- package/cli/LogStream.js +3 -10
- package/cli/LogStream.js.map +1 -1
- package/cli/MigrationRunReporter.d.ts +1 -1
- package/cli/MigrationRunReporter.js +1 -5
- package/cli/MigrationRunReporter.js.map +1 -1
- package/cli/MigrationRunner.d.ts +3 -3
- package/cli/MigrationRunner.js +9 -17
- package/cli/MigrationRunner.js.map +1 -1
- package/cli/MigrationStatusReporter.d.ts +1 -1
- package/cli/MigrationStatusReporter.js +1 -5
- package/cli/MigrationStatusReporter.js.map +1 -1
- package/cli/NonInteractiveCliStatusReporter.d.ts +3 -3
- package/cli/NonInteractiveCliStatusReporter.js +1 -8
- package/cli/NonInteractiveCliStatusReporter.js.map +1 -1
- package/cli/VoidStatusReporter.d.ts +1 -1
- package/cli/VoidStatusReporter.js +1 -8
- package/cli/VoidStatusReporter.js.map +1 -1
- package/cli/getDuration.js +1 -8
- package/cli/getDuration.js.map +1 -1
- package/cli/index.d.ts +10 -10
- package/cli/index.js +10 -115
- package/cli/index.js.map +1 -1
- package/createPinoLogger.d.ts +2 -2
- package/createPinoLogger.js +9 -18
- package/createPinoLogger.js.map +1 -1
- package/createTable.d.ts +2 -2
- package/createTable.js +3 -10
- package/createTable.js.map +1 -1
- package/handlers/createDdbEsProjectMigration.d.ts +3 -3
- package/handlers/createDdbEsProjectMigration.js +22 -29
- package/handlers/createDdbEsProjectMigration.js.map +1 -1
- package/handlers/createDdbProjectMigration.d.ts +3 -3
- package/handlers/createDdbProjectMigration.js +20 -27
- package/handlers/createDdbProjectMigration.js.map +1 -1
- package/handlers/createPatternMatcher.d.ts +1 -1
- package/handlers/createPatternMatcher.js +3 -11
- package/handlers/createPatternMatcher.js.map +1 -1
- package/handlers/devVersionErrorResponse.js +1 -8
- package/handlers/devVersionErrorResponse.js.map +1 -1
- package/index.d.ts +6 -6
- package/index.js +6 -60
- package/index.js.map +1 -1
- package/package.json +20 -24
- package/repository/migrations.repository.d.ts +2 -2
- package/repository/migrations.repository.js +38 -64
- package/repository/migrations.repository.js.map +1 -1
- package/symbols.js +7 -13
- package/symbols.js.map +1 -1
- package/types.js +1 -5
- package/repository/createStandardEntity.d.ts +0 -52
- package/repository/createStandardEntity.js +0 -39
- package/repository/createStandardEntity.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["createRawEventHandler","createContainer","ElasticsearchClientSymbol","ElasticsearchDynamoTableSymbol","ExecutionTimeLimiterSymbol","MigrationRepositorySymbol","MigrationSymbol","PrimaryDynamoTableSymbol","MigrationRunner","MigrationRepositoryImpl","devVersionErrorResponse","createPatternMatcher","coerce","semverCoerce","createDdbEsProjectMigration","migrations","elasticsearchClient","primaryTable","dynamoToEsTable","isMigrationApplicable","undefined","repository","config","payload","lambdaContext","projectVersion","String","version","process","env","WEBINY_VERSION","forceExecute","force","container","bind","toConstantValue","timeLimiter","getRemainingTimeInMillis","to","forEach","migration","patternMatcher","pattern","runner","resolve","setContext","logGroupName","AWS_LAMBDA_LOG_GROUP_NAME","logStreamName","AWS_LAMBDA_LOG_STREAM_NAME","command","execute","data","getStatus","err","error","message"],"sources":["createDdbEsProjectMigration.ts"],"sourcesContent":["import type { Client as ElasticsearchClient } from \"@elastic/elasticsearch\";\nimport type { Table } from \"@webiny/db-dynamodb/toolbox.js\";\nimport { createRawEventHandler } from \"@webiny/handler-aws\";\nimport type { Constructor } from \"@webiny/ioc\";\nimport { createContainer } from \"@webiny/ioc\";\nimport type {\n DataMigration,\n ExecutionTimeLimiter,\n MigrationEventHandlerResponse,\n MigrationEventPayload,\n MigrationRepository\n} from \"~/types.js\";\nimport {\n ElasticsearchClientSymbol,\n ElasticsearchDynamoTableSymbol,\n ExecutionTimeLimiterSymbol,\n MigrationRepositorySymbol,\n MigrationSymbol,\n PrimaryDynamoTableSymbol\n} from \"~/symbols.js\";\nimport type { IsMigrationApplicable } from \"~/MigrationRunner.js\";\nimport { MigrationRunner } from \"~/MigrationRunner.js\";\nimport { MigrationRepositoryImpl } from \"~/repository/migrations.repository.js\";\nimport { devVersionErrorResponse } from \"~/handlers/devVersionErrorResponse.js\";\nimport { createPatternMatcher } from \"~/handlers/createPatternMatcher.js\";\nimport { coerce as semverCoerce } from \"semver\";\n\ninterface CreateDdbEsDataMigrationConfig {\n elasticsearchClient: ElasticsearchClient;\n primaryTable: Table<string, string, string>;\n dynamoToEsTable: Table<string, string, string>;\n migrations: Constructor<DataMigration>[];\n isMigrationApplicable?: IsMigrationApplicable;\n repository?: MigrationRepository;\n timeLimiter?: ExecutionTimeLimiter;\n}\n\nexport const createDdbEsProjectMigration = ({\n migrations,\n elasticsearchClient,\n primaryTable,\n dynamoToEsTable,\n isMigrationApplicable = undefined,\n repository = undefined,\n ...config\n}: CreateDdbEsDataMigrationConfig) => {\n return createRawEventHandler<MigrationEventPayload, any, MigrationEventHandlerResponse>(\n async ({ payload, lambdaContext }) => {\n const projectVersion = String(payload?.version || process.env.WEBINY_VERSION);\n const forceExecute = payload.force === true;\n\n const version = semverCoerce(projectVersion);\n if (version?.version === \"0.0.0\") {\n return devVersionErrorResponse();\n }\n\n // COMPOSITION ROOT\n const container = createContainer();\n container.bind(PrimaryDynamoTableSymbol).toConstantValue(primaryTable);\n container.bind(ElasticsearchDynamoTableSymbol).toConstantValue(dynamoToEsTable);\n container.bind(ElasticsearchClientSymbol).toConstantValue(elasticsearchClient);\n\n const timeLimiter: ExecutionTimeLimiter =\n config.timeLimiter || lambdaContext?.getRemainingTimeInMillis || (() => 0);\n container.bind(ExecutionTimeLimiterSymbol).toConstantValue(timeLimiter);\n\n if (repository) {\n // Repository implementation provided by the user.\n container.bind(MigrationRepositorySymbol).toConstantValue(repository);\n } else {\n // Default repository implementation.\n container.bind(MigrationRepositorySymbol).to(MigrationRepositoryImpl);\n }\n\n // Bind the provided migrations.\n migrations.forEach(migration => container.bind(MigrationSymbol).to(migration));\n\n // If handler was invoked with a `pattern`, filter migrations that match the pattern only.\n let patternMatcher;\n if (payload.pattern) {\n patternMatcher = createPatternMatcher(payload.pattern);\n }\n\n // Inject dependencies and execute.\n try {\n const runner = await container.resolve(MigrationRunner);\n runner.setContext({\n logGroupName: process.env.AWS_LAMBDA_LOG_GROUP_NAME,\n logStreamName: process.env.AWS_LAMBDA_LOG_STREAM_NAME\n });\n\n if (payload.command === \"execute\") {\n await runner.execute(\n projectVersion,\n patternMatcher || isMigrationApplicable,\n forceExecute\n );\n return;\n }\n\n return { data: await runner.getStatus() };\n } catch (err) {\n return { error: { message: err.message } };\n }\n }\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Table } from "@webiny/db-dynamodb/toolbox";
|
|
1
|
+
import type { Table } from "@webiny/db-dynamodb/toolbox.js";
|
|
2
2
|
import type { Constructor } from "@webiny/ioc";
|
|
3
|
-
import type { IsMigrationApplicable } from "../MigrationRunner";
|
|
4
|
-
import type { DataMigration, ExecutionTimeLimiter, MigrationEventHandlerResponse, MigrationEventPayload, MigrationRepository } from "../types";
|
|
3
|
+
import type { IsMigrationApplicable } from "../MigrationRunner.js";
|
|
4
|
+
import type { DataMigration, ExecutionTimeLimiter, MigrationEventHandlerResponse, MigrationEventPayload, MigrationRepository } from "../types.js";
|
|
5
5
|
interface CreateDdbDataMigrationConfig {
|
|
6
6
|
migrations: Constructor<DataMigration>[];
|
|
7
7
|
primaryTable: Table<string, string, string>;
|
|
@@ -1,60 +1,54 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
var _symbols = require("../symbols");
|
|
11
|
-
var _migrations = require("../repository/migrations.repository");
|
|
12
|
-
var _devVersionErrorResponse = require("./devVersionErrorResponse");
|
|
13
|
-
var _createPatternMatcher = require("./createPatternMatcher");
|
|
14
|
-
var _semver = require("semver");
|
|
15
|
-
const createDdbProjectMigration = ({
|
|
1
|
+
import { createRawEventHandler } from "@webiny/handler-aws";
|
|
2
|
+
import { createContainer } from "@webiny/ioc";
|
|
3
|
+
import { MigrationRunner } from "../MigrationRunner.js";
|
|
4
|
+
import { ExecutionTimeLimiterSymbol, MigrationRepositorySymbol, MigrationSymbol, PrimaryDynamoTableSymbol } from "../symbols.js";
|
|
5
|
+
import { MigrationRepositoryImpl } from "../repository/migrations.repository.js";
|
|
6
|
+
import { devVersionErrorResponse } from "./devVersionErrorResponse.js";
|
|
7
|
+
import { createPatternMatcher } from "./createPatternMatcher.js";
|
|
8
|
+
import { coerce as semverCoerce } from "semver";
|
|
9
|
+
export const createDdbProjectMigration = ({
|
|
16
10
|
migrations,
|
|
17
11
|
primaryTable,
|
|
18
12
|
isMigrationApplicable = undefined,
|
|
19
13
|
repository = undefined,
|
|
20
14
|
...config
|
|
21
15
|
}) => {
|
|
22
|
-
return
|
|
16
|
+
return createRawEventHandler(async ({
|
|
23
17
|
payload,
|
|
24
18
|
lambdaContext
|
|
25
19
|
}) => {
|
|
26
20
|
const projectVersion = String(payload?.version || process.env.WEBINY_VERSION);
|
|
27
21
|
const forceExecute = payload.force === true;
|
|
28
|
-
const version = (
|
|
22
|
+
const version = semverCoerce(projectVersion);
|
|
29
23
|
if (version?.version === "0.0.0") {
|
|
30
|
-
return
|
|
24
|
+
return devVersionErrorResponse();
|
|
31
25
|
}
|
|
32
26
|
|
|
33
27
|
// COMPOSITION ROOT
|
|
34
|
-
const container =
|
|
35
|
-
container.bind(
|
|
28
|
+
const container = createContainer();
|
|
29
|
+
container.bind(PrimaryDynamoTableSymbol).toConstantValue(primaryTable);
|
|
36
30
|
const timeLimiter = config.timeLimiter || lambdaContext?.getRemainingTimeInMillis || (() => 0);
|
|
37
|
-
container.bind(
|
|
31
|
+
container.bind(ExecutionTimeLimiterSymbol).toConstantValue(timeLimiter);
|
|
38
32
|
if (repository) {
|
|
39
33
|
// Repository implementation provided by the user.
|
|
40
|
-
container.bind(
|
|
34
|
+
container.bind(MigrationRepositorySymbol).toConstantValue(repository);
|
|
41
35
|
} else {
|
|
42
36
|
// Default repository implementation.
|
|
43
|
-
container.bind(
|
|
37
|
+
container.bind(MigrationRepositorySymbol).to(MigrationRepositoryImpl);
|
|
44
38
|
}
|
|
45
39
|
|
|
46
40
|
// Bind the provided migrations.
|
|
47
|
-
migrations.forEach(migration => container.bind(
|
|
41
|
+
migrations.forEach(migration => container.bind(MigrationSymbol).to(migration));
|
|
48
42
|
|
|
49
43
|
// If handler was invoked with a `pattern`, filter migrations that match the pattern only.
|
|
50
44
|
let patternMatcher;
|
|
51
45
|
if (payload.pattern) {
|
|
52
|
-
patternMatcher =
|
|
46
|
+
patternMatcher = createPatternMatcher(payload.pattern);
|
|
53
47
|
}
|
|
54
48
|
|
|
55
49
|
// Inject dependencies and execute.
|
|
56
50
|
try {
|
|
57
|
-
const runner = await container.resolve(
|
|
51
|
+
const runner = await container.resolve(MigrationRunner);
|
|
58
52
|
runner.setContext({
|
|
59
53
|
logGroupName: process.env.AWS_LAMBDA_LOG_GROUP_NAME,
|
|
60
54
|
logStreamName: process.env.AWS_LAMBDA_LOG_STREAM_NAME
|
|
@@ -75,6 +69,5 @@ const createDdbProjectMigration = ({
|
|
|
75
69
|
}
|
|
76
70
|
});
|
|
77
71
|
};
|
|
78
|
-
exports.createDdbProjectMigration = createDdbProjectMigration;
|
|
79
72
|
|
|
80
73
|
//# sourceMappingURL=createDdbProjectMigration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["createRawEventHandler","createContainer","MigrationRunner","ExecutionTimeLimiterSymbol","MigrationRepositorySymbol","MigrationSymbol","PrimaryDynamoTableSymbol","MigrationRepositoryImpl","devVersionErrorResponse","createPatternMatcher","coerce","semverCoerce","createDdbProjectMigration","migrations","primaryTable","isMigrationApplicable","undefined","repository","config","payload","lambdaContext","projectVersion","String","version","process","env","WEBINY_VERSION","forceExecute","force","container","bind","toConstantValue","timeLimiter","getRemainingTimeInMillis","to","forEach","migration","patternMatcher","pattern","runner","resolve","setContext","logGroupName","AWS_LAMBDA_LOG_GROUP_NAME","logStreamName","AWS_LAMBDA_LOG_STREAM_NAME","command","execute","data","getStatus","err","error","message"],"sources":["createDdbProjectMigration.ts"],"sourcesContent":["import type { Table } from \"@webiny/db-dynamodb/toolbox.js\";\nimport { createRawEventHandler } from \"@webiny/handler-aws\";\nimport type { Constructor } from \"@webiny/ioc\";\nimport { createContainer } from \"@webiny/ioc\";\nimport type { IsMigrationApplicable } from \"~/MigrationRunner.js\";\nimport { MigrationRunner } from \"~/MigrationRunner.js\";\nimport {\n ExecutionTimeLimiterSymbol,\n MigrationRepositorySymbol,\n MigrationSymbol,\n PrimaryDynamoTableSymbol\n} from \"~/symbols.js\";\nimport { MigrationRepositoryImpl } from \"~/repository/migrations.repository.js\";\nimport { devVersionErrorResponse } from \"./devVersionErrorResponse.js\";\nimport { createPatternMatcher } from \"./createPatternMatcher.js\";\nimport type {\n DataMigration,\n ExecutionTimeLimiter,\n MigrationEventHandlerResponse,\n MigrationEventPayload,\n MigrationRepository\n} from \"~/types.js\";\nimport { coerce as semverCoerce } from \"semver\";\n\ninterface CreateDdbDataMigrationConfig {\n migrations: Constructor<DataMigration>[];\n primaryTable: Table<string, string, string>;\n repository?: MigrationRepository;\n isMigrationApplicable?: IsMigrationApplicable;\n timeLimiter?: ExecutionTimeLimiter;\n}\n\nexport const createDdbProjectMigration = ({\n migrations,\n primaryTable,\n isMigrationApplicable = undefined,\n repository = undefined,\n ...config\n}: CreateDdbDataMigrationConfig) => {\n return createRawEventHandler<MigrationEventPayload, any, MigrationEventHandlerResponse>(\n async ({ payload, lambdaContext }) => {\n const projectVersion = String(payload?.version || process.env.WEBINY_VERSION);\n const forceExecute = payload.force === true;\n\n const version = semverCoerce(projectVersion);\n if (version?.version === \"0.0.0\") {\n return devVersionErrorResponse();\n }\n\n // COMPOSITION ROOT\n const container = createContainer();\n container.bind(PrimaryDynamoTableSymbol).toConstantValue(primaryTable);\n\n const timeLimiter: ExecutionTimeLimiter =\n config.timeLimiter || lambdaContext?.getRemainingTimeInMillis || (() => 0);\n container.bind(ExecutionTimeLimiterSymbol).toConstantValue(timeLimiter);\n\n if (repository) {\n // Repository implementation provided by the user.\n container.bind(MigrationRepositorySymbol).toConstantValue(repository);\n } else {\n // Default repository implementation.\n container.bind(MigrationRepositorySymbol).to(MigrationRepositoryImpl);\n }\n\n // Bind the provided migrations.\n migrations.forEach(migration => container.bind(MigrationSymbol).to(migration));\n\n // If handler was invoked with a `pattern`, filter migrations that match the pattern only.\n let patternMatcher;\n if (payload.pattern) {\n patternMatcher = createPatternMatcher(payload.pattern);\n }\n\n // Inject dependencies and execute.\n try {\n const runner = await container.resolve(MigrationRunner);\n runner.setContext({\n logGroupName: process.env.AWS_LAMBDA_LOG_GROUP_NAME,\n logStreamName: process.env.AWS_LAMBDA_LOG_STREAM_NAME\n });\n\n if (payload.command === \"execute\") {\n await runner.execute(\n projectVersion,\n patternMatcher || isMigrationApplicable,\n forceExecute\n );\n return;\n }\n\n return {\n data: await runner.getStatus()\n };\n } catch (err) {\n return { error: { message: err.message } };\n }\n }\n );\n};\n"],"mappings":"AACA,SAASA,qBAAqB,QAAQ,qBAAqB;AAE3D,SAASC,eAAe,QAAQ,aAAa;AAE7C,SAASC,eAAe;AACxB,SACIC,0BAA0B,EAC1BC,yBAAyB,EACzBC,eAAe,EACfC,wBAAwB;AAE5B,SAASC,uBAAuB;AAChC,SAASC,uBAAuB;AAChC,SAASC,oBAAoB;AAQ7B,SAASC,MAAM,IAAIC,YAAY,QAAQ,QAAQ;AAU/C,OAAO,MAAMC,yBAAyB,GAAGA,CAAC;EACtCC,UAAU;EACVC,YAAY;EACZC,qBAAqB,GAAGC,SAAS;EACjCC,UAAU,GAAGD,SAAS;EACtB,GAAGE;AACuB,CAAC,KAAK;EAChC,OAAOlB,qBAAqB,CACxB,OAAO;IAAEmB,OAAO;IAAEC;EAAc,CAAC,KAAK;IAClC,MAAMC,cAAc,GAAGC,MAAM,CAACH,OAAO,EAAEI,OAAO,IAAIC,OAAO,CAACC,GAAG,CAACC,cAAc,CAAC;IAC7E,MAAMC,YAAY,GAAGR,OAAO,CAACS,KAAK,KAAK,IAAI;IAE3C,MAAML,OAAO,GAAGZ,YAAY,CAACU,cAAc,CAAC;IAC5C,IAAIE,OAAO,EAAEA,OAAO,KAAK,OAAO,EAAE;MAC9B,OAAOf,uBAAuB,CAAC,CAAC;IACpC;;IAEA;IACA,MAAMqB,SAAS,GAAG5B,eAAe,CAAC,CAAC;IACnC4B,SAAS,CAACC,IAAI,CAACxB,wBAAwB,CAAC,CAACyB,eAAe,CAACjB,YAAY,CAAC;IAEtE,MAAMkB,WAAiC,GACnCd,MAAM,CAACc,WAAW,IAAIZ,aAAa,EAAEa,wBAAwB,KAAK,MAAM,CAAC,CAAC;IAC9EJ,SAAS,CAACC,IAAI,CAAC3B,0BAA0B,CAAC,CAAC4B,eAAe,CAACC,WAAW,CAAC;IAEvE,IAAIf,UAAU,EAAE;MACZ;MACAY,SAAS,CAACC,IAAI,CAAC1B,yBAAyB,CAAC,CAAC2B,eAAe,CAACd,UAAU,CAAC;IACzE,CAAC,MAAM;MACH;MACAY,SAAS,CAACC,IAAI,CAAC1B,yBAAyB,CAAC,CAAC8B,EAAE,CAAC3B,uBAAuB,CAAC;IACzE;;IAEA;IACAM,UAAU,CAACsB,OAAO,CAACC,SAAS,IAAIP,SAAS,CAACC,IAAI,CAACzB,eAAe,CAAC,CAAC6B,EAAE,CAACE,SAAS,CAAC,CAAC;;IAE9E;IACA,IAAIC,cAAc;IAClB,IAAIlB,OAAO,CAACmB,OAAO,EAAE;MACjBD,cAAc,GAAG5B,oBAAoB,CAACU,OAAO,CAACmB,OAAO,CAAC;IAC1D;;IAEA;IACA,IAAI;MACA,MAAMC,MAAM,GAAG,MAAMV,SAAS,CAACW,OAAO,CAACtC,eAAe,CAAC;MACvDqC,MAAM,CAACE,UAAU,CAAC;QACdC,YAAY,EAAElB,OAAO,CAACC,GAAG,CAACkB,yBAAyB;QACnDC,aAAa,EAAEpB,OAAO,CAACC,GAAG,CAACoB;MAC/B,CAAC,CAAC;MAEF,IAAI1B,OAAO,CAAC2B,OAAO,KAAK,SAAS,EAAE;QAC/B,MAAMP,MAAM,CAACQ,OAAO,CAChB1B,cAAc,EACdgB,cAAc,IAAItB,qBAAqB,EACvCY,YACJ,CAAC;QACD;MACJ;MAEA,OAAO;QACHqB,IAAI,EAAE,MAAMT,MAAM,CAACU,SAAS,CAAC;MACjC,CAAC;IACL,CAAC,CAAC,OAAOC,GAAG,EAAE;MACV,OAAO;QAAEC,KAAK,EAAE;UAAEC,OAAO,EAAEF,GAAG,CAACE;QAAQ;MAAE,CAAC;IAC9C;EACJ,CACJ,CAAC;AACL,CAAC","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { IsMigrationApplicable } from "../MigrationRunner";
|
|
1
|
+
import type { IsMigrationApplicable } from "../MigrationRunner.js";
|
|
2
2
|
export declare const createPatternMatcher: (pattern: string) => IsMigrationApplicable;
|
|
@@ -1,19 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.createPatternMatcher = void 0;
|
|
8
|
-
var _minimatch = _interopRequireDefault(require("minimatch"));
|
|
9
|
-
const createPatternMatcher = pattern => {
|
|
1
|
+
import { minimatch } from "minimatch";
|
|
2
|
+
export const createPatternMatcher = pattern => {
|
|
10
3
|
return migration => {
|
|
11
4
|
if (pattern.includes("*")) {
|
|
12
|
-
return (
|
|
5
|
+
return minimatch(migration.getId(), pattern);
|
|
13
6
|
}
|
|
14
7
|
return migration.getId() === pattern;
|
|
15
8
|
};
|
|
16
9
|
};
|
|
17
|
-
exports.createPatternMatcher = createPatternMatcher;
|
|
18
10
|
|
|
19
11
|
//# sourceMappingURL=createPatternMatcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["minimatch","createPatternMatcher","pattern","migration","includes","getId"],"sources":["createPatternMatcher.ts"],"sourcesContent":["import { minimatch } from \"minimatch\";\nimport type { IsMigrationApplicable } from \"~/MigrationRunner.js\";\n\nexport const createPatternMatcher = (pattern: string): IsMigrationApplicable => {\n return migration => {\n if (pattern.includes(\"*\")) {\n return minimatch(migration.getId(), pattern);\n }\n return migration.getId() === pattern;\n };\n};\n"],"mappings":"AAAA,SAASA,SAAS,QAAQ,WAAW;AAGrC,OAAO,MAAMC,oBAAoB,GAAIC,OAAe,IAA4B;EAC5E,OAAOC,SAAS,IAAI;IAChB,IAAID,OAAO,CAACE,QAAQ,CAAC,GAAG,CAAC,EAAE;MACvB,OAAOJ,SAAS,CAACG,SAAS,CAACE,KAAK,CAAC,CAAC,EAAEH,OAAO,CAAC;IAChD;IACA,OAAOC,SAAS,CAACE,KAAK,CAAC,CAAC,KAAKH,OAAO;EACxC,CAAC;AACL,CAAC","ignoreList":[]}
|
|
@@ -1,16 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.devVersionErrorResponse = void 0;
|
|
7
|
-
const devVersionErrorResponse = () => {
|
|
1
|
+
export const devVersionErrorResponse = () => {
|
|
8
2
|
return {
|
|
9
3
|
error: {
|
|
10
4
|
message: [`This project is using a development version 0.0.0!`, `Migrations cannot be executed using version 0.0.0, as that makes them all eligible for execution.`, `To trigger a particular set of migrations, set a WEBINY_VERSION variable in the .env file.`].join(" ")
|
|
11
5
|
}
|
|
12
6
|
};
|
|
13
7
|
};
|
|
14
|
-
exports.devVersionErrorResponse = devVersionErrorResponse;
|
|
15
8
|
|
|
16
9
|
//# sourceMappingURL=devVersionErrorResponse.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["devVersionErrorResponse","error","message","join"
|
|
1
|
+
{"version":3,"names":["devVersionErrorResponse","error","message","join"],"sources":["devVersionErrorResponse.ts"],"sourcesContent":["export const devVersionErrorResponse = () => {\n return {\n error: {\n message: [\n `This project is using a development version 0.0.0!`,\n `Migrations cannot be executed using version 0.0.0, as that makes them all eligible for execution.`,\n `To trigger a particular set of migrations, set a WEBINY_VERSION variable in the .env file.`\n ].join(\" \")\n }\n };\n};\n"],"mappings":"AAAA,OAAO,MAAMA,uBAAuB,GAAGA,CAAA,KAAM;EACzC,OAAO;IACHC,KAAK,EAAE;MACHC,OAAO,EAAE,CACL,oDAAoD,EACpD,mGAAmG,EACnG,4FAA4F,CAC/F,CAACC,IAAI,CAAC,GAAG;IACd;EACJ,CAAC;AACL,CAAC","ignoreList":[]}
|
package/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export * from "./handlers/createDdbProjectMigration";
|
|
2
|
-
export * from "./handlers/createDdbEsProjectMigration";
|
|
3
|
-
export * from "./types";
|
|
4
|
-
export * from "./createTable";
|
|
5
|
-
export * from "./createPinoLogger";
|
|
6
|
-
export * from "./createPinoLogger";
|
|
1
|
+
export * from "./handlers/createDdbProjectMigration.js";
|
|
2
|
+
export * from "./handlers/createDdbEsProjectMigration.js";
|
|
3
|
+
export * from "./types.js";
|
|
4
|
+
export * from "./createTable.js";
|
|
5
|
+
export * from "./createPinoLogger.js";
|
|
6
|
+
export * from "./createPinoLogger.js";
|
package/index.js
CHANGED
|
@@ -1,62 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
Object.keys(_createDdbProjectMigration).forEach(function (key) {
|
|
8
|
-
if (key === "default" || key === "__esModule") return;
|
|
9
|
-
if (key in exports && exports[key] === _createDdbProjectMigration[key]) return;
|
|
10
|
-
Object.defineProperty(exports, key, {
|
|
11
|
-
enumerable: true,
|
|
12
|
-
get: function () {
|
|
13
|
-
return _createDdbProjectMigration[key];
|
|
14
|
-
}
|
|
15
|
-
});
|
|
16
|
-
});
|
|
17
|
-
var _createDdbEsProjectMigration = require("./handlers/createDdbEsProjectMigration");
|
|
18
|
-
Object.keys(_createDdbEsProjectMigration).forEach(function (key) {
|
|
19
|
-
if (key === "default" || key === "__esModule") return;
|
|
20
|
-
if (key in exports && exports[key] === _createDdbEsProjectMigration[key]) return;
|
|
21
|
-
Object.defineProperty(exports, key, {
|
|
22
|
-
enumerable: true,
|
|
23
|
-
get: function () {
|
|
24
|
-
return _createDdbEsProjectMigration[key];
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
});
|
|
28
|
-
var _types = require("./types");
|
|
29
|
-
Object.keys(_types).forEach(function (key) {
|
|
30
|
-
if (key === "default" || key === "__esModule") return;
|
|
31
|
-
if (key in exports && exports[key] === _types[key]) return;
|
|
32
|
-
Object.defineProperty(exports, key, {
|
|
33
|
-
enumerable: true,
|
|
34
|
-
get: function () {
|
|
35
|
-
return _types[key];
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
});
|
|
39
|
-
var _createTable = require("./createTable");
|
|
40
|
-
Object.keys(_createTable).forEach(function (key) {
|
|
41
|
-
if (key === "default" || key === "__esModule") return;
|
|
42
|
-
if (key in exports && exports[key] === _createTable[key]) return;
|
|
43
|
-
Object.defineProperty(exports, key, {
|
|
44
|
-
enumerable: true,
|
|
45
|
-
get: function () {
|
|
46
|
-
return _createTable[key];
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
var _createPinoLogger = require("./createPinoLogger");
|
|
51
|
-
Object.keys(_createPinoLogger).forEach(function (key) {
|
|
52
|
-
if (key === "default" || key === "__esModule") return;
|
|
53
|
-
if (key in exports && exports[key] === _createPinoLogger[key]) return;
|
|
54
|
-
Object.defineProperty(exports, key, {
|
|
55
|
-
enumerable: true,
|
|
56
|
-
get: function () {
|
|
57
|
-
return _createPinoLogger[key];
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
});
|
|
1
|
+
export * from "./handlers/createDdbProjectMigration.js";
|
|
2
|
+
export * from "./handlers/createDdbEsProjectMigration.js";
|
|
3
|
+
export * from "./types.js";
|
|
4
|
+
export * from "./createTable.js";
|
|
5
|
+
export * from "./createPinoLogger.js";
|
|
6
|
+
export * from "./createPinoLogger.js";
|
|
61
7
|
|
|
62
8
|
//# sourceMappingURL=index.js.map
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./handlers/createDdbProjectMigration.js\";\nexport * from \"./handlers/createDdbEsProjectMigration.js\";\nexport * from \"./types.js\";\nexport * from \"./createTable.js\";\nexport * from \"./createPinoLogger.js\";\nexport * from \"./createPinoLogger.js\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/data-migration",
|
|
3
|
-
"version": "6.0.0-
|
|
3
|
+
"version": "6.0.0-rc.0",
|
|
4
4
|
"main": "index.js",
|
|
5
|
-
"
|
|
5
|
+
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": {
|
|
8
8
|
"type": "git",
|
|
@@ -12,36 +12,32 @@
|
|
|
12
12
|
"author": "Webiny Ltd.",
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"@elastic/elasticsearch": "7.12.0",
|
|
15
|
-
"@webiny/aws-sdk": "6.0.0-
|
|
16
|
-
"@webiny/
|
|
17
|
-
"@webiny/
|
|
18
|
-
"@webiny/
|
|
19
|
-
"@webiny/
|
|
20
|
-
"@webiny/
|
|
21
|
-
"@webiny/utils": "6.0.0-
|
|
15
|
+
"@webiny/aws-sdk": "6.0.0-rc.0",
|
|
16
|
+
"@webiny/db-dynamodb": "6.0.0-rc.0",
|
|
17
|
+
"@webiny/handler-aws": "6.0.0-rc.0",
|
|
18
|
+
"@webiny/ioc": "6.0.0-rc.0",
|
|
19
|
+
"@webiny/logger": "6.0.0-rc.0",
|
|
20
|
+
"@webiny/project": "6.0.0-rc.0",
|
|
21
|
+
"@webiny/utils": "6.0.0-rc.0",
|
|
22
22
|
"center-align": "1.0.1",
|
|
23
23
|
"chalk": "4.1.2",
|
|
24
|
-
"minimatch": "
|
|
25
|
-
"pino-pretty": "9.4.
|
|
26
|
-
"semver": "7.
|
|
24
|
+
"minimatch": "10.2.2",
|
|
25
|
+
"pino-pretty": "9.4.1",
|
|
26
|
+
"semver": "7.7.4"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@types/center-align": "1.0.
|
|
30
|
-
"@types/semver": "7.
|
|
31
|
-
"@webiny/
|
|
32
|
-
"
|
|
29
|
+
"@types/center-align": "1.0.2",
|
|
30
|
+
"@types/semver": "7.7.1",
|
|
31
|
+
"@webiny/build-tools": "6.0.0-rc.0",
|
|
32
|
+
"@webiny/project-utils": "6.0.0-rc.0",
|
|
33
33
|
"jest-dynalite": "3.6.1",
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"
|
|
34
|
+
"rimraf": "6.1.3",
|
|
35
|
+
"typescript": "5.9.3",
|
|
36
|
+
"vitest": "4.0.18"
|
|
37
37
|
},
|
|
38
38
|
"publishConfig": {
|
|
39
39
|
"access": "public",
|
|
40
40
|
"directory": "dist"
|
|
41
41
|
},
|
|
42
|
-
"
|
|
43
|
-
"build": "node ../cli/bin.js run build",
|
|
44
|
-
"watch": "node ../cli/bin.js run watch"
|
|
45
|
-
},
|
|
46
|
-
"gitHead": "b7e120541b093e91f214904a9f13e4c2c4640978"
|
|
42
|
+
"gitHead": "0f2aa699f4642e550ab62c96fcd050e8d02345c9"
|
|
47
43
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Table } from "@webiny/db-dynamodb/toolbox";
|
|
2
|
-
import type { MigrationItem, MigrationRepository, MigrationRun } from "../types";
|
|
1
|
+
import type { Table } from "@webiny/db-dynamodb/toolbox.js";
|
|
2
|
+
import type { MigrationItem, MigrationRepository, MigrationRun } from "../types.js";
|
|
3
3
|
export declare class MigrationRepositoryImpl implements MigrationRepository {
|
|
4
4
|
private readonly run;
|
|
5
5
|
private readonly migration;
|
|
@@ -1,32 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
});
|
|
6
|
-
exports.MigrationRepositoryImpl = void 0;
|
|
7
|
-
var _query = require("@webiny/db-dynamodb/utils/query");
|
|
8
|
-
var _ioc = require("@webiny/ioc");
|
|
9
|
-
var _symbols = require("../symbols");
|
|
10
|
-
var _createStandardEntity = require("./createStandardEntity");
|
|
11
|
-
var _dbDynamodb = require("@webiny/db-dynamodb");
|
|
12
|
-
class MigrationRepositoryImpl {
|
|
1
|
+
import { inject, makeInjectable } from "@webiny/ioc";
|
|
2
|
+
import { PrimaryDynamoTableSymbol } from "../symbols.js";
|
|
3
|
+
import { createGlobalEntity } from "@webiny/db-dynamodb";
|
|
4
|
+
export class MigrationRepositoryImpl {
|
|
13
5
|
constructor(table) {
|
|
14
|
-
this.run = (
|
|
6
|
+
this.run = createGlobalEntity({
|
|
15
7
|
table,
|
|
16
8
|
name: "MigrationRun"
|
|
17
9
|
});
|
|
18
|
-
this.migration = (
|
|
10
|
+
this.migration = createGlobalEntity({
|
|
19
11
|
table,
|
|
20
12
|
name: "Migration"
|
|
21
13
|
});
|
|
22
|
-
this.checkpoint = (
|
|
14
|
+
this.checkpoint = createGlobalEntity({
|
|
23
15
|
table,
|
|
24
16
|
name: "MigrationCheckpoint"
|
|
25
17
|
});
|
|
26
18
|
}
|
|
27
19
|
async getLastRun() {
|
|
28
|
-
const result = await
|
|
29
|
-
entity: this.run,
|
|
20
|
+
const result = await this.run.queryOne({
|
|
30
21
|
partitionKey: "MIGRATION_RUNS",
|
|
31
22
|
options: {
|
|
32
23
|
index: "GSI1",
|
|
@@ -34,27 +25,23 @@ class MigrationRepositoryImpl {
|
|
|
34
25
|
reverse: true
|
|
35
26
|
}
|
|
36
27
|
});
|
|
37
|
-
return result
|
|
28
|
+
return result?.data || null;
|
|
38
29
|
}
|
|
39
30
|
async saveRun(run) {
|
|
40
|
-
await
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
GSI1_SK: run.id,
|
|
48
|
-
data: run
|
|
49
|
-
}
|
|
31
|
+
await this.run.put({
|
|
32
|
+
PK: `MIGRATION_RUN#${run.id}`,
|
|
33
|
+
SK: "A",
|
|
34
|
+
TYPE: "migration.run",
|
|
35
|
+
GSI1_PK: "MIGRATION_RUNS",
|
|
36
|
+
GSI1_SK: run.id,
|
|
37
|
+
data: run
|
|
50
38
|
});
|
|
51
39
|
}
|
|
52
40
|
async listMigrations(params) {
|
|
53
41
|
const {
|
|
54
42
|
limit
|
|
55
43
|
} = params || {};
|
|
56
|
-
const result = await
|
|
57
|
-
entity: this.migration,
|
|
44
|
+
const result = await this.migration.queryAll({
|
|
58
45
|
partitionKey: "MIGRATIONS",
|
|
59
46
|
options: {
|
|
60
47
|
index: "GSI1",
|
|
@@ -67,47 +54,35 @@ class MigrationRepositoryImpl {
|
|
|
67
54
|
return result.map(item => item.data);
|
|
68
55
|
}
|
|
69
56
|
async logMigration(migration) {
|
|
70
|
-
await
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
GSI1_SK: migration.id,
|
|
78
|
-
data: migration
|
|
79
|
-
}
|
|
57
|
+
await this.migration.put({
|
|
58
|
+
PK: `MIGRATION#${migration.id}`,
|
|
59
|
+
SK: "A",
|
|
60
|
+
TYPE: "migration",
|
|
61
|
+
GSI1_PK: "MIGRATIONS",
|
|
62
|
+
GSI1_SK: migration.id,
|
|
63
|
+
data: migration
|
|
80
64
|
});
|
|
81
65
|
}
|
|
82
66
|
async createCheckpoint(id, data) {
|
|
83
|
-
await
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
GSI1_SK: id,
|
|
91
|
-
data
|
|
92
|
-
}
|
|
67
|
+
await this.checkpoint.put({
|
|
68
|
+
PK: `MIGRATION_CHECKPOINT#${id}`,
|
|
69
|
+
SK: "A",
|
|
70
|
+
TYPE: "migration.checkpoint",
|
|
71
|
+
GSI1_PK: "MIGRATION_CHECKPOINTS",
|
|
72
|
+
GSI1_SK: id,
|
|
73
|
+
data: data
|
|
93
74
|
});
|
|
94
75
|
}
|
|
95
76
|
async deleteCheckpoint(id) {
|
|
96
|
-
await
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
PK: `MIGRATION_CHECKPOINT#${id}`,
|
|
100
|
-
SK: "A"
|
|
101
|
-
}
|
|
77
|
+
await this.checkpoint.delete({
|
|
78
|
+
PK: `MIGRATION_CHECKPOINT#${id}`,
|
|
79
|
+
SK: "A"
|
|
102
80
|
});
|
|
103
81
|
}
|
|
104
82
|
async getCheckpoint(id) {
|
|
105
|
-
const record = await
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
PK: `MIGRATION_CHECKPOINT#${id}`,
|
|
109
|
-
SK: "A"
|
|
110
|
-
}
|
|
83
|
+
const record = await this.checkpoint.get({
|
|
84
|
+
PK: `MIGRATION_CHECKPOINT#${id}`,
|
|
85
|
+
SK: "A"
|
|
111
86
|
});
|
|
112
87
|
if (!record) {
|
|
113
88
|
return null;
|
|
@@ -115,7 +90,6 @@ class MigrationRepositoryImpl {
|
|
|
115
90
|
return record.data;
|
|
116
91
|
}
|
|
117
92
|
}
|
|
118
|
-
|
|
119
|
-
(0, _ioc.makeInjectable)(MigrationRepositoryImpl, [(0, _ioc.inject)(_symbols.PrimaryDynamoTableSymbol)]);
|
|
93
|
+
makeInjectable(MigrationRepositoryImpl, [inject(PrimaryDynamoTableSymbol)]);
|
|
120
94
|
|
|
121
95
|
//# sourceMappingURL=migrations.repository.js.map
|