@contember/cli 2.1.0-alpha.14 → 2.1.0-alpha.16
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/development/src/commands/actions/ActionsGetEventCommand.cjs +31 -0
- package/dist/development/src/commands/actions/ActionsGetEventCommand.cjs.map +1 -0
- package/dist/development/src/commands/actions/ActionsGetEventCommand.js +31 -0
- package/dist/development/src/commands/actions/ActionsGetEventCommand.js.map +1 -0
- package/dist/development/src/commands/actions/ActionsListFailedEventsCommand.cjs +60 -0
- package/dist/development/src/commands/actions/ActionsListFailedEventsCommand.cjs.map +1 -0
- package/dist/development/src/commands/actions/ActionsListFailedEventsCommand.js +60 -0
- package/dist/development/src/commands/actions/ActionsListFailedEventsCommand.js.map +1 -0
- package/dist/development/src/commands/actions/ActionsListVariablesCommand.cjs +29 -0
- package/dist/development/src/commands/actions/ActionsListVariablesCommand.cjs.map +1 -0
- package/dist/development/src/commands/actions/ActionsListVariablesCommand.js +29 -0
- package/dist/development/src/commands/actions/ActionsListVariablesCommand.js.map +1 -0
- package/dist/development/src/commands/actions/ActionsRetryEventCommand.cjs +32 -0
- package/dist/development/src/commands/actions/ActionsRetryEventCommand.cjs.map +1 -0
- package/dist/development/src/commands/actions/ActionsRetryEventCommand.js +32 -0
- package/dist/development/src/commands/actions/ActionsRetryEventCommand.js.map +1 -0
- package/dist/development/src/commands/actions/ActionsSetVariablesCommand.cjs +40 -0
- package/dist/development/src/commands/actions/ActionsSetVariablesCommand.cjs.map +1 -0
- package/dist/development/src/commands/actions/ActionsSetVariablesCommand.js +40 -0
- package/dist/development/src/commands/actions/ActionsSetVariablesCommand.js.map +1 -0
- package/dist/development/src/commands/actions/ActionsStopEventCommand.cjs +32 -0
- package/dist/development/src/commands/actions/ActionsStopEventCommand.cjs.map +1 -0
- package/dist/development/src/commands/actions/ActionsStopEventCommand.js +32 -0
- package/dist/development/src/commands/actions/ActionsStopEventCommand.js.map +1 -0
- package/dist/development/src/commands/migrations/MigrationStatusCommand.cjs +1 -1
- package/dist/development/src/commands/migrations/MigrationStatusCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationStatusCommand.js +1 -1
- package/dist/development/src/commands/migrations/MigrationStatusCommand.js.map +1 -1
- package/dist/development/src/commands/transfer/ExportCommand.cjs +7 -2
- package/dist/development/src/commands/transfer/ExportCommand.cjs.map +1 -1
- package/dist/development/src/commands/transfer/ExportCommand.js +8 -3
- package/dist/development/src/commands/transfer/ExportCommand.js.map +1 -1
- package/dist/development/src/commands/transfer/ImportCommand.cjs +7 -4
- package/dist/development/src/commands/transfer/ImportCommand.cjs.map +1 -1
- package/dist/development/src/commands/transfer/ImportCommand.js +5 -2
- package/dist/development/src/commands/transfer/ImportCommand.js.map +1 -1
- package/dist/development/src/commands/transfer/TransferCommand.cjs +4 -5
- package/dist/development/src/commands/transfer/TransferCommand.cjs.map +1 -1
- package/dist/development/src/commands/transfer/TransferCommand.js +4 -5
- package/dist/development/src/commands/transfer/TransferCommand.js.map +1 -1
- package/dist/development/src/dic.cjs +14 -2
- package/dist/development/src/dic.cjs.map +1 -1
- package/dist/development/src/dic.js +14 -2
- package/dist/development/src/dic.js.map +1 -1
- package/dist/development/src/lib/VersionChecker.cjs +7 -9
- package/dist/development/src/lib/VersionChecker.cjs.map +1 -1
- package/dist/development/src/lib/VersionChecker.js +7 -9
- package/dist/development/src/lib/VersionChecker.js.map +1 -1
- package/dist/development/src/lib/actions/ActionsClient.cjs +91 -0
- package/dist/development/src/lib/actions/ActionsClient.cjs.map +1 -0
- package/dist/development/src/lib/actions/ActionsClient.js +91 -0
- package/dist/development/src/lib/actions/ActionsClient.js.map +1 -0
- package/dist/development/src/lib/migrations/MigrationPrinter.cjs +7 -2
- package/dist/development/src/lib/migrations/MigrationPrinter.cjs.map +1 -1
- package/dist/development/src/lib/migrations/MigrationPrinter.js +7 -2
- package/dist/development/src/lib/migrations/MigrationPrinter.js.map +1 -1
- package/dist/development/src/lib/migrations/MigrationsStatusFacade.cjs +3 -3
- package/dist/development/src/lib/migrations/MigrationsStatusFacade.cjs.map +1 -1
- package/dist/development/src/lib/migrations/MigrationsStatusFacade.js +3 -3
- package/dist/development/src/lib/migrations/MigrationsStatusFacade.js.map +1 -1
- package/dist/development/src/lib/stream.cjs +0 -7
- package/dist/development/src/lib/stream.cjs.map +1 -1
- package/dist/development/src/lib/stream.js +1 -8
- package/dist/development/src/lib/stream.js.map +1 -1
- package/dist/development/src/lib/transfer/DataTransferClient.cjs +23 -34
- package/dist/development/src/lib/transfer/DataTransferClient.cjs.map +1 -1
- package/dist/development/src/lib/transfer/DataTransferClient.js +25 -36
- package/dist/development/src/lib/transfer/DataTransferClient.js.map +1 -1
- package/dist/production/src/commands/actions/ActionsGetEventCommand.cjs +31 -0
- package/dist/production/src/commands/actions/ActionsGetEventCommand.cjs.map +1 -0
- package/dist/production/src/commands/actions/ActionsGetEventCommand.js +31 -0
- package/dist/production/src/commands/actions/ActionsGetEventCommand.js.map +1 -0
- package/dist/production/src/commands/actions/ActionsListFailedEventsCommand.cjs +60 -0
- package/dist/production/src/commands/actions/ActionsListFailedEventsCommand.cjs.map +1 -0
- package/dist/production/src/commands/actions/ActionsListFailedEventsCommand.js +60 -0
- package/dist/production/src/commands/actions/ActionsListFailedEventsCommand.js.map +1 -0
- package/dist/production/src/commands/actions/ActionsListVariablesCommand.cjs +29 -0
- package/dist/production/src/commands/actions/ActionsListVariablesCommand.cjs.map +1 -0
- package/dist/production/src/commands/actions/ActionsListVariablesCommand.js +29 -0
- package/dist/production/src/commands/actions/ActionsListVariablesCommand.js.map +1 -0
- package/dist/production/src/commands/actions/ActionsRetryEventCommand.cjs +32 -0
- package/dist/production/src/commands/actions/ActionsRetryEventCommand.cjs.map +1 -0
- package/dist/production/src/commands/actions/ActionsRetryEventCommand.js +32 -0
- package/dist/production/src/commands/actions/ActionsRetryEventCommand.js.map +1 -0
- package/dist/production/src/commands/actions/ActionsSetVariablesCommand.cjs +40 -0
- package/dist/production/src/commands/actions/ActionsSetVariablesCommand.cjs.map +1 -0
- package/dist/production/src/commands/actions/ActionsSetVariablesCommand.js +40 -0
- package/dist/production/src/commands/actions/ActionsSetVariablesCommand.js.map +1 -0
- package/dist/production/src/commands/actions/ActionsStopEventCommand.cjs +32 -0
- package/dist/production/src/commands/actions/ActionsStopEventCommand.cjs.map +1 -0
- package/dist/production/src/commands/actions/ActionsStopEventCommand.js +32 -0
- package/dist/production/src/commands/actions/ActionsStopEventCommand.js.map +1 -0
- package/dist/production/src/commands/migrations/MigrationStatusCommand.cjs +1 -1
- package/dist/production/src/commands/migrations/MigrationStatusCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationStatusCommand.js +1 -1
- package/dist/production/src/commands/migrations/MigrationStatusCommand.js.map +1 -1
- package/dist/production/src/commands/transfer/ExportCommand.cjs +7 -2
- package/dist/production/src/commands/transfer/ExportCommand.cjs.map +1 -1
- package/dist/production/src/commands/transfer/ExportCommand.js +8 -3
- package/dist/production/src/commands/transfer/ExportCommand.js.map +1 -1
- package/dist/production/src/commands/transfer/ImportCommand.cjs +7 -4
- package/dist/production/src/commands/transfer/ImportCommand.cjs.map +1 -1
- package/dist/production/src/commands/transfer/ImportCommand.js +5 -2
- package/dist/production/src/commands/transfer/ImportCommand.js.map +1 -1
- package/dist/production/src/commands/transfer/TransferCommand.cjs +4 -5
- package/dist/production/src/commands/transfer/TransferCommand.cjs.map +1 -1
- package/dist/production/src/commands/transfer/TransferCommand.js +4 -5
- package/dist/production/src/commands/transfer/TransferCommand.js.map +1 -1
- package/dist/production/src/dic.cjs +14 -2
- package/dist/production/src/dic.cjs.map +1 -1
- package/dist/production/src/dic.js +14 -2
- package/dist/production/src/dic.js.map +1 -1
- package/dist/production/src/lib/VersionChecker.cjs +7 -9
- package/dist/production/src/lib/VersionChecker.cjs.map +1 -1
- package/dist/production/src/lib/VersionChecker.js +7 -9
- package/dist/production/src/lib/VersionChecker.js.map +1 -1
- package/dist/production/src/lib/actions/ActionsClient.cjs +91 -0
- package/dist/production/src/lib/actions/ActionsClient.cjs.map +1 -0
- package/dist/production/src/lib/actions/ActionsClient.js +91 -0
- package/dist/production/src/lib/actions/ActionsClient.js.map +1 -0
- package/dist/production/src/lib/migrations/MigrationPrinter.cjs +7 -2
- package/dist/production/src/lib/migrations/MigrationPrinter.cjs.map +1 -1
- package/dist/production/src/lib/migrations/MigrationPrinter.js +7 -2
- package/dist/production/src/lib/migrations/MigrationPrinter.js.map +1 -1
- package/dist/production/src/lib/migrations/MigrationsStatusFacade.cjs +3 -3
- package/dist/production/src/lib/migrations/MigrationsStatusFacade.cjs.map +1 -1
- package/dist/production/src/lib/migrations/MigrationsStatusFacade.js +3 -3
- package/dist/production/src/lib/migrations/MigrationsStatusFacade.js.map +1 -1
- package/dist/production/src/lib/stream.cjs +0 -7
- package/dist/production/src/lib/stream.cjs.map +1 -1
- package/dist/production/src/lib/stream.js +1 -8
- package/dist/production/src/lib/stream.js.map +1 -1
- package/dist/production/src/lib/transfer/DataTransferClient.cjs +23 -34
- package/dist/production/src/lib/transfer/DataTransferClient.cjs.map +1 -1
- package/dist/production/src/lib/transfer/DataTransferClient.js +25 -36
- package/dist/production/src/lib/transfer/DataTransferClient.js.map +1 -1
- package/dist/types/commands/actions/ActionsGetEventCommand.d.ts +16 -0
- package/dist/types/commands/actions/ActionsGetEventCommand.d.ts.map +1 -0
- package/dist/types/commands/actions/ActionsListFailedEventsCommand.d.ts +15 -0
- package/dist/types/commands/actions/ActionsListFailedEventsCommand.d.ts.map +1 -0
- package/dist/types/commands/actions/ActionsListVariablesCommand.d.ts +14 -0
- package/dist/types/commands/actions/ActionsListVariablesCommand.d.ts.map +1 -0
- package/dist/types/commands/actions/ActionsRetryEventCommand.d.ts +16 -0
- package/dist/types/commands/actions/ActionsRetryEventCommand.d.ts.map +1 -0
- package/dist/types/commands/actions/ActionsSetVariablesCommand.d.ts +19 -0
- package/dist/types/commands/actions/ActionsSetVariablesCommand.d.ts.map +1 -0
- package/dist/types/commands/actions/ActionsStopEventCommand.d.ts +16 -0
- package/dist/types/commands/actions/ActionsStopEventCommand.d.ts.map +1 -0
- package/dist/types/commands/transfer/ExportCommand.d.ts.map +1 -1
- package/dist/types/commands/transfer/ImportCommand.d.ts.map +1 -1
- package/dist/types/commands/transfer/TransferCommand.d.ts.map +1 -1
- package/dist/types/dic.d.ts +18 -0
- package/dist/types/dic.d.ts.map +1 -1
- package/dist/types/lib/VersionChecker.d.ts.map +1 -1
- package/dist/types/lib/actions/ActionsClient.d.ts +33 -0
- package/dist/types/lib/actions/ActionsClient.d.ts.map +1 -0
- package/dist/types/lib/migrations/MigrationPrinter.d.ts +1 -1
- package/dist/types/lib/migrations/MigrationPrinter.d.ts.map +1 -1
- package/dist/types/lib/migrations/MigrationsStatusFacade.d.ts +3 -1
- package/dist/types/lib/migrations/MigrationsStatusFacade.d.ts.map +1 -1
- package/dist/types/lib/transfer/DataTransferClient.d.ts +2 -4
- package/dist/types/lib/transfer/DataTransferClient.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +13 -13
- package/src/commands/actions/ActionsGetEventCommand.ts +42 -0
- package/src/commands/actions/ActionsListFailedEventsCommand.ts +70 -0
- package/src/commands/actions/ActionsListVariablesCommand.ts +37 -0
- package/src/commands/actions/ActionsRetryEventCommand.ts +42 -0
- package/src/commands/actions/ActionsSetVariablesCommand.ts +56 -0
- package/src/commands/actions/ActionsStopEventCommand.ts +42 -0
- package/src/commands/migrations/MigrationStatusCommand.ts +1 -1
- package/src/commands/transfer/ExportCommand.ts +9 -4
- package/src/commands/transfer/ImportCommand.ts +6 -1
- package/src/commands/transfer/TransferCommand.ts +4 -3
- package/src/dic.ts +27 -2
- package/src/lib/VersionChecker.ts +13 -9
- package/src/lib/actions/ActionsClient.ts +112 -0
- package/src/lib/migrations/MigrationPrinter.ts +7 -2
- package/src/lib/migrations/MigrationsStatusFacade.ts +4 -3
- package/src/lib/transfer/DataTransferClient.ts +24 -43
- package/dist/development/src/lib/migrations/migrations.cjs +0 -43
- package/dist/development/src/lib/migrations/migrations.cjs.map +0 -1
- package/dist/development/src/lib/migrations/migrations.js +0 -43
- package/dist/development/src/lib/migrations/migrations.js.map +0 -1
- package/dist/production/src/lib/migrations/migrations.cjs +0 -43
- package/dist/production/src/lib/migrations/migrations.cjs.map +0 -1
- package/dist/production/src/lib/migrations/migrations.js +0 -43
- package/dist/production/src/lib/migrations/migrations.js.map +0 -1
- package/dist/types/lib/migrations/migrations.d.ts +0 -3
- package/dist/types/lib/migrations/migrations.d.ts.map +0 -1
- package/src/lib/migrations/migrations.ts +0 -45
|
@@ -38,6 +38,12 @@ import { DockerComposeManager } from "./lib/fs/DockerComposeManager.js";
|
|
|
38
38
|
import { RemoteProjectProvider } from "./lib/project/RemoteProjectProvider.js";
|
|
39
39
|
import { SystemClientProvider } from "./lib/SystemClientProvider.js";
|
|
40
40
|
import { TenantClientProvider } from "./lib/TenantClientProvider.js";
|
|
41
|
+
import { ActionsListVariablesCommand } from "./commands/actions/ActionsListVariablesCommand.js";
|
|
42
|
+
import { ActionsSetVariablesCommand } from "./commands/actions/ActionsSetVariablesCommand.js";
|
|
43
|
+
import { ActionsListFailedEventsCommand } from "./commands/actions/ActionsListFailedEventsCommand.js";
|
|
44
|
+
import { ActionsRetryEventCommand } from "./commands/actions/ActionsRetryEventCommand.js";
|
|
45
|
+
import { ActionsGetEventCommand } from "./commands/actions/ActionsGetEventCommand.js";
|
|
46
|
+
import { ActionsStopEventCommand } from "./commands/actions/ActionsStopEventCommand.js";
|
|
41
47
|
const jsSample = `
|
|
42
48
|
export const query = \`\`
|
|
43
49
|
export const variables = {}
|
|
@@ -78,7 +84,7 @@ const createContainer = ({ env, version, runtime, workspace }) => {
|
|
|
78
84
|
json: JSON.stringify({ formatVersion: VERSION_LATEST, modifications: [] }, void 0, " ") + "\n",
|
|
79
85
|
ts: jsSample,
|
|
80
86
|
js: jsSample
|
|
81
|
-
})).addService("migrationDescriber", ({ modificationHandlerFactory }) => new MigrationDescriber(modificationHandlerFactory)).addService("migrationPrinter", ({ migrationDescriber }) => new MigrationPrinter(migrationDescriber)).addService("migrationsExecutor", () => new MigrationExecutor()).addService("migrationsStatusResolver", () => new MigrationsStatusResolver()).addService("migrationsStatusFacade", ({ systemClientProvider, migrationsResolver, migrationsStatusResolver }) => new MigrationsStatusFacade(systemClientProvider, migrationsResolver, migrationsStatusResolver)).addService("migrationExecutionFacade", ({ systemClientProvider, tenantClientProvider, remoteProjectProvider, schemaVersionBuilder, migrationPrinter, migrationsExecutor, migrationsStatusFacade }) => new MigrationExecutionFacade(systemClientProvider, tenantClientProvider, remoteProjectProvider, schemaVersionBuilder, migrationPrinter, migrationsExecutor, migrationsStatusFacade)).addService("migrationsValidator", ({ migrationDescriber, schemaMigrator }) => new MigrationsValidator(migrationDescriber, schemaMigrator)).addService("migrationRebaseFacade", ({ schemaVersionBuilder, migrationsValidator, systemClientProvider, migrationFilesManager }) => new MigrationRebaseFacade(schemaVersionBuilder, migrationsValidator, systemClientProvider, migrationFilesManager)).addService("schemaLoader", ({ workspace: workspace2, jsCodeRunner, runtime: runtime2 }) => runtime2 === "bun" ? new ImportSchemaLoader(workspace2) : new TranspilingSchemaLoader(workspace2, jsCodeRunner)).addService("adminDeployer", ({ remoteProjectProvider, adminClient, fs }) => new AdminDeployer(remoteProjectProvider, adminClient, fs)).addService("dataTransferClient", () => new DataTransferClient()).addService("deployCommand", ({ adminDeployer, migrationExecutionFacade, fs, remoteProjectProvider, remoteProjectResolver, workspace: workspace2 }) => new DeployCommand(adminDeployer, migrationExecutionFacade, fs, remoteProjectProvider, remoteProjectResolver, workspace2)).addService("migrationAmendCommand", ({ migrationsResolver, systemClientProvider, migrationsStatusFacade, schemaLoader, schemaVersionBuilder, migrationCreator, migrationsValidator, migrationPrinter, schemaMigrator }) => new MigrationAmendCommand(migrationsResolver, systemClientProvider, migrationsStatusFacade, schemaLoader, schemaVersionBuilder, migrationCreator, migrationsValidator, migrationPrinter, schemaMigrator)).addService("migrationBlankCommand", ({ migrationCreator }) => new MigrationBlankCommand(migrationCreator)).addService("migrationDescribeCommand", ({ migrationPrinter, schemaVersionBuilder, migrationsResolver }) => new MigrationDescribeCommand(migrationPrinter, schemaVersionBuilder, migrationsResolver)).addService("migrationDiffCommand", ({ schemaLoader, schemaVersionBuilder, migrationCreator, migrationPrinter, migrationExecutionFacade }) => new MigrationDiffCommand(schemaLoader, schemaVersionBuilder, migrationCreator, migrationPrinter, migrationExecutionFacade)).addService("migrationExecuteCommand", ({ migrationExecutionFacade }) => new MigrationExecuteCommand(migrationExecutionFacade)).addService("migrationRebaseCommand", ({ migrationsResolver, migrationRebaseFacade }) => new MigrationRebaseCommand(migrationsResolver, migrationRebaseFacade)).addService("migrationStatusCommand", ({ migrationsStatusFacade, migrationFilesManager, systemClientProvider, migrationPrinter }) => new MigrationStatusCommand(migrationsStatusFacade, migrationFilesManager, systemClientProvider, migrationPrinter)).addService("versionCommand", ({ version: version2 }) => new VersionCommand(version2)).addService("projectGenerateDocumentationCommand", ({ schemaLoader, schemaVersionBuilder }) => new ProjectGenerateDocumentationCommand(schemaLoader, schemaVersionBuilder)).addService("projectPrintSchemaCommand", ({ schemaLoader, schemaVersionBuilder }) => new ProjectPrintSchemaCommand(schemaLoader, schemaVersionBuilder)).addService("projectValidateCommand", ({ schemaLoader, migrationsValidator, migrationsResolver, schemaDiffer, schemaVersionBuilder }) => new ProjectValidateCommand(schemaLoader, migrationsValidator, migrationsResolver, schemaDiffer, schemaVersionBuilder)).addService("exportCommand", ({ dataTransferClient, remoteProjectResolver }) => new ExportCommand(remoteProjectResolver, dataTransferClient)).addService("importCommand", ({ dataTransferClient, remoteProjectResolver }) => new ImportCommand(remoteProjectResolver, dataTransferClient)).addService("transferCommand", ({ dataTransferClient, remoteProjectResolver }) => new TransferCommand(remoteProjectResolver, dataTransferClient)).addService("workspaceUpdateCommand", ({ packageWorkspaceResolver, dockerComposeManager }) => new WorkspaceUpdateApiCommand(packageWorkspaceResolver, dockerComposeManager)).addService("commandList", (dic) => {
|
|
87
|
+
})).addService("migrationDescriber", ({ modificationHandlerFactory }) => new MigrationDescriber(modificationHandlerFactory)).addService("migrationPrinter", ({ migrationDescriber }) => new MigrationPrinter(migrationDescriber)).addService("migrationsExecutor", () => new MigrationExecutor()).addService("migrationsStatusResolver", () => new MigrationsStatusResolver()).addService("migrationsStatusFacade", ({ systemClientProvider, migrationsResolver, migrationsStatusResolver, migrationPrinter }) => new MigrationsStatusFacade(systemClientProvider, migrationsResolver, migrationsStatusResolver, migrationPrinter)).addService("migrationExecutionFacade", ({ systemClientProvider, tenantClientProvider, remoteProjectProvider, schemaVersionBuilder, migrationPrinter, migrationsExecutor, migrationsStatusFacade }) => new MigrationExecutionFacade(systemClientProvider, tenantClientProvider, remoteProjectProvider, schemaVersionBuilder, migrationPrinter, migrationsExecutor, migrationsStatusFacade)).addService("migrationsValidator", ({ migrationDescriber, schemaMigrator }) => new MigrationsValidator(migrationDescriber, schemaMigrator)).addService("migrationRebaseFacade", ({ schemaVersionBuilder, migrationsValidator, systemClientProvider, migrationFilesManager }) => new MigrationRebaseFacade(schemaVersionBuilder, migrationsValidator, systemClientProvider, migrationFilesManager)).addService("schemaLoader", ({ workspace: workspace2, jsCodeRunner, runtime: runtime2 }) => runtime2 === "bun" ? new ImportSchemaLoader(workspace2) : new TranspilingSchemaLoader(workspace2, jsCodeRunner)).addService("adminDeployer", ({ remoteProjectProvider, adminClient, fs }) => new AdminDeployer(remoteProjectProvider, adminClient, fs)).addService("dataTransferClient", () => new DataTransferClient()).addService("deployCommand", ({ adminDeployer, migrationExecutionFacade, fs, remoteProjectProvider, remoteProjectResolver, workspace: workspace2 }) => new DeployCommand(adminDeployer, migrationExecutionFacade, fs, remoteProjectProvider, remoteProjectResolver, workspace2)).addService("migrationAmendCommand", ({ migrationsResolver, systemClientProvider, migrationsStatusFacade, schemaLoader, schemaVersionBuilder, migrationCreator, migrationsValidator, migrationPrinter, schemaMigrator }) => new MigrationAmendCommand(migrationsResolver, systemClientProvider, migrationsStatusFacade, schemaLoader, schemaVersionBuilder, migrationCreator, migrationsValidator, migrationPrinter, schemaMigrator)).addService("migrationBlankCommand", ({ migrationCreator }) => new MigrationBlankCommand(migrationCreator)).addService("migrationDescribeCommand", ({ migrationPrinter, schemaVersionBuilder, migrationsResolver }) => new MigrationDescribeCommand(migrationPrinter, schemaVersionBuilder, migrationsResolver)).addService("migrationDiffCommand", ({ schemaLoader, schemaVersionBuilder, migrationCreator, migrationPrinter, migrationExecutionFacade }) => new MigrationDiffCommand(schemaLoader, schemaVersionBuilder, migrationCreator, migrationPrinter, migrationExecutionFacade)).addService("migrationExecuteCommand", ({ migrationExecutionFacade }) => new MigrationExecuteCommand(migrationExecutionFacade)).addService("migrationRebaseCommand", ({ migrationsResolver, migrationRebaseFacade }) => new MigrationRebaseCommand(migrationsResolver, migrationRebaseFacade)).addService("migrationStatusCommand", ({ migrationsStatusFacade, migrationFilesManager, systemClientProvider, migrationPrinter }) => new MigrationStatusCommand(migrationsStatusFacade, migrationFilesManager, systemClientProvider, migrationPrinter)).addService("versionCommand", ({ version: version2 }) => new VersionCommand(version2)).addService("projectGenerateDocumentationCommand", ({ schemaLoader, schemaVersionBuilder }) => new ProjectGenerateDocumentationCommand(schemaLoader, schemaVersionBuilder)).addService("projectPrintSchemaCommand", ({ schemaLoader, schemaVersionBuilder }) => new ProjectPrintSchemaCommand(schemaLoader, schemaVersionBuilder)).addService("projectValidateCommand", ({ schemaLoader, migrationsValidator, migrationsResolver, schemaDiffer, schemaVersionBuilder }) => new ProjectValidateCommand(schemaLoader, migrationsValidator, migrationsResolver, schemaDiffer, schemaVersionBuilder)).addService("exportCommand", ({ dataTransferClient, remoteProjectResolver }) => new ExportCommand(remoteProjectResolver, dataTransferClient)).addService("importCommand", ({ dataTransferClient, remoteProjectResolver }) => new ImportCommand(remoteProjectResolver, dataTransferClient)).addService("transferCommand", ({ dataTransferClient, remoteProjectResolver }) => new TransferCommand(remoteProjectResolver, dataTransferClient)).addService("workspaceUpdateCommand", ({ packageWorkspaceResolver, dockerComposeManager }) => new WorkspaceUpdateApiCommand(packageWorkspaceResolver, dockerComposeManager)).addService("actionsListVariables", ({ remoteProjectResolver }) => new ActionsListVariablesCommand(remoteProjectResolver)).addService("actionsSetVariables", ({ remoteProjectResolver }) => new ActionsSetVariablesCommand(remoteProjectResolver)).addService("actionsListFailedEvents", ({ remoteProjectResolver }) => new ActionsListFailedEventsCommand(remoteProjectResolver)).addService("actionsRetryEvent", ({ remoteProjectResolver }) => new ActionsRetryEventCommand(remoteProjectResolver)).addService("actionsGetEvent", ({ remoteProjectResolver }) => new ActionsGetEventCommand(remoteProjectResolver)).addService("actionsStopEvent", ({ remoteProjectResolver }) => new ActionsStopEventCommand(remoteProjectResolver)).addService("commandList", (dic) => {
|
|
82
88
|
const commands = {
|
|
83
89
|
["deploy"]: () => dic.deployCommand,
|
|
84
90
|
["version"]: () => dic.versionCommand,
|
|
@@ -95,7 +101,13 @@ const createContainer = ({ env, version, runtime, workspace }) => {
|
|
|
95
101
|
["workspace:update:api"]: () => dic.workspaceUpdateCommand,
|
|
96
102
|
["project:validate"]: () => dic.projectValidateCommand,
|
|
97
103
|
["project:print-schema"]: () => dic.projectPrintSchemaCommand,
|
|
98
|
-
["project:generate-doc"]: () => dic.projectGenerateDocumentationCommand
|
|
104
|
+
["project:generate-doc"]: () => dic.projectGenerateDocumentationCommand,
|
|
105
|
+
["actions:list-variables"]: () => dic.actionsListVariables,
|
|
106
|
+
["actions:set-variables"]: () => dic.actionsSetVariables,
|
|
107
|
+
["actions:failed-events"]: () => dic.actionsListFailedEvents,
|
|
108
|
+
["actions:retry-event"]: () => dic.actionsRetryEvent,
|
|
109
|
+
["actions:get-event"]: () => dic.actionsGetEvent,
|
|
110
|
+
["actions:stop-event"]: () => dic.actionsStopEvent
|
|
99
111
|
};
|
|
100
112
|
return commands;
|
|
101
113
|
}).addService("commandManager", ({ commandList }) => new CommandManager(commandList)).addService("versionChecker", ({ version: version2, workspace: workspace2, packageWorkspaceResolver, dockerComposeManager }) => new VersionChecker(version2, workspace2.baseDir, packageWorkspaceResolver, dockerComposeManager)).addService("application", ({ commandManager, versionChecker }) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dic.js","sources":["../../../../packages/cli/src/dic.ts"],"sourcesContent":["import { Builder } from '@contember/dic'\nimport {\n\tJsLoader,\n\tJsonLoader,\n\tMigrationCreator,\n\tMigrationDescriber,\n\tMigrationExecutor,\n\tMigrationFilesManager,\n\tMigrationParser,\n\tMigrationsResolver,\n\tMigrationsStatusResolver,\n\tModificationHandlerFactory,\n\tSchemaDiffer,\n\tSchemaMigrator,\n\tSchemaVersionBuilder,\n\tVERSION_LATEST,\n} from '@contember/migrations-client'\nimport { JsCodeRunner } from './lib/js/JsCodeRunner'\nimport { EsBuildBuilder } from './lib/js/EsBuildBuilder'\nimport { EvalExecutor } from './lib/js/EvalExecutor'\nimport { AdminDeployer } from './lib/admin/AdminDeployer'\nimport { RemoteProjectResolver } from './lib/project/RemoteProjectResolver'\nimport { CliEnv } from './lib/env'\nimport { AdminClient } from './lib/admin/AdminClient'\nimport { FileSystem } from './lib/fs/FileSystem'\nimport { WorkspaceResolver } from './lib/workspace/WorkspaceResolver'\nimport { YamlHandler } from './lib/fs/YamlHandler'\nimport {\n\tDeployCommand,\n\tMigrationAmendCommand,\n\tMigrationBlankCommand,\n\tMigrationDescribeCommand,\n\tMigrationDiffCommand,\n\tMigrationExecuteCommand,\n\tMigrationRebaseCommand,\n\tMigrationStatusCommand,\n\tProjectGenerateDocumentationCommand,\n\tProjectPrintSchemaCommand,\n\tProjectValidateCommand,\n\tVersionCommand,\n\tWorkspaceUpdateApiCommand,\n} from './commands'\nimport { MigrationExecutionFacade } from './lib/migrations/MigrationExecutionFacade'\nimport { MigrationPrinter } from './lib/migrations/MigrationPrinter'\nimport { MigrationsStatusFacade } from './lib/migrations/MigrationsStatusFacade'\nimport { ImportSchemaLoader, SchemaLoader, TranspilingSchemaLoader } from './lib/schema/SchemaLoader'\nimport { MigrationsValidator } from './lib/migrations/MigrationsValidator'\nimport { MigrationRebaseFacade } from './lib/migrations/MigrationRebaseFacade'\nimport { DataTransferClient } from './lib/transfer/DataTransferClient'\nimport { ExportCommand, ImportCommand, TransferCommand } from './commands/transfer'\nimport {\n\tApplication,\n\tCommandFactoryList,\n\tCommandManager,\n\tCommandRunner,\n\tNpm,\n\tBun,\n\tPackageWorkspaceResolver,\n\tPnpm,\n\tYarn,\n\tYarnClassic,\n} from '@contember/cli-common'\nimport { VersionChecker } from './lib/VersionChecker'\nimport { DockerComposeManager } from './lib/fs/DockerComposeManager'\nimport { RemoteProjectProvider } from './lib/project/RemoteProjectProvider'\nimport { SystemClientProvider } from './lib/SystemClientProvider'\nimport { TenantClientProvider } from './lib/TenantClientProvider'\nimport { Workspace } from './lib/workspace/Workspace'\n\nconst jsSample = `\nexport const query = \\`\\`\nexport const variables = {}\n\n// or multiple queries\n// export const queries = []\n\n// or a factory\n// export default async () => ({ queries: [] })\n`\n\nexport const createContainer = ({ env, version, runtime, workspace }: {\n\tworkspace: Workspace\n\tenv: CliEnv\n\tversion: string\n\truntime: 'node' | 'bun'\n}) => {\n\treturn new Builder({})\n\t\t.addService('env', () =>\n\t\t\tenv)\n\t\t.addService('version', () =>\n\t\t\tversion)\n\t\t.addService('runtime', () =>\n\t\t\truntime)\n\t\t.addService('workspace', () =>\n\t\t\tworkspace)\n\t\t.addService('fs', () =>\n\t\t\tnew FileSystem())\n\t\t.addService('yamlHandler', ({ fs }) =>\n\t\t\tnew YamlHandler(fs))\n\t\t.addService('jsExecutor', () =>\n\t\t\tnew EvalExecutor())\n\t\t.addService('jsBuilder', () =>\n\t\t\tnew EsBuildBuilder())\n\t\t.addService('jsCodeRunner', ({ jsExecutor, jsBuilder }) =>\n\t\t\tnew JsCodeRunner(jsBuilder, jsExecutor))\n\n\t\t.addService('workspaceResolver', ({ yamlHandler }) =>\n\t\t\tnew WorkspaceResolver(yamlHandler))\n\n\t\t.addService('remoteProjectResolver', ({ env }) =>\n\t\t\tnew RemoteProjectResolver(env))\n\t\t.addService('remoteProjectProvider', ({ remoteProjectResolver }) => {\n\t\t\tconst provider = new RemoteProjectProvider()\n\t\t\tconst remoteProject = remoteProjectResolver.resolve()\n\t\t\tif (remoteProject) {\n\t\t\t\tprovider.setRemoteProject(remoteProject)\n\t\t\t}\n\t\t\treturn provider\n\t\t})\n\t\t.addService('systemClientProvider', ({ remoteProjectProvider }) =>\n\t\t\tnew SystemClientProvider(remoteProjectProvider))\n\t\t.addService('tenantClientProvider', ({ remoteProjectProvider }) =>\n\t\t\tnew TenantClientProvider(remoteProjectProvider))\n\t\t.addService('adminClient', ({ remoteProjectProvider }) =>\n\t\t\tnew AdminClient(remoteProjectProvider))\n\t\t.addService('migrationFilesManager', ({ jsCodeRunner, workspace }) => {\n\t\t\tconst runJs = runtime === 'bun' ? (file: string) => import(file) : jsCodeRunner.run\n\t\t\treturn new MigrationFilesManager(workspace.migrationsDir, {\n\t\t\t\tjson: new JsonLoader(new MigrationParser()),\n\t\t\t\tts: new JsLoader(new MigrationParser(), runJs),\n\t\t\t\tjs: new JsLoader(new MigrationParser(), runJs),\n\t\t\t})\n\t\t})\n\t\t.addService('packageWorkspaceResolver', ({ workspace, fs }) => {\n\t\t\tconst commandRunner = new CommandRunner()\n\t\t\treturn new PackageWorkspaceResolver(workspace.baseDir, fs, [\n\t\t\t\tnew Yarn(fs, commandRunner),\n\t\t\t\tnew YarnClassic(fs, commandRunner),\n\t\t\t\tnew Pnpm(fs, commandRunner),\n\t\t\t\tnew Npm(fs, commandRunner),\n\t\t\t\tnew Bun(fs, commandRunner),\n\t\t\t])\n\t\t})\n\t\t.addService('dockerComposeManager', ({ workspace, env, fs, yamlHandler }) =>\n\t\t\tnew DockerComposeManager(workspace.baseDir, env.dockerComposeFile, fs, yamlHandler))\n\t\t.addService('modificationHandlerFactory', () =>\n\t\t\tnew ModificationHandlerFactory(ModificationHandlerFactory.defaultFactoryMap))\n\t\t.addService('schemaMigrator', ({ modificationHandlerFactory }) =>\n\t\t\tnew SchemaMigrator(modificationHandlerFactory))\n\t\t.addService('migrationsResolver', ({ migrationFilesManager }) =>\n\t\t\tnew MigrationsResolver(migrationFilesManager))\n\t\t.addService('schemaVersionBuilder', ({ migrationsResolver, schemaMigrator }) =>\n\t\t\tnew SchemaVersionBuilder(migrationsResolver, schemaMigrator))\n\t\t.addService('schemaDiffer', ({ schemaMigrator }) =>\n\t\t\tnew SchemaDiffer(schemaMigrator, {\n\t\t\t\tmaxPatchSize: env.migrationsOptions?.maxPatchSize,\n\t\t\t}))\n\t\t.addService('migrationCreator', ({ migrationFilesManager, schemaDiffer }) =>\n\t\t\tnew MigrationCreator(migrationFilesManager, schemaDiffer, {\n\t\t\t\tjson: JSON.stringify({ formatVersion: VERSION_LATEST, modifications: [] }, undefined, '\\t') + '\\n',\n\t\t\t\tts: jsSample,\n\t\t\t\tjs: jsSample,\n\t\t\t}))\n\t\t.addService('migrationDescriber', ({ modificationHandlerFactory }) =>\n\t\t\tnew MigrationDescriber(modificationHandlerFactory))\n\t\t.addService('migrationPrinter', ({ migrationDescriber }) =>\n\t\t\tnew MigrationPrinter(migrationDescriber))\n\t\t.addService('migrationsExecutor', () =>\n\t\t\tnew MigrationExecutor())\n\t\t.addService('migrationsStatusResolver', () =>\n\t\t\tnew MigrationsStatusResolver())\n\t\t.addService('migrationsStatusFacade', ({ systemClientProvider, migrationsResolver, migrationsStatusResolver }) =>\n\t\t\tnew MigrationsStatusFacade(systemClientProvider, migrationsResolver, migrationsStatusResolver))\n\t\t.addService('migrationExecutionFacade', ({ systemClientProvider, tenantClientProvider, remoteProjectProvider, schemaVersionBuilder, migrationPrinter, migrationsExecutor, migrationsStatusFacade }) =>\n\t\t\tnew MigrationExecutionFacade(systemClientProvider, tenantClientProvider, remoteProjectProvider, schemaVersionBuilder, migrationPrinter, migrationsExecutor, migrationsStatusFacade))\n\t\t.addService('migrationsValidator', ({ migrationDescriber, schemaMigrator }) =>\n\t\t\tnew MigrationsValidator(migrationDescriber, schemaMigrator))\n\t\t.addService('migrationRebaseFacade', ({ schemaVersionBuilder, migrationsValidator, systemClientProvider, migrationFilesManager }) =>\n\t\t\tnew MigrationRebaseFacade(schemaVersionBuilder, migrationsValidator, systemClientProvider, migrationFilesManager))\n\t\t.addService('schemaLoader', ({ workspace, jsCodeRunner, runtime }) =>\n\t\t\truntime === 'bun' ? new ImportSchemaLoader(workspace) : new TranspilingSchemaLoader(workspace, jsCodeRunner))\n\n\t\t.addService('adminDeployer', ({ remoteProjectProvider, adminClient, fs }) =>\n\t\t\tnew AdminDeployer(remoteProjectProvider, adminClient, fs))\n\t\t.addService('dataTransferClient', () =>\n\t\t\tnew DataTransferClient())\n\n\n\t\t.addService('deployCommand', ({ adminDeployer, migrationExecutionFacade, fs, remoteProjectProvider, remoteProjectResolver, workspace }) =>\n\t\t \tnew DeployCommand(adminDeployer, migrationExecutionFacade, fs, remoteProjectProvider, remoteProjectResolver, workspace))\n\t\t.addService('migrationAmendCommand', ({ migrationsResolver, systemClientProvider, migrationsStatusFacade, schemaLoader, schemaVersionBuilder, migrationCreator, migrationsValidator, migrationPrinter, schemaMigrator }) =>\n\t\t\tnew MigrationAmendCommand(migrationsResolver, systemClientProvider, migrationsStatusFacade, schemaLoader, schemaVersionBuilder, migrationCreator, migrationsValidator, migrationPrinter, schemaMigrator))\n\t\t.addService('migrationBlankCommand', ({ migrationCreator }) =>\n\t\t\tnew MigrationBlankCommand(migrationCreator))\n\t\t.addService('migrationDescribeCommand', ({ migrationPrinter, schemaVersionBuilder, migrationsResolver }) =>\n\t\t\tnew MigrationDescribeCommand(migrationPrinter, schemaVersionBuilder, migrationsResolver))\n\t\t.addService('migrationDiffCommand', ({ schemaLoader, schemaVersionBuilder, migrationCreator, migrationPrinter, migrationExecutionFacade }) =>\n\t\t\tnew MigrationDiffCommand(schemaLoader, schemaVersionBuilder, migrationCreator, migrationPrinter, migrationExecutionFacade))\n\t\t.addService('migrationExecuteCommand', ({ migrationExecutionFacade }) =>\n\t\t\tnew MigrationExecuteCommand(migrationExecutionFacade))\n\t\t.addService('migrationRebaseCommand', ({ migrationsResolver, migrationRebaseFacade }) =>\n\t\t\tnew MigrationRebaseCommand(migrationsResolver, migrationRebaseFacade))\n\t\t.addService('migrationStatusCommand', ({ migrationsStatusFacade, migrationFilesManager, systemClientProvider, migrationPrinter }) =>\n\t\t\tnew MigrationStatusCommand(migrationsStatusFacade, migrationFilesManager, systemClientProvider, migrationPrinter))\n\t\t.addService('versionCommand', ({ version }) =>\n\t\t\tnew VersionCommand(version))\n\t\t.addService('projectGenerateDocumentationCommand', ({ schemaLoader, schemaVersionBuilder }) =>\n\t\t\tnew ProjectGenerateDocumentationCommand(schemaLoader, schemaVersionBuilder))\n\t\t.addService('projectPrintSchemaCommand', ({ schemaLoader, schemaVersionBuilder }) =>\n\t\t\tnew ProjectPrintSchemaCommand(schemaLoader, schemaVersionBuilder))\n\t\t.addService('projectValidateCommand', ({ schemaLoader, migrationsValidator, migrationsResolver, schemaDiffer, schemaVersionBuilder }) =>\n\t\t\tnew ProjectValidateCommand(schemaLoader, migrationsValidator, migrationsResolver, schemaDiffer, schemaVersionBuilder))\n\t\t.addService('exportCommand', ({ dataTransferClient, remoteProjectResolver }) =>\n\t\t\tnew ExportCommand(remoteProjectResolver, dataTransferClient))\n\t\t.addService('importCommand', ({ dataTransferClient, remoteProjectResolver }) =>\n\t\t\tnew ImportCommand(remoteProjectResolver, dataTransferClient))\n\t\t.addService('transferCommand', ({ dataTransferClient, remoteProjectResolver }) =>\n\t\t\tnew TransferCommand(remoteProjectResolver, dataTransferClient))\n\t\t.addService('workspaceUpdateCommand', ({ packageWorkspaceResolver, dockerComposeManager }) =>\n\t\t\tnew WorkspaceUpdateApiCommand(packageWorkspaceResolver, dockerComposeManager))\n\t\t.addService('commandList', dic => {\n\t\t\tconst commands: CommandFactoryList = {\n\t\t\t\t['deploy']: () => dic.deployCommand,\n\t\t\t\t['version']: () => dic.versionCommand,\n\t\t\t\t['data:export']: () => dic.exportCommand,\n\t\t\t\t['data:import']: () => dic.importCommand,\n\t\t\t\t['data:transfer']: () => dic.transferCommand,\n\t\t\t\t['migrations:diff']: () => dic.migrationDiffCommand,\n\t\t\t\t['migrations:amend']: () => dic.migrationAmendCommand,\n\t\t\t\t['migrations:blank']: () => dic.migrationBlankCommand,\n\t\t\t\t['migrations:describe']: () => dic.migrationDescribeCommand,\n\t\t\t\t['migrations:execute']: () => dic.migrationExecuteCommand,\n\t\t\t\t['migrations:rebase']: () => dic.migrationRebaseCommand,\n\t\t\t\t['migrations:status']: () => dic.migrationStatusCommand,\n\t\t\t\t['workspace:update:api']: () => dic.workspaceUpdateCommand,\n\t\t\t\t['project:validate']: () => dic.projectValidateCommand,\n\t\t\t\t['project:print-schema']: () => dic.projectPrintSchemaCommand,\n\t\t\t\t['project:generate-doc']: () => dic.projectGenerateDocumentationCommand,\n\t\t\t}\n\t\t\treturn commands\n\t\t})\n\t\t.addService('commandManager', ({ commandList }) =>\n\t\t\tnew CommandManager(commandList))\n\n\t\t.addService('versionChecker', ({ version, workspace, packageWorkspaceResolver, dockerComposeManager }) =>\n\t\t\tnew VersionChecker(version, workspace.baseDir, packageWorkspaceResolver, dockerComposeManager))\n\t\t.addService('application', ({ commandManager, versionChecker }) => {\n\t\t\tconst app = new Application(\n\t\t\t\tcommandManager,\n\t\t\t\t`Contember CLI version ${version}`,\n\t\t\t\t{\n\t\t\t\t\tbeforeRun: async ({ name }) => {\n\t\t\t\t\t\tif (!process.env.CONTEMBER_SKIP_VERSION_CHECK && !['deploy', 'version', 'data:export', 'data:import', 'data:transfer'].includes(name)) {\n\t\t\t\t\t\t\tawait versionChecker.checkVersions()\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t)\n\t\t\treturn app\n\t\t})\n\t\t.build()\n}\n"],"names":["env","workspace","runtime","version"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dic.js","sources":["../../../../packages/cli/src/dic.ts"],"sourcesContent":["import { Builder } from '@contember/dic'\nimport {\n\tJsLoader,\n\tJsonLoader,\n\tMigrationCreator,\n\tMigrationDescriber,\n\tMigrationExecutor,\n\tMigrationFilesManager,\n\tMigrationParser,\n\tMigrationsResolver,\n\tMigrationsStatusResolver,\n\tModificationHandlerFactory,\n\tSchemaDiffer,\n\tSchemaMigrator,\n\tSchemaVersionBuilder,\n\tVERSION_LATEST,\n} from '@contember/migrations-client'\nimport { JsCodeRunner } from './lib/js/JsCodeRunner'\nimport { EsBuildBuilder } from './lib/js/EsBuildBuilder'\nimport { EvalExecutor } from './lib/js/EvalExecutor'\nimport { AdminDeployer } from './lib/admin/AdminDeployer'\nimport { RemoteProjectResolver } from './lib/project/RemoteProjectResolver'\nimport { CliEnv } from './lib/env'\nimport { AdminClient } from './lib/admin/AdminClient'\nimport { FileSystem } from './lib/fs/FileSystem'\nimport { WorkspaceResolver } from './lib/workspace/WorkspaceResolver'\nimport { YamlHandler } from './lib/fs/YamlHandler'\nimport {\n\tDeployCommand,\n\tMigrationAmendCommand,\n\tMigrationBlankCommand,\n\tMigrationDescribeCommand,\n\tMigrationDiffCommand,\n\tMigrationExecuteCommand,\n\tMigrationRebaseCommand,\n\tMigrationStatusCommand,\n\tProjectGenerateDocumentationCommand,\n\tProjectPrintSchemaCommand,\n\tProjectValidateCommand,\n\tVersionCommand,\n\tWorkspaceUpdateApiCommand,\n} from './commands'\nimport { MigrationExecutionFacade } from './lib/migrations/MigrationExecutionFacade'\nimport { MigrationPrinter } from './lib/migrations/MigrationPrinter'\nimport { MigrationsStatusFacade } from './lib/migrations/MigrationsStatusFacade'\nimport { ImportSchemaLoader, SchemaLoader, TranspilingSchemaLoader } from './lib/schema/SchemaLoader'\nimport { MigrationsValidator } from './lib/migrations/MigrationsValidator'\nimport { MigrationRebaseFacade } from './lib/migrations/MigrationRebaseFacade'\nimport { DataTransferClient } from './lib/transfer/DataTransferClient'\nimport { ExportCommand, ImportCommand, TransferCommand } from './commands/transfer'\nimport {\n\tApplication,\n\tCommandFactoryList,\n\tCommandManager,\n\tCommandRunner,\n\tNpm,\n\tBun,\n\tPackageWorkspaceResolver,\n\tPnpm,\n\tYarn,\n\tYarnClassic,\n} from '@contember/cli-common'\nimport { VersionChecker } from './lib/VersionChecker'\nimport { DockerComposeManager } from './lib/fs/DockerComposeManager'\nimport { RemoteProjectProvider } from './lib/project/RemoteProjectProvider'\nimport { SystemClientProvider } from './lib/SystemClientProvider'\nimport { TenantClientProvider } from './lib/TenantClientProvider'\nimport { Workspace } from './lib/workspace/Workspace'\nimport { ActionsListVariablesCommand } from './commands/actions/ActionsListVariablesCommand'\nimport { ActionsSetVariablesCommand } from './commands/actions/ActionsSetVariablesCommand'\nimport { ActionsListFailedEventsCommand } from './commands/actions/ActionsListFailedEventsCommand'\nimport { ActionsRetryEventCommand } from './commands/actions/ActionsRetryEventCommand'\nimport { ActionsGetEventCommand } from './commands/actions/ActionsGetEventCommand'\nimport { ActionsStopEventCommand } from './commands/actions/ActionsStopEventCommand'\n\nconst jsSample = `\nexport const query = \\`\\`\nexport const variables = {}\n\n// or multiple queries\n// export const queries = []\n\n// or a factory\n// export default async () => ({ queries: [] })\n`\n\nexport const createContainer = ({ env, version, runtime, workspace }: {\n\tworkspace: Workspace\n\tenv: CliEnv\n\tversion: string\n\truntime: 'node' | 'bun'\n}) => {\n\treturn new Builder({})\n\t\t.addService('env', () =>\n\t\t\tenv)\n\t\t.addService('version', () =>\n\t\t\tversion)\n\t\t.addService('runtime', () =>\n\t\t\truntime)\n\t\t.addService('workspace', () =>\n\t\t\tworkspace)\n\t\t.addService('fs', () =>\n\t\t\tnew FileSystem())\n\t\t.addService('yamlHandler', ({ fs }) =>\n\t\t\tnew YamlHandler(fs))\n\t\t.addService('jsExecutor', () =>\n\t\t\tnew EvalExecutor())\n\t\t.addService('jsBuilder', () =>\n\t\t\tnew EsBuildBuilder())\n\t\t.addService('jsCodeRunner', ({ jsExecutor, jsBuilder }) =>\n\t\t\tnew JsCodeRunner(jsBuilder, jsExecutor))\n\n\t\t.addService('workspaceResolver', ({ yamlHandler }) =>\n\t\t\tnew WorkspaceResolver(yamlHandler))\n\n\t\t.addService('remoteProjectResolver', ({ env }) =>\n\t\t\tnew RemoteProjectResolver(env))\n\t\t.addService('remoteProjectProvider', ({ remoteProjectResolver }) => {\n\t\t\tconst provider = new RemoteProjectProvider()\n\t\t\tconst remoteProject = remoteProjectResolver.resolve()\n\t\t\tif (remoteProject) {\n\t\t\t\tprovider.setRemoteProject(remoteProject)\n\t\t\t}\n\t\t\treturn provider\n\t\t})\n\t\t.addService('systemClientProvider', ({ remoteProjectProvider }) =>\n\t\t\tnew SystemClientProvider(remoteProjectProvider))\n\t\t.addService('tenantClientProvider', ({ remoteProjectProvider }) =>\n\t\t\tnew TenantClientProvider(remoteProjectProvider))\n\t\t.addService('adminClient', ({ remoteProjectProvider }) =>\n\t\t\tnew AdminClient(remoteProjectProvider))\n\t\t.addService('migrationFilesManager', ({ jsCodeRunner, workspace }) => {\n\t\t\tconst runJs = runtime === 'bun' ? (file: string) => import(file) : jsCodeRunner.run\n\t\t\treturn new MigrationFilesManager(workspace.migrationsDir, {\n\t\t\t\tjson: new JsonLoader(new MigrationParser()),\n\t\t\t\tts: new JsLoader(new MigrationParser(), runJs),\n\t\t\t\tjs: new JsLoader(new MigrationParser(), runJs),\n\t\t\t})\n\t\t})\n\t\t.addService('packageWorkspaceResolver', ({ workspace, fs }) => {\n\t\t\tconst commandRunner = new CommandRunner()\n\t\t\treturn new PackageWorkspaceResolver(workspace.baseDir, fs, [\n\t\t\t\tnew Yarn(fs, commandRunner),\n\t\t\t\tnew YarnClassic(fs, commandRunner),\n\t\t\t\tnew Pnpm(fs, commandRunner),\n\t\t\t\tnew Npm(fs, commandRunner),\n\t\t\t\tnew Bun(fs, commandRunner),\n\t\t\t])\n\t\t})\n\t\t.addService('dockerComposeManager', ({ workspace, env, fs, yamlHandler }) =>\n\t\t\tnew DockerComposeManager(workspace.baseDir, env.dockerComposeFile, fs, yamlHandler))\n\t\t.addService('modificationHandlerFactory', () =>\n\t\t\tnew ModificationHandlerFactory(ModificationHandlerFactory.defaultFactoryMap))\n\t\t.addService('schemaMigrator', ({ modificationHandlerFactory }) =>\n\t\t\tnew SchemaMigrator(modificationHandlerFactory))\n\t\t.addService('migrationsResolver', ({ migrationFilesManager }) =>\n\t\t\tnew MigrationsResolver(migrationFilesManager))\n\t\t.addService('schemaVersionBuilder', ({ migrationsResolver, schemaMigrator }) =>\n\t\t\tnew SchemaVersionBuilder(migrationsResolver, schemaMigrator))\n\t\t.addService('schemaDiffer', ({ schemaMigrator }) =>\n\t\t\tnew SchemaDiffer(schemaMigrator, {\n\t\t\t\tmaxPatchSize: env.migrationsOptions?.maxPatchSize,\n\t\t\t}))\n\t\t.addService('migrationCreator', ({ migrationFilesManager, schemaDiffer }) =>\n\t\t\tnew MigrationCreator(migrationFilesManager, schemaDiffer, {\n\t\t\t\tjson: JSON.stringify({ formatVersion: VERSION_LATEST, modifications: [] }, undefined, '\\t') + '\\n',\n\t\t\t\tts: jsSample,\n\t\t\t\tjs: jsSample,\n\t\t\t}))\n\t\t.addService('migrationDescriber', ({ modificationHandlerFactory }) =>\n\t\t\tnew MigrationDescriber(modificationHandlerFactory))\n\t\t.addService('migrationPrinter', ({ migrationDescriber }) =>\n\t\t\tnew MigrationPrinter(migrationDescriber))\n\t\t.addService('migrationsExecutor', () =>\n\t\t\tnew MigrationExecutor())\n\t\t.addService('migrationsStatusResolver', () =>\n\t\t\tnew MigrationsStatusResolver())\n\t\t.addService('migrationsStatusFacade', ({ systemClientProvider, migrationsResolver, migrationsStatusResolver, migrationPrinter }) =>\n\t\t\tnew MigrationsStatusFacade(systemClientProvider, migrationsResolver, migrationsStatusResolver, migrationPrinter))\n\t\t.addService('migrationExecutionFacade', ({ systemClientProvider, tenantClientProvider, remoteProjectProvider, schemaVersionBuilder, migrationPrinter, migrationsExecutor, migrationsStatusFacade }) =>\n\t\t\tnew MigrationExecutionFacade(systemClientProvider, tenantClientProvider, remoteProjectProvider, schemaVersionBuilder, migrationPrinter, migrationsExecutor, migrationsStatusFacade))\n\t\t.addService('migrationsValidator', ({ migrationDescriber, schemaMigrator }) =>\n\t\t\tnew MigrationsValidator(migrationDescriber, schemaMigrator))\n\t\t.addService('migrationRebaseFacade', ({ schemaVersionBuilder, migrationsValidator, systemClientProvider, migrationFilesManager }) =>\n\t\t\tnew MigrationRebaseFacade(schemaVersionBuilder, migrationsValidator, systemClientProvider, migrationFilesManager))\n\t\t.addService('schemaLoader', ({ workspace, jsCodeRunner, runtime }) =>\n\t\t\truntime === 'bun' ? new ImportSchemaLoader(workspace) : new TranspilingSchemaLoader(workspace, jsCodeRunner))\n\n\t\t.addService('adminDeployer', ({ remoteProjectProvider, adminClient, fs }) =>\n\t\t\tnew AdminDeployer(remoteProjectProvider, adminClient, fs))\n\t\t.addService('dataTransferClient', () =>\n\t\t\tnew DataTransferClient())\n\n\n\t\t.addService('deployCommand', ({ adminDeployer, migrationExecutionFacade, fs, remoteProjectProvider, remoteProjectResolver, workspace }) =>\n\t\t \tnew DeployCommand(adminDeployer, migrationExecutionFacade, fs, remoteProjectProvider, remoteProjectResolver, workspace))\n\t\t.addService('migrationAmendCommand', ({ migrationsResolver, systemClientProvider, migrationsStatusFacade, schemaLoader, schemaVersionBuilder, migrationCreator, migrationsValidator, migrationPrinter, schemaMigrator }) =>\n\t\t\tnew MigrationAmendCommand(migrationsResolver, systemClientProvider, migrationsStatusFacade, schemaLoader, schemaVersionBuilder, migrationCreator, migrationsValidator, migrationPrinter, schemaMigrator))\n\t\t.addService('migrationBlankCommand', ({ migrationCreator }) =>\n\t\t\tnew MigrationBlankCommand(migrationCreator))\n\t\t.addService('migrationDescribeCommand', ({ migrationPrinter, schemaVersionBuilder, migrationsResolver }) =>\n\t\t\tnew MigrationDescribeCommand(migrationPrinter, schemaVersionBuilder, migrationsResolver))\n\t\t.addService('migrationDiffCommand', ({ schemaLoader, schemaVersionBuilder, migrationCreator, migrationPrinter, migrationExecutionFacade }) =>\n\t\t\tnew MigrationDiffCommand(schemaLoader, schemaVersionBuilder, migrationCreator, migrationPrinter, migrationExecutionFacade))\n\t\t.addService('migrationExecuteCommand', ({ migrationExecutionFacade }) =>\n\t\t\tnew MigrationExecuteCommand(migrationExecutionFacade))\n\t\t.addService('migrationRebaseCommand', ({ migrationsResolver, migrationRebaseFacade }) =>\n\t\t\tnew MigrationRebaseCommand(migrationsResolver, migrationRebaseFacade))\n\t\t.addService('migrationStatusCommand', ({ migrationsStatusFacade, migrationFilesManager, systemClientProvider, migrationPrinter }) =>\n\t\t\tnew MigrationStatusCommand(migrationsStatusFacade, migrationFilesManager, systemClientProvider, migrationPrinter))\n\t\t.addService('versionCommand', ({ version }) =>\n\t\t\tnew VersionCommand(version))\n\t\t.addService('projectGenerateDocumentationCommand', ({ schemaLoader, schemaVersionBuilder }) =>\n\t\t\tnew ProjectGenerateDocumentationCommand(schemaLoader, schemaVersionBuilder))\n\t\t.addService('projectPrintSchemaCommand', ({ schemaLoader, schemaVersionBuilder }) =>\n\t\t\tnew ProjectPrintSchemaCommand(schemaLoader, schemaVersionBuilder))\n\t\t.addService('projectValidateCommand', ({ schemaLoader, migrationsValidator, migrationsResolver, schemaDiffer, schemaVersionBuilder }) =>\n\t\t\tnew ProjectValidateCommand(schemaLoader, migrationsValidator, migrationsResolver, schemaDiffer, schemaVersionBuilder))\n\t\t.addService('exportCommand', ({ dataTransferClient, remoteProjectResolver }) =>\n\t\t\tnew ExportCommand(remoteProjectResolver, dataTransferClient))\n\t\t.addService('importCommand', ({ dataTransferClient, remoteProjectResolver }) =>\n\t\t\tnew ImportCommand(remoteProjectResolver, dataTransferClient))\n\t\t.addService('transferCommand', ({ dataTransferClient, remoteProjectResolver }) =>\n\t\t\tnew TransferCommand(remoteProjectResolver, dataTransferClient))\n\t\t.addService('workspaceUpdateCommand', ({ packageWorkspaceResolver, dockerComposeManager }) =>\n\t\t\tnew WorkspaceUpdateApiCommand(packageWorkspaceResolver, dockerComposeManager))\n\t\t.addService('actionsListVariables', ({ remoteProjectResolver }) =>\n\t\t\tnew ActionsListVariablesCommand(remoteProjectResolver))\n\t\t.addService('actionsSetVariables', ({ remoteProjectResolver }) =>\n\t\t\tnew ActionsSetVariablesCommand(remoteProjectResolver))\n\t\t.addService('actionsListFailedEvents', ({ remoteProjectResolver }) =>\n\t\t\tnew ActionsListFailedEventsCommand(remoteProjectResolver))\n\t\t.addService('actionsRetryEvent', ({ remoteProjectResolver }) =>\n\t\t\tnew ActionsRetryEventCommand(remoteProjectResolver))\n\t\t.addService('actionsGetEvent', ({ remoteProjectResolver }) =>\n\t\t\tnew ActionsGetEventCommand(remoteProjectResolver))\n\t\t.addService('actionsStopEvent', ({ remoteProjectResolver }) =>\n\t\t\tnew ActionsStopEventCommand(remoteProjectResolver))\n\n\t\t.addService('commandList', dic => {\n\t\t\tconst commands: CommandFactoryList = {\n\t\t\t\t['deploy']: () => dic.deployCommand,\n\t\t\t\t['version']: () => dic.versionCommand,\n\t\t\t\t['data:export']: () => dic.exportCommand,\n\t\t\t\t['data:import']: () => dic.importCommand,\n\t\t\t\t['data:transfer']: () => dic.transferCommand,\n\t\t\t\t['migrations:diff']: () => dic.migrationDiffCommand,\n\t\t\t\t['migrations:amend']: () => dic.migrationAmendCommand,\n\t\t\t\t['migrations:blank']: () => dic.migrationBlankCommand,\n\t\t\t\t['migrations:describe']: () => dic.migrationDescribeCommand,\n\t\t\t\t['migrations:execute']: () => dic.migrationExecuteCommand,\n\t\t\t\t['migrations:rebase']: () => dic.migrationRebaseCommand,\n\t\t\t\t['migrations:status']: () => dic.migrationStatusCommand,\n\t\t\t\t['workspace:update:api']: () => dic.workspaceUpdateCommand,\n\t\t\t\t['project:validate']: () => dic.projectValidateCommand,\n\t\t\t\t['project:print-schema']: () => dic.projectPrintSchemaCommand,\n\t\t\t\t['project:generate-doc']: () => dic.projectGenerateDocumentationCommand,\n\t\t\t\t['actions:list-variables']: () => dic.actionsListVariables,\n\t\t\t\t['actions:set-variables']: () => dic.actionsSetVariables,\n\t\t\t\t['actions:failed-events']: () => dic.actionsListFailedEvents,\n\t\t\t\t['actions:retry-event']: () => dic.actionsRetryEvent,\n\t\t\t\t['actions:get-event']: () => dic.actionsGetEvent,\n\t\t\t\t['actions:stop-event']: () => dic.actionsStopEvent,\n\t\t\t}\n\t\t\treturn commands\n\t\t})\n\t\t.addService('commandManager', ({ commandList }) =>\n\t\t\tnew CommandManager(commandList))\n\n\t\t.addService('versionChecker', ({ version, workspace, packageWorkspaceResolver, dockerComposeManager }) =>\n\t\t\tnew VersionChecker(version, workspace.baseDir, packageWorkspaceResolver, dockerComposeManager))\n\t\t.addService('application', ({ commandManager, versionChecker }) => {\n\t\t\tconst app = new Application(\n\t\t\t\tcommandManager,\n\t\t\t\t`Contember CLI version ${version}`,\n\t\t\t\t{\n\t\t\t\t\tbeforeRun: async ({ name }) => {\n\t\t\t\t\t\tif (!process.env.CONTEMBER_SKIP_VERSION_CHECK && !['deploy', 'version', 'data:export', 'data:import', 'data:transfer'].includes(name)) {\n\t\t\t\t\t\t\tawait versionChecker.checkVersions()\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t)\n\t\t\treturn app\n\t\t})\n\t\t.build()\n}\n"],"names":["env","workspace","runtime","version"],"mappings":"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"}
|
|
@@ -58,17 +58,12 @@ class VersionChecker {
|
|
|
58
58
|
if (!def.image) {
|
|
59
59
|
continue;
|
|
60
60
|
}
|
|
61
|
-
const [image,
|
|
62
|
-
if (!
|
|
61
|
+
const [image, tag] = def.image.split(":");
|
|
62
|
+
if (!tag || !consts.contemberDockerImages.includes(image)) {
|
|
63
63
|
continue;
|
|
64
64
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
versionParts.pop();
|
|
68
|
-
}
|
|
69
|
-
const cliVersionParts = cliVersion.split(/[.-]/).slice(0, versionParts.length);
|
|
70
|
-
if (versionParts.join(".") !== cliVersionParts.join(".")) {
|
|
71
|
-
errors.push(`Docker service ${name} with image ${image}:${version2} does not match version of CLI ${cliVersion}.`);
|
|
65
|
+
if (extractVersion(tag) !== cliVersion) {
|
|
66
|
+
errors.push(`Docker service ${name} with image ${image}:${tag} does not match version of CLI ${cliVersion}.`);
|
|
72
67
|
}
|
|
73
68
|
}
|
|
74
69
|
}
|
|
@@ -81,5 +76,8 @@ If you are really certain about the compatibility, you can disable this version
|
|
|
81
76
|
});
|
|
82
77
|
}
|
|
83
78
|
}
|
|
79
|
+
const extractVersion = (tag) => {
|
|
80
|
+
return tag.match(/^\d+\.\d+\.\d+(-\w+\.\d+)?/)?.[0] ?? tag;
|
|
81
|
+
};
|
|
84
82
|
exports.VersionChecker = VersionChecker;
|
|
85
83
|
//# sourceMappingURL=VersionChecker.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VersionChecker.cjs","sources":["../../../../../packages/cli/src/lib/VersionChecker.ts"],"sourcesContent":["import { join, relative } from 'node:path'\nimport * as semver from 'semver'\nimport { PackageWorkspaceResolver } from '@contember/cli-common'\nimport { DockerComposeManager } from './fs/DockerComposeManager'\nimport { contemberDockerImages } from '../consts'\n\nexport class VersionChecker {\n\tconstructor(\n\t\tprivate readonly version: string,\n\t\tprivate readonly dir: string,\n\t\tprivate readonly packageWorkspaceResolver: PackageWorkspaceResolver,\n\t\tprivate readonly dockerComposeManager: DockerComposeManager,\n\t) {\n\t}\n\n\tcheckVersions = async () => {\n\t\tconst cliVersion = this.version\n\t\tconst packageWorkspace = await this.packageWorkspaceResolver.resolve()\n\n\t\tconst errors: string[] = []\n\n\t\tfor (const packageName of ['@contember/schema', '@contember/schema-definition']) {\n\t\t\tconst installedPackages = await packageWorkspace.findInstalledDependencies(packageName)\n\t\t\tfor (const pckg of installedPackages) {\n\t\t\t\tconst jsonPath = relative(this.dir, join(pckg.defined.pckg.dir, 'package.json'))\n\n\t\t\t\tif (!pckg.installed) {\n\t\t\t\t\terrors.push(`Package ${packageName} defined in ${jsonPath} is not installed.`)\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tif (pckg.defined.version !== 'workspace:*' && !semver.satisfies(pckg.installed.version, pckg.defined.version)) {\n\t\t\t\t\terrors.push(`Package ${packageName}@${pckg.installed.version} does not match constraint ${pckg.defined.version} defined in ${jsonPath}.`)\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tif (cliVersion !== pckg.installed.version) {\n\t\t\t\t\terrors.push(`Package ${packageName}@${pckg.installed.version} does not match version of CLI ${cliVersion}.`)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tconst dockerCompose = await this.dockerComposeManager.tryReadMainDockerComposeConfig()\n\n\t\tif (!dockerCompose) {\n\t\t\terrors.push('docker-compose.yaml not found.')\n\t\t} else {\n\t\t\tfor (const [name, def] of Object.entries(dockerCompose.services ?? {})) {\n\t\t\t\tif (!def.image) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tconst [image,
|
|
1
|
+
{"version":3,"file":"VersionChecker.cjs","sources":["../../../../../packages/cli/src/lib/VersionChecker.ts"],"sourcesContent":["import { join, relative } from 'node:path'\nimport * as semver from 'semver'\nimport { PackageWorkspaceResolver } from '@contember/cli-common'\nimport { DockerComposeManager } from './fs/DockerComposeManager'\nimport { contemberDockerImages } from '../consts'\n\nexport class VersionChecker {\n\tconstructor(\n\t\tprivate readonly version: string,\n\t\tprivate readonly dir: string,\n\t\tprivate readonly packageWorkspaceResolver: PackageWorkspaceResolver,\n\t\tprivate readonly dockerComposeManager: DockerComposeManager,\n\t) {\n\t}\n\n\tcheckVersions = async () => {\n\t\tconst cliVersion = this.version\n\t\tconst packageWorkspace = await this.packageWorkspaceResolver.resolve()\n\n\t\tconst errors: string[] = []\n\n\t\tfor (const packageName of ['@contember/schema', '@contember/schema-definition']) {\n\t\t\tconst installedPackages = await packageWorkspace.findInstalledDependencies(packageName)\n\t\t\tfor (const pckg of installedPackages) {\n\t\t\t\tconst jsonPath = relative(this.dir, join(pckg.defined.pckg.dir, 'package.json'))\n\n\t\t\t\tif (!pckg.installed) {\n\t\t\t\t\terrors.push(`Package ${packageName} defined in ${jsonPath} is not installed.`)\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tif (pckg.defined.version !== 'workspace:*' && !semver.satisfies(pckg.installed.version, pckg.defined.version)) {\n\t\t\t\t\terrors.push(`Package ${packageName}@${pckg.installed.version} does not match constraint ${pckg.defined.version} defined in ${jsonPath}.`)\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tif (cliVersion !== pckg.installed.version) {\n\t\t\t\t\terrors.push(`Package ${packageName}@${pckg.installed.version} does not match version of CLI ${cliVersion}.`)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tconst dockerCompose = await this.dockerComposeManager.tryReadMainDockerComposeConfig()\n\n\t\tif (!dockerCompose) {\n\t\t\terrors.push('docker-compose.yaml not found.')\n\t\t} else {\n\t\t\tfor (const [name, def] of Object.entries(dockerCompose.services ?? {})) {\n\t\t\t\tif (!def.image) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tconst [image, tag] = def.image.split(':')\n\t\t\t\tif (!tag || !contemberDockerImages.includes(image)) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\n\t\t\t\tif (extractVersion(tag) !== cliVersion) {\n\t\t\t\t\terrors.push(`Docker service ${name} with image ${image}:${tag} does not match version of CLI ${cliVersion}.`)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (errors.length) {\n\t\t\tthrow `${errors.map(it => `${it}`).join('\\n')}\n\nPlease make sure all dependencies are up to date.\\nIf you are really certain about the compatibility, you can disable this version check by running the CLI with the CONTEMBER_SKIP_VERSION_CHECK=1 environment variable`\n\t\t}\n\t}\n\n}\n\n\nconst extractVersion = (tag: string) => {\n\t// e.g.\n\t// 2.1.0-alpha.15-foo-bar => 2.1.0-alpha.15\n\t// 2.1.0-debian => 2.1.0\n\treturn tag.match(/^\\d+\\.\\d+\\.\\d+(-\\w+\\.\\d+)?/)?.[0] ?? tag\n}\n"],"names":["relative","join","semver","contemberDockerImages"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAMO,MAAM,eAAe;AAAA,EAC3B,YACkB,SACA,KACA,0BACA,sBAChB;AAJgB,SAAA,UAAA;AACA,SAAA,MAAA;AACA,SAAA,2BAAA;AACA,SAAA,uBAAA;AAIlB,kBAAA,MAAA,iBAAgB,YAAY;AAC3B,YAAM,aAAa,KAAK;AACxB,YAAM,mBAAmB,MAAM,KAAK,yBAAyB,QAAQ;AAErE,YAAM,SAAmB,CAAC;AAE1B,iBAAW,eAAe,CAAC,qBAAqB,8BAA8B,GAAG;AAChF,cAAM,oBAAoB,MAAM,iBAAiB,0BAA0B,WAAW;AACtF,mBAAW,QAAQ,mBAAmB;AAC/B,gBAAA,WAAWA,UAAAA,SAAS,KAAK,KAAKC,UAAAA,KAAK,KAAK,QAAQ,KAAK,KAAK,cAAc,CAAC;AAE3E,cAAA,CAAC,KAAK,WAAW;AACpB,mBAAO,KAAK,WAAW,WAAW,eAAe,QAAQ,oBAAoB;AAC7E;AAAA,UAAA;AAED,cAAI,KAAK,QAAQ,YAAY,iBAAiB,CAACC,kBAAO,UAAU,KAAK,UAAU,SAAS,KAAK,QAAQ,OAAO,GAAG;AAC9G,mBAAO,KAAK,WAAW,WAAW,IAAI,KAAK,UAAU,OAAO,8BAA8B,KAAK,QAAQ,OAAO,eAAe,QAAQ,GAAG;AACxI;AAAA,UAAA;AAEG,cAAA,eAAe,KAAK,UAAU,SAAS;AACnC,mBAAA,KAAK,WAAW,WAAW,IAAI,KAAK,UAAU,OAAO,kCAAkC,UAAU,GAAG;AAAA,UAAA;AAAA,QAC5G;AAAA,MACD;AAED,YAAM,gBAAgB,MAAM,KAAK,qBAAqB,+BAA+B;AAErF,UAAI,CAAC,eAAe;AACnB,eAAO,KAAK,gCAAgC;AAAA,MAAA,OACtC;AACK,mBAAA,CAAC,MAAM,GAAG,KAAK,OAAO,QAAQ,cAAc,YAAY,CAAA,CAAE,GAAG;AACnE,cAAA,CAAC,IAAI,OAAO;AACf;AAAA,UAAA;AAED,gBAAM,CAAC,OAAO,GAAG,IAAI,IAAI,MAAM,MAAM,GAAG;AACxC,cAAI,CAAC,OAAO,CAACC,OAAsB,sBAAA,SAAS,KAAK,GAAG;AACnD;AAAA,UAAA;AAGG,cAAA,eAAe,GAAG,MAAM,YAAY;AAChC,mBAAA,KAAK,kBAAkB,IAAI,eAAe,KAAK,IAAI,GAAG,kCAAkC,UAAU,GAAG;AAAA,UAAA;AAAA,QAC7G;AAAA,MACD;AAGD,UAAI,OAAO,QAAQ;AACZ,cAAA,GAAG,OAAO,IAAI,CAAM,OAAA,GAAG,EAAE,EAAE,EAAE,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA,MAAA;AAAA,IAG9C,CACD;AAAA,EAAA;AAED;AAGA,MAAM,iBAAiB,CAAC,QAAgB;AAIvC,SAAO,IAAI,MAAM,4BAA4B,IAAI,CAAC,KAAK;AACxD;;"}
|
|
@@ -39,17 +39,12 @@ class VersionChecker {
|
|
|
39
39
|
if (!def.image) {
|
|
40
40
|
continue;
|
|
41
41
|
}
|
|
42
|
-
const [image,
|
|
43
|
-
if (!
|
|
42
|
+
const [image, tag] = def.image.split(":");
|
|
43
|
+
if (!tag || !contemberDockerImages.includes(image)) {
|
|
44
44
|
continue;
|
|
45
45
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
versionParts.pop();
|
|
49
|
-
}
|
|
50
|
-
const cliVersionParts = cliVersion.split(/[.-]/).slice(0, versionParts.length);
|
|
51
|
-
if (versionParts.join(".") !== cliVersionParts.join(".")) {
|
|
52
|
-
errors.push(`Docker service ${name} with image ${image}:${version2} does not match version of CLI ${cliVersion}.`);
|
|
46
|
+
if (extractVersion(tag) !== cliVersion) {
|
|
47
|
+
errors.push(`Docker service ${name} with image ${image}:${tag} does not match version of CLI ${cliVersion}.`);
|
|
53
48
|
}
|
|
54
49
|
}
|
|
55
50
|
}
|
|
@@ -62,6 +57,9 @@ If you are really certain about the compatibility, you can disable this version
|
|
|
62
57
|
});
|
|
63
58
|
}
|
|
64
59
|
}
|
|
60
|
+
const extractVersion = (tag) => {
|
|
61
|
+
return tag.match(/^\d+\.\d+\.\d+(-\w+\.\d+)?/)?.[0] ?? tag;
|
|
62
|
+
};
|
|
65
63
|
export {
|
|
66
64
|
VersionChecker
|
|
67
65
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VersionChecker.js","sources":["../../../../../packages/cli/src/lib/VersionChecker.ts"],"sourcesContent":["import { join, relative } from 'node:path'\nimport * as semver from 'semver'\nimport { PackageWorkspaceResolver } from '@contember/cli-common'\nimport { DockerComposeManager } from './fs/DockerComposeManager'\nimport { contemberDockerImages } from '../consts'\n\nexport class VersionChecker {\n\tconstructor(\n\t\tprivate readonly version: string,\n\t\tprivate readonly dir: string,\n\t\tprivate readonly packageWorkspaceResolver: PackageWorkspaceResolver,\n\t\tprivate readonly dockerComposeManager: DockerComposeManager,\n\t) {\n\t}\n\n\tcheckVersions = async () => {\n\t\tconst cliVersion = this.version\n\t\tconst packageWorkspace = await this.packageWorkspaceResolver.resolve()\n\n\t\tconst errors: string[] = []\n\n\t\tfor (const packageName of ['@contember/schema', '@contember/schema-definition']) {\n\t\t\tconst installedPackages = await packageWorkspace.findInstalledDependencies(packageName)\n\t\t\tfor (const pckg of installedPackages) {\n\t\t\t\tconst jsonPath = relative(this.dir, join(pckg.defined.pckg.dir, 'package.json'))\n\n\t\t\t\tif (!pckg.installed) {\n\t\t\t\t\terrors.push(`Package ${packageName} defined in ${jsonPath} is not installed.`)\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tif (pckg.defined.version !== 'workspace:*' && !semver.satisfies(pckg.installed.version, pckg.defined.version)) {\n\t\t\t\t\terrors.push(`Package ${packageName}@${pckg.installed.version} does not match constraint ${pckg.defined.version} defined in ${jsonPath}.`)\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tif (cliVersion !== pckg.installed.version) {\n\t\t\t\t\terrors.push(`Package ${packageName}@${pckg.installed.version} does not match version of CLI ${cliVersion}.`)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tconst dockerCompose = await this.dockerComposeManager.tryReadMainDockerComposeConfig()\n\n\t\tif (!dockerCompose) {\n\t\t\terrors.push('docker-compose.yaml not found.')\n\t\t} else {\n\t\t\tfor (const [name, def] of Object.entries(dockerCompose.services ?? {})) {\n\t\t\t\tif (!def.image) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tconst [image,
|
|
1
|
+
{"version":3,"file":"VersionChecker.js","sources":["../../../../../packages/cli/src/lib/VersionChecker.ts"],"sourcesContent":["import { join, relative } from 'node:path'\nimport * as semver from 'semver'\nimport { PackageWorkspaceResolver } from '@contember/cli-common'\nimport { DockerComposeManager } from './fs/DockerComposeManager'\nimport { contemberDockerImages } from '../consts'\n\nexport class VersionChecker {\n\tconstructor(\n\t\tprivate readonly version: string,\n\t\tprivate readonly dir: string,\n\t\tprivate readonly packageWorkspaceResolver: PackageWorkspaceResolver,\n\t\tprivate readonly dockerComposeManager: DockerComposeManager,\n\t) {\n\t}\n\n\tcheckVersions = async () => {\n\t\tconst cliVersion = this.version\n\t\tconst packageWorkspace = await this.packageWorkspaceResolver.resolve()\n\n\t\tconst errors: string[] = []\n\n\t\tfor (const packageName of ['@contember/schema', '@contember/schema-definition']) {\n\t\t\tconst installedPackages = await packageWorkspace.findInstalledDependencies(packageName)\n\t\t\tfor (const pckg of installedPackages) {\n\t\t\t\tconst jsonPath = relative(this.dir, join(pckg.defined.pckg.dir, 'package.json'))\n\n\t\t\t\tif (!pckg.installed) {\n\t\t\t\t\terrors.push(`Package ${packageName} defined in ${jsonPath} is not installed.`)\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tif (pckg.defined.version !== 'workspace:*' && !semver.satisfies(pckg.installed.version, pckg.defined.version)) {\n\t\t\t\t\terrors.push(`Package ${packageName}@${pckg.installed.version} does not match constraint ${pckg.defined.version} defined in ${jsonPath}.`)\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tif (cliVersion !== pckg.installed.version) {\n\t\t\t\t\terrors.push(`Package ${packageName}@${pckg.installed.version} does not match version of CLI ${cliVersion}.`)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tconst dockerCompose = await this.dockerComposeManager.tryReadMainDockerComposeConfig()\n\n\t\tif (!dockerCompose) {\n\t\t\terrors.push('docker-compose.yaml not found.')\n\t\t} else {\n\t\t\tfor (const [name, def] of Object.entries(dockerCompose.services ?? {})) {\n\t\t\t\tif (!def.image) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tconst [image, tag] = def.image.split(':')\n\t\t\t\tif (!tag || !contemberDockerImages.includes(image)) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\n\t\t\t\tif (extractVersion(tag) !== cliVersion) {\n\t\t\t\t\terrors.push(`Docker service ${name} with image ${image}:${tag} does not match version of CLI ${cliVersion}.`)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (errors.length) {\n\t\t\tthrow `${errors.map(it => `${it}`).join('\\n')}\n\nPlease make sure all dependencies are up to date.\\nIf you are really certain about the compatibility, you can disable this version check by running the CLI with the CONTEMBER_SKIP_VERSION_CHECK=1 environment variable`\n\t\t}\n\t}\n\n}\n\n\nconst extractVersion = (tag: string) => {\n\t// e.g.\n\t// 2.1.0-alpha.15-foo-bar => 2.1.0-alpha.15\n\t// 2.1.0-debian => 2.1.0\n\treturn tag.match(/^\\d+\\.\\d+\\.\\d+(-\\w+\\.\\d+)?/)?.[0] ?? tag\n}\n"],"names":[],"mappings":";;;;;;AAMO,MAAM,eAAe;AAAA,EAC3B,YACkB,SACA,KACA,0BACA,sBAChB;AAJgB,SAAA,UAAA;AACA,SAAA,MAAA;AACA,SAAA,2BAAA;AACA,SAAA,uBAAA;AAIlB,kBAAA,MAAA,iBAAgB,YAAY;AAC3B,YAAM,aAAa,KAAK;AACxB,YAAM,mBAAmB,MAAM,KAAK,yBAAyB,QAAQ;AAErE,YAAM,SAAmB,CAAC;AAE1B,iBAAW,eAAe,CAAC,qBAAqB,8BAA8B,GAAG;AAChF,cAAM,oBAAoB,MAAM,iBAAiB,0BAA0B,WAAW;AACtF,mBAAW,QAAQ,mBAAmB;AAC/B,gBAAA,WAAW,SAAS,KAAK,KAAK,KAAK,KAAK,QAAQ,KAAK,KAAK,cAAc,CAAC;AAE3E,cAAA,CAAC,KAAK,WAAW;AACpB,mBAAO,KAAK,WAAW,WAAW,eAAe,QAAQ,oBAAoB;AAC7E;AAAA,UAAA;AAED,cAAI,KAAK,QAAQ,YAAY,iBAAiB,CAAC,OAAO,UAAU,KAAK,UAAU,SAAS,KAAK,QAAQ,OAAO,GAAG;AAC9G,mBAAO,KAAK,WAAW,WAAW,IAAI,KAAK,UAAU,OAAO,8BAA8B,KAAK,QAAQ,OAAO,eAAe,QAAQ,GAAG;AACxI;AAAA,UAAA;AAEG,cAAA,eAAe,KAAK,UAAU,SAAS;AACnC,mBAAA,KAAK,WAAW,WAAW,IAAI,KAAK,UAAU,OAAO,kCAAkC,UAAU,GAAG;AAAA,UAAA;AAAA,QAC5G;AAAA,MACD;AAED,YAAM,gBAAgB,MAAM,KAAK,qBAAqB,+BAA+B;AAErF,UAAI,CAAC,eAAe;AACnB,eAAO,KAAK,gCAAgC;AAAA,MAAA,OACtC;AACK,mBAAA,CAAC,MAAM,GAAG,KAAK,OAAO,QAAQ,cAAc,YAAY,CAAA,CAAE,GAAG;AACnE,cAAA,CAAC,IAAI,OAAO;AACf;AAAA,UAAA;AAED,gBAAM,CAAC,OAAO,GAAG,IAAI,IAAI,MAAM,MAAM,GAAG;AACxC,cAAI,CAAC,OAAO,CAAC,sBAAsB,SAAS,KAAK,GAAG;AACnD;AAAA,UAAA;AAGG,cAAA,eAAe,GAAG,MAAM,YAAY;AAChC,mBAAA,KAAK,kBAAkB,IAAI,eAAe,KAAK,IAAI,GAAG,kCAAkC,UAAU,GAAG;AAAA,UAAA;AAAA,QAC7G;AAAA,MACD;AAGD,UAAI,OAAO,QAAQ;AACZ,cAAA,GAAG,OAAO,IAAI,CAAM,OAAA,GAAG,EAAE,EAAE,EAAE,KAAK,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA,MAAA;AAAA,IAG9C,CACD;AAAA,EAAA;AAED;AAGA,MAAM,iBAAiB,CAAC,QAAgB;AAIvC,SAAO,IAAI,MAAM,4BAA4B,IAAI,CAAC,KAAK;AACxD;"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const graphqlClient = require("@contember/graphql-client");
|
|
4
|
+
const createActionsApiUrl = (url, project) => {
|
|
5
|
+
if (url.endsWith("/")) {
|
|
6
|
+
url = url.substring(0, url.length - 1);
|
|
7
|
+
}
|
|
8
|
+
return url + "/actions/" + project;
|
|
9
|
+
};
|
|
10
|
+
class ActionsClient {
|
|
11
|
+
constructor(apiClient) {
|
|
12
|
+
this.apiClient = apiClient;
|
|
13
|
+
}
|
|
14
|
+
static create(url, project, apiToken) {
|
|
15
|
+
const graphqlClient$1 = new graphqlClient.GraphQlClient({ url: createActionsApiUrl(url, project), apiToken });
|
|
16
|
+
return new ActionsClient(graphqlClient$1);
|
|
17
|
+
}
|
|
18
|
+
async listVariables() {
|
|
19
|
+
const query = `query {
|
|
20
|
+
variables {
|
|
21
|
+
name
|
|
22
|
+
value
|
|
23
|
+
}
|
|
24
|
+
}`;
|
|
25
|
+
const result = await this.apiClient.execute(query);
|
|
26
|
+
return result.variables;
|
|
27
|
+
}
|
|
28
|
+
async setVariables(variables, mode) {
|
|
29
|
+
const query = `mutation($variables: [VariableInput!]!, $mode: SetVariablesMode) {
|
|
30
|
+
setVariables(args: { variables: $variables, mode: $mode }) {
|
|
31
|
+
ok
|
|
32
|
+
}
|
|
33
|
+
}`;
|
|
34
|
+
const result = await this.apiClient.execute(query, { variables: { mode, variables } });
|
|
35
|
+
return result.setVariables.ok;
|
|
36
|
+
}
|
|
37
|
+
async listFailedEvents({ offset, limit } = {}) {
|
|
38
|
+
const query = `query($offset: Int, $limit: Int) {
|
|
39
|
+
failedEvents(args: { offset: $offset, limit: $limit }) {
|
|
40
|
+
id
|
|
41
|
+
createdAt
|
|
42
|
+
lastStateChange
|
|
43
|
+
visibleAt
|
|
44
|
+
numRetries
|
|
45
|
+
state
|
|
46
|
+
target
|
|
47
|
+
payload
|
|
48
|
+
log
|
|
49
|
+
}
|
|
50
|
+
}`;
|
|
51
|
+
const result = await this.apiClient.execute(query, { variables: { offset, limit } });
|
|
52
|
+
return result.failedEvents;
|
|
53
|
+
}
|
|
54
|
+
async retryEvent(id) {
|
|
55
|
+
const query = `mutation($id: UUID!) {
|
|
56
|
+
retryEvent(id: $id) {
|
|
57
|
+
ok
|
|
58
|
+
}
|
|
59
|
+
}`;
|
|
60
|
+
const result = await this.apiClient.execute(query, { variables: { id } });
|
|
61
|
+
return result.retryEvent.ok;
|
|
62
|
+
}
|
|
63
|
+
async stopEvent(id) {
|
|
64
|
+
const query = `mutation($id: UUID!) {
|
|
65
|
+
stopEvent(id: $id) {
|
|
66
|
+
ok
|
|
67
|
+
}
|
|
68
|
+
}`;
|
|
69
|
+
const result = await this.apiClient.execute(query, { variables: { id } });
|
|
70
|
+
return result.stopEvent.ok;
|
|
71
|
+
}
|
|
72
|
+
async getEvent(id) {
|
|
73
|
+
const query = `query($id: UUID!) {
|
|
74
|
+
event(id: $id) {
|
|
75
|
+
id
|
|
76
|
+
createdAt
|
|
77
|
+
lastStateChange
|
|
78
|
+
visibleAt
|
|
79
|
+
numRetries
|
|
80
|
+
state
|
|
81
|
+
target
|
|
82
|
+
payload
|
|
83
|
+
log
|
|
84
|
+
}
|
|
85
|
+
}`;
|
|
86
|
+
const result = await this.apiClient.execute(query, { variables: { id } });
|
|
87
|
+
return result.event;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
exports.ActionsClient = ActionsClient;
|
|
91
|
+
//# sourceMappingURL=ActionsClient.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActionsClient.cjs","sources":["../../../../../../packages/cli/src/lib/actions/ActionsClient.ts"],"sourcesContent":["import { GraphQlClient } from '@contember/graphql-client'\n\nconst createActionsApiUrl = (url: string, project: string) => {\n\tif (url.endsWith('/')) {\n\t\turl = url.substring(0, url.length - 1)\n\t}\n\n\treturn url + '/actions/' + project\n}\nexport class ActionsClient {\n\tconstructor(private readonly apiClient: GraphQlClient) {\n\t}\n\n\tpublic static create(url: string, project: string, apiToken: string): ActionsClient {\n\t\tconst graphqlClient = new GraphQlClient({ url: createActionsApiUrl(url, project), apiToken })\n\t\treturn new ActionsClient(graphqlClient)\n\t}\n\n\tpublic async listVariables(): Promise<{ name: string; value: string }[]> {\n\t\tconst query = `query {\n variables {\n \tname\n \tvalue\n }\n}`\n\t\tconst result = await this.apiClient.execute<{\n\t\t\tvariables: Array<{ name: string; value: string }>\n\t\t}>(query)\n\t\treturn result.variables\n\t}\n\n\tpublic async setVariables(variables: { name: string; value: string }[], mode: 'MERGE' | 'SET' | 'APPEND_ONLY_MISSING'): Promise<boolean> {\n\t\tconst query = `mutation($variables: [VariableInput!]!, $mode: SetVariablesMode) {\n setVariables(args: { variables: $variables, mode: $mode }) {\n\tok\n }\n }`\n\t\tconst result = await this.apiClient.execute<{ setVariables: { ok: boolean } }>(query, { variables: { mode, variables } })\n\t\treturn result.setVariables.ok\n\t}\n\n\tpublic async listFailedEvents({ offset, limit }: { offset?: number; limit?: number } = {}): Promise<Event[]> {\n\t\tconst query = `query($offset: Int, $limit: Int) {\n failedEvents(args: { offset: $offset, limit: $limit }) {\n \tid\n \tcreatedAt\n \tlastStateChange\n \tvisibleAt\n \tnumRetries\n \tstate\n \ttarget\n \tpayload\n \tlog\n }\n}`\n\t\tconst result = await this.apiClient.execute<{\n\t\t\tfailedEvents: Event[]\n\t\t}>(query, { variables: { offset, limit } })\n\t\treturn result.failedEvents\n\t}\n\n\tpublic async retryEvent(id: string): Promise<boolean> {\n\t\tconst query = `mutation($id: UUID!) {\n retryEvent(id: $id) {\n \tok\n }\n}`\n\t\tconst result = await this.apiClient.execute<{ retryEvent: { ok: boolean } }>(query, { variables: { id } })\n\t\treturn result.retryEvent.ok\n\t}\n\n\tpublic async stopEvent(id: string): Promise<boolean> {\n\t\tconst query = `mutation($id: UUID!) {\n stopEvent(id: $id) {\n \tok\n }\n}`\n\t\tconst result = await this.apiClient.execute<{ stopEvent: { ok: boolean } }>(query, { variables: { id } })\n\t\treturn result.stopEvent.ok\n\t}\n\n\n\tpublic async getEvent(id: string): Promise<Event | null> {\n\t\tconst query = `query($id: UUID!) {\n event(id: $id) {\n \tid\n \tcreatedAt\n \tlastStateChange\n \tvisibleAt\n \tnumRetries\n \tstate\n \ttarget\n \tpayload\n \tlog\n }\n}`\n\t\tconst result = await this.apiClient.execute<{ event: Event | null }>(query, { variables: { id } })\n\t\treturn result.event\n\t}\n}\n\nexport type Event = {\n\tid: string\n\tcreatedAt: string\n\tlastStateChange: string\n\tvisibleAt: string | null\n\tnumRetries: number\n\tstate: 'retrying' | 'failed'\n\ttarget: string\n\tpayload: any\n\tlog: any\n}\n"],"names":["graphqlClient","GraphQlClient"],"mappings":";;;AAEA,MAAM,sBAAsB,CAAC,KAAa,YAAoB;AACzD,MAAA,IAAI,SAAS,GAAG,GAAG;AACtB,UAAM,IAAI,UAAU,GAAG,IAAI,SAAS,CAAC;AAAA,EAAA;AAGtC,SAAO,MAAM,cAAc;AAC5B;AACO,MAAM,cAAc;AAAA,EAC1B,YAA6B,WAA0B;AAA1B,SAAA,YAAA;AAAA,EAAA;AAAA,EAG7B,OAAc,OAAO,KAAa,SAAiB,UAAiC;AAC7E,UAAAA,kBAAgB,IAAIC,cAAA,cAAc,EAAE,KAAK,oBAAoB,KAAK,OAAO,GAAG,UAAU;AACrF,WAAA,IAAI,cAAcD,eAAa;AAAA,EAAA;AAAA,EAGvC,MAAa,gBAA4D;AACxE,UAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAMd,UAAM,SAAS,MAAM,KAAK,UAAU,QAEjC,KAAK;AACR,WAAO,OAAO;AAAA,EAAA;AAAA,EAGf,MAAa,aAAa,WAA8C,MAAiE;AACxI,UAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAKd,UAAM,SAAS,MAAM,KAAK,UAAU,QAA2C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,EAAA,CAAG;AACxH,WAAO,OAAO,aAAa;AAAA,EAAA;AAAA,EAG5B,MAAa,iBAAiB,EAAE,QAAQ,MAAM,IAAyC,CAAA,GAAsB;AAC5G,UAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAad,UAAM,SAAS,MAAM,KAAK,UAAU,QAEjC,OAAO,EAAE,WAAW,EAAE,QAAQ,MAAM,EAAA,CAAG;AAC1C,WAAO,OAAO;AAAA,EAAA;AAAA,EAGf,MAAa,WAAW,IAA8B;AACrD,UAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAKR,UAAA,SAAS,MAAM,KAAK,UAAU,QAAyC,OAAO,EAAE,WAAW,EAAE,GAAG,GAAG;AACzG,WAAO,OAAO,WAAW;AAAA,EAAA;AAAA,EAG1B,MAAa,UAAU,IAA8B;AACpD,UAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAKR,UAAA,SAAS,MAAM,KAAK,UAAU,QAAwC,OAAO,EAAE,WAAW,EAAE,GAAG,GAAG;AACxG,WAAO,OAAO,UAAU;AAAA,EAAA;AAAA,EAIzB,MAAa,SAAS,IAAmC;AACxD,UAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaR,UAAA,SAAS,MAAM,KAAK,UAAU,QAAiC,OAAO,EAAE,WAAW,EAAE,GAAG,GAAG;AACjG,WAAO,OAAO;AAAA,EAAA;AAEhB;;"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { GraphQlClient } from "@contember/graphql-client";
|
|
2
|
+
const createActionsApiUrl = (url, project) => {
|
|
3
|
+
if (url.endsWith("/")) {
|
|
4
|
+
url = url.substring(0, url.length - 1);
|
|
5
|
+
}
|
|
6
|
+
return url + "/actions/" + project;
|
|
7
|
+
};
|
|
8
|
+
class ActionsClient {
|
|
9
|
+
constructor(apiClient) {
|
|
10
|
+
this.apiClient = apiClient;
|
|
11
|
+
}
|
|
12
|
+
static create(url, project, apiToken) {
|
|
13
|
+
const graphqlClient = new GraphQlClient({ url: createActionsApiUrl(url, project), apiToken });
|
|
14
|
+
return new ActionsClient(graphqlClient);
|
|
15
|
+
}
|
|
16
|
+
async listVariables() {
|
|
17
|
+
const query = `query {
|
|
18
|
+
variables {
|
|
19
|
+
name
|
|
20
|
+
value
|
|
21
|
+
}
|
|
22
|
+
}`;
|
|
23
|
+
const result = await this.apiClient.execute(query);
|
|
24
|
+
return result.variables;
|
|
25
|
+
}
|
|
26
|
+
async setVariables(variables, mode) {
|
|
27
|
+
const query = `mutation($variables: [VariableInput!]!, $mode: SetVariablesMode) {
|
|
28
|
+
setVariables(args: { variables: $variables, mode: $mode }) {
|
|
29
|
+
ok
|
|
30
|
+
}
|
|
31
|
+
}`;
|
|
32
|
+
const result = await this.apiClient.execute(query, { variables: { mode, variables } });
|
|
33
|
+
return result.setVariables.ok;
|
|
34
|
+
}
|
|
35
|
+
async listFailedEvents({ offset, limit } = {}) {
|
|
36
|
+
const query = `query($offset: Int, $limit: Int) {
|
|
37
|
+
failedEvents(args: { offset: $offset, limit: $limit }) {
|
|
38
|
+
id
|
|
39
|
+
createdAt
|
|
40
|
+
lastStateChange
|
|
41
|
+
visibleAt
|
|
42
|
+
numRetries
|
|
43
|
+
state
|
|
44
|
+
target
|
|
45
|
+
payload
|
|
46
|
+
log
|
|
47
|
+
}
|
|
48
|
+
}`;
|
|
49
|
+
const result = await this.apiClient.execute(query, { variables: { offset, limit } });
|
|
50
|
+
return result.failedEvents;
|
|
51
|
+
}
|
|
52
|
+
async retryEvent(id) {
|
|
53
|
+
const query = `mutation($id: UUID!) {
|
|
54
|
+
retryEvent(id: $id) {
|
|
55
|
+
ok
|
|
56
|
+
}
|
|
57
|
+
}`;
|
|
58
|
+
const result = await this.apiClient.execute(query, { variables: { id } });
|
|
59
|
+
return result.retryEvent.ok;
|
|
60
|
+
}
|
|
61
|
+
async stopEvent(id) {
|
|
62
|
+
const query = `mutation($id: UUID!) {
|
|
63
|
+
stopEvent(id: $id) {
|
|
64
|
+
ok
|
|
65
|
+
}
|
|
66
|
+
}`;
|
|
67
|
+
const result = await this.apiClient.execute(query, { variables: { id } });
|
|
68
|
+
return result.stopEvent.ok;
|
|
69
|
+
}
|
|
70
|
+
async getEvent(id) {
|
|
71
|
+
const query = `query($id: UUID!) {
|
|
72
|
+
event(id: $id) {
|
|
73
|
+
id
|
|
74
|
+
createdAt
|
|
75
|
+
lastStateChange
|
|
76
|
+
visibleAt
|
|
77
|
+
numRetries
|
|
78
|
+
state
|
|
79
|
+
target
|
|
80
|
+
payload
|
|
81
|
+
log
|
|
82
|
+
}
|
|
83
|
+
}`;
|
|
84
|
+
const result = await this.apiClient.execute(query, { variables: { id } });
|
|
85
|
+
return result.event;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
export {
|
|
89
|
+
ActionsClient
|
|
90
|
+
};
|
|
91
|
+
//# sourceMappingURL=ActionsClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActionsClient.js","sources":["../../../../../../packages/cli/src/lib/actions/ActionsClient.ts"],"sourcesContent":["import { GraphQlClient } from '@contember/graphql-client'\n\nconst createActionsApiUrl = (url: string, project: string) => {\n\tif (url.endsWith('/')) {\n\t\turl = url.substring(0, url.length - 1)\n\t}\n\n\treturn url + '/actions/' + project\n}\nexport class ActionsClient {\n\tconstructor(private readonly apiClient: GraphQlClient) {\n\t}\n\n\tpublic static create(url: string, project: string, apiToken: string): ActionsClient {\n\t\tconst graphqlClient = new GraphQlClient({ url: createActionsApiUrl(url, project), apiToken })\n\t\treturn new ActionsClient(graphqlClient)\n\t}\n\n\tpublic async listVariables(): Promise<{ name: string; value: string }[]> {\n\t\tconst query = `query {\n variables {\n \tname\n \tvalue\n }\n}`\n\t\tconst result = await this.apiClient.execute<{\n\t\t\tvariables: Array<{ name: string; value: string }>\n\t\t}>(query)\n\t\treturn result.variables\n\t}\n\n\tpublic async setVariables(variables: { name: string; value: string }[], mode: 'MERGE' | 'SET' | 'APPEND_ONLY_MISSING'): Promise<boolean> {\n\t\tconst query = `mutation($variables: [VariableInput!]!, $mode: SetVariablesMode) {\n setVariables(args: { variables: $variables, mode: $mode }) {\n\tok\n }\n }`\n\t\tconst result = await this.apiClient.execute<{ setVariables: { ok: boolean } }>(query, { variables: { mode, variables } })\n\t\treturn result.setVariables.ok\n\t}\n\n\tpublic async listFailedEvents({ offset, limit }: { offset?: number; limit?: number } = {}): Promise<Event[]> {\n\t\tconst query = `query($offset: Int, $limit: Int) {\n failedEvents(args: { offset: $offset, limit: $limit }) {\n \tid\n \tcreatedAt\n \tlastStateChange\n \tvisibleAt\n \tnumRetries\n \tstate\n \ttarget\n \tpayload\n \tlog\n }\n}`\n\t\tconst result = await this.apiClient.execute<{\n\t\t\tfailedEvents: Event[]\n\t\t}>(query, { variables: { offset, limit } })\n\t\treturn result.failedEvents\n\t}\n\n\tpublic async retryEvent(id: string): Promise<boolean> {\n\t\tconst query = `mutation($id: UUID!) {\n retryEvent(id: $id) {\n \tok\n }\n}`\n\t\tconst result = await this.apiClient.execute<{ retryEvent: { ok: boolean } }>(query, { variables: { id } })\n\t\treturn result.retryEvent.ok\n\t}\n\n\tpublic async stopEvent(id: string): Promise<boolean> {\n\t\tconst query = `mutation($id: UUID!) {\n stopEvent(id: $id) {\n \tok\n }\n}`\n\t\tconst result = await this.apiClient.execute<{ stopEvent: { ok: boolean } }>(query, { variables: { id } })\n\t\treturn result.stopEvent.ok\n\t}\n\n\n\tpublic async getEvent(id: string): Promise<Event | null> {\n\t\tconst query = `query($id: UUID!) {\n event(id: $id) {\n \tid\n \tcreatedAt\n \tlastStateChange\n \tvisibleAt\n \tnumRetries\n \tstate\n \ttarget\n \tpayload\n \tlog\n }\n}`\n\t\tconst result = await this.apiClient.execute<{ event: Event | null }>(query, { variables: { id } })\n\t\treturn result.event\n\t}\n}\n\nexport type Event = {\n\tid: string\n\tcreatedAt: string\n\tlastStateChange: string\n\tvisibleAt: string | null\n\tnumRetries: number\n\tstate: 'retrying' | 'failed'\n\ttarget: string\n\tpayload: any\n\tlog: any\n}\n"],"names":[],"mappings":";AAEA,MAAM,sBAAsB,CAAC,KAAa,YAAoB;AACzD,MAAA,IAAI,SAAS,GAAG,GAAG;AACtB,UAAM,IAAI,UAAU,GAAG,IAAI,SAAS,CAAC;AAAA,EAAA;AAGtC,SAAO,MAAM,cAAc;AAC5B;AACO,MAAM,cAAc;AAAA,EAC1B,YAA6B,WAA0B;AAA1B,SAAA,YAAA;AAAA,EAAA;AAAA,EAG7B,OAAc,OAAO,KAAa,SAAiB,UAAiC;AAC7E,UAAA,gBAAgB,IAAI,cAAc,EAAE,KAAK,oBAAoB,KAAK,OAAO,GAAG,UAAU;AACrF,WAAA,IAAI,cAAc,aAAa;AAAA,EAAA;AAAA,EAGvC,MAAa,gBAA4D;AACxE,UAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAMd,UAAM,SAAS,MAAM,KAAK,UAAU,QAEjC,KAAK;AACR,WAAO,OAAO;AAAA,EAAA;AAAA,EAGf,MAAa,aAAa,WAA8C,MAAiE;AACxI,UAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAKd,UAAM,SAAS,MAAM,KAAK,UAAU,QAA2C,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,EAAA,CAAG;AACxH,WAAO,OAAO,aAAa;AAAA,EAAA;AAAA,EAG5B,MAAa,iBAAiB,EAAE,QAAQ,MAAM,IAAyC,CAAA,GAAsB;AAC5G,UAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAad,UAAM,SAAS,MAAM,KAAK,UAAU,QAEjC,OAAO,EAAE,WAAW,EAAE,QAAQ,MAAM,EAAA,CAAG;AAC1C,WAAO,OAAO;AAAA,EAAA;AAAA,EAGf,MAAa,WAAW,IAA8B;AACrD,UAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAKR,UAAA,SAAS,MAAM,KAAK,UAAU,QAAyC,OAAO,EAAE,WAAW,EAAE,GAAG,GAAG;AACzG,WAAO,OAAO,WAAW;AAAA,EAAA;AAAA,EAG1B,MAAa,UAAU,IAA8B;AACpD,UAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAKR,UAAA,SAAS,MAAM,KAAK,UAAU,QAAwC,OAAO,EAAE,WAAW,EAAE,GAAG,GAAG;AACxG,WAAO,OAAO,UAAU;AAAA,EAAA;AAAA,EAIzB,MAAa,SAAS,IAAmC;AACxD,UAAM,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaR,UAAA,SAAS,MAAM,KAAK,UAAU,QAAiC,OAAO,EAAE,WAAW,EAAE,GAAG,GAAG;AACjG,WAAO,OAAO;AAAA,EAAA;AAEhB;"}
|
|
@@ -41,7 +41,7 @@ class MigrationPrinter {
|
|
|
41
41
|
});
|
|
42
42
|
});
|
|
43
43
|
__publicField(this, "printStatusTable", (migrations) => {
|
|
44
|
-
|
|
44
|
+
return chalkTable(
|
|
45
45
|
{
|
|
46
46
|
columns: ["status", "migration", "info"]
|
|
47
47
|
},
|
|
@@ -69,12 +69,17 @@ class MigrationPrinter {
|
|
|
69
69
|
};
|
|
70
70
|
case migrationsClient.MigrationState.TO_EXECUTE_ERROR:
|
|
71
71
|
return { status: chalk.bgRedBright.white("ERROR"), migration: it.name, info: it.errorMessage };
|
|
72
|
+
case migrationsClient.MigrationState.SKIP_EMPTY:
|
|
73
|
+
return {
|
|
74
|
+
status: chalk.bgYellow.white("Skip"),
|
|
75
|
+
migration: it.name,
|
|
76
|
+
info: `Skipped because empty`
|
|
77
|
+
};
|
|
72
78
|
default:
|
|
73
79
|
assertNever.assertNever();
|
|
74
80
|
}
|
|
75
81
|
})
|
|
76
82
|
);
|
|
77
|
-
console.log(table);
|
|
78
83
|
});
|
|
79
84
|
}
|
|
80
85
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MigrationPrinter.cjs","sources":["../../../../../../packages/cli/src/lib/migrations/MigrationPrinter.ts"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/triple-slash-reference\n/// <reference path=\"../../../types/chalk-table/index.d.ts\" />\n\nimport { Schema } from '@contember/schema'\nimport chalk from 'chalk'\nimport { AnyMigrationStatus, Migration, MigrationDescriber, MigrationState } from '@contember/migrations-client'\nimport { emptyDatabaseMetadata } from '@contember/database'\nimport chalkTable from 'chalk-table'\nimport { assertNever } from '../assertNever'\n\nexport class MigrationPrinter {\n\tconstructor(\n\t\tprivate readonly migrationsDescriber: MigrationDescriber,\n\t) {\n\t}\n\n\tprintMigrationDescription = (\n\t\tschema: Schema,\n\t\tmigration: Migration,\n\t\toptions: { sqlOnly?: boolean; noSql?: boolean },\n\t) => {\n\t\tconst description = this.migrationsDescriber.describeModifications(schema, migration)\n\t\tdescription.forEach(({ modification, getSql, description }) => {\n\t\t\tconst sql = getSql({\n\t\t\t\tsystemSchema: 'system',\n\t\t\t\tdatabaseMetadata: emptyDatabaseMetadata,\n\t\t\t\tinvalidateDatabaseMetadata: () => null,\n\t\t\t})\n\t\t\tif (options.sqlOnly) {\n\t\t\t\tif (sql.trim()) {\n\t\t\t\t\tconsole.log(sql)\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst color = description.isDestructive ? chalk.red : chalk.blue\n\t\t\t\tconsole.group(color(`${description.message} [${modification.modification}]`))\n\t\t\t\tif (description.failureWarning) {\n\t\t\t\t\tconsole.log(chalk.bgWhite(chalk.redBright(description.failureWarning)))\n\t\t\t\t}\n\n\t\t\t\tif (!options.noSql) {\n\t\t\t\t\tif (sql.trim()) {\n\t\t\t\t\t\tconsole.log(sql)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconsole.log('No sql to execute')\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconsole.groupEnd()\n\t\t\t}\n\t\t})\n\t}\n\n\tprintStatusTable = (migrations: AnyMigrationStatus[]) => {\n\t\
|
|
1
|
+
{"version":3,"file":"MigrationPrinter.cjs","sources":["../../../../../../packages/cli/src/lib/migrations/MigrationPrinter.ts"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/triple-slash-reference\n/// <reference path=\"../../../types/chalk-table/index.d.ts\" />\n\nimport { Schema } from '@contember/schema'\nimport chalk from 'chalk'\nimport { AnyMigrationStatus, Migration, MigrationDescriber, MigrationState } from '@contember/migrations-client'\nimport { emptyDatabaseMetadata } from '@contember/database'\nimport chalkTable from 'chalk-table'\nimport { assertNever } from '../assertNever'\n\nexport class MigrationPrinter {\n\tconstructor(\n\t\tprivate readonly migrationsDescriber: MigrationDescriber,\n\t) {\n\t}\n\n\tprintMigrationDescription = (\n\t\tschema: Schema,\n\t\tmigration: Migration,\n\t\toptions: { sqlOnly?: boolean; noSql?: boolean },\n\t) => {\n\t\tconst description = this.migrationsDescriber.describeModifications(schema, migration)\n\t\tdescription.forEach(({ modification, getSql, description }) => {\n\t\t\tconst sql = getSql({\n\t\t\t\tsystemSchema: 'system',\n\t\t\t\tdatabaseMetadata: emptyDatabaseMetadata,\n\t\t\t\tinvalidateDatabaseMetadata: () => null,\n\t\t\t})\n\t\t\tif (options.sqlOnly) {\n\t\t\t\tif (sql.trim()) {\n\t\t\t\t\tconsole.log(sql)\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst color = description.isDestructive ? chalk.red : chalk.blue\n\t\t\t\tconsole.group(color(`${description.message} [${modification.modification}]`))\n\t\t\t\tif (description.failureWarning) {\n\t\t\t\t\tconsole.log(chalk.bgWhite(chalk.redBright(description.failureWarning)))\n\t\t\t\t}\n\n\t\t\t\tif (!options.noSql) {\n\t\t\t\t\tif (sql.trim()) {\n\t\t\t\t\t\tconsole.log(sql)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconsole.log('No sql to execute')\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconsole.groupEnd()\n\t\t\t}\n\t\t})\n\t}\n\n\tprintStatusTable = (migrations: AnyMigrationStatus[]) => {\n\t\treturn chalkTable(\n\t\t\t{\n\t\t\t\tcolumns: ['status', 'migration', 'info'],\n\t\t\t},\n\t\t\tmigrations.map(it => {\n\t\t\t\tswitch (it.state) {\n\t\t\t\t\tcase MigrationState.EXECUTED_ERROR:\n\t\t\t\t\t\treturn { status: chalk.bgRedBright.white('ERROR'), migration: it.name, info: it.errorMessage }\n\t\t\t\t\tcase MigrationState.EXECUTED_OK:\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tstatus: chalk.bgGreen.blackBright('Executed'),\n\t\t\t\t\t\t\tmigration: it.name,\n\t\t\t\t\t\t\tinfo: `Executed at ${it.executedMigration.executedAt.toISOString()}`,\n\t\t\t\t\t\t}\n\t\t\t\t\tcase MigrationState.EXECUTED_MISSING:\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tstatus: chalk.bgRedBright.white('ERROR'),\n\t\t\t\t\t\t\tmigration: it.name,\n\t\t\t\t\t\t\tinfo: it.errorMessage,\n\t\t\t\t\t\t}\n\t\t\t\t\tcase MigrationState.TO_EXECUTE_OK:\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tstatus: chalk.bgBlueBright.white('Not executed'),\n\t\t\t\t\t\t\tmigration: it.name,\n\t\t\t\t\t\t\tinfo: 'Will be executed during next deploy',\n\t\t\t\t\t\t}\n\t\t\t\t\tcase MigrationState.TO_EXECUTE_ERROR:\n\t\t\t\t\t\treturn { status: chalk.bgRedBright.white('ERROR'), migration: it.name, info: it.errorMessage }\n\t\t\t\t\tcase MigrationState.SKIP_EMPTY:\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tstatus: chalk.bgYellow.white('Skip'),\n\t\t\t\t\t\t\tmigration: it.name,\n\t\t\t\t\t\t\tinfo: `Skipped because empty`,\n\t\t\t\t\t\t}\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tassertNever(it)\n\t\t\t\t}\n\t\t\t}),\n\t\t)\n\t}\n\n}\n"],"names":["description","emptyDatabaseMetadata","MigrationState","assertNever"],"mappings":";;;;;;;;;;AAUO,MAAM,iBAAiB;AAAA,EAC7B,YACkB,qBAChB;AADgB,SAAA,sBAAA;AAIU,kBAAA,MAAA,6BAAA,CAC3B,QACA,WACA,YACI;AACJ,YAAM,cAAc,KAAK,oBAAoB,sBAAsB,QAAQ,SAAS;AACpF,kBAAY,QAAQ,CAAC,EAAE,cAAc,QAAQ,aAAAA,mBAAkB;AAC9D,cAAM,MAAM,OAAO;AAAA,UAClB,cAAc;AAAA,UACd,kBAAkBC,SAAA;AAAA,UAClB,4BAA4B,MAAM;AAAA,QAAA,CAClC;AACD,YAAI,QAAQ,SAAS;AAChB,cAAA,IAAI,QAAQ;AACf,oBAAQ,IAAI,GAAG;AAAA,UAAA;AAAA,QAChB,OACM;AACN,gBAAM,QAAQD,aAAY,gBAAgB,MAAM,MAAM,MAAM;AACpD,kBAAA,MAAM,MAAM,GAAGA,aAAY,OAAO,KAAK,aAAa,YAAY,GAAG,CAAC;AAC5E,cAAIA,aAAY,gBAAgB;AACvB,oBAAA,IAAI,MAAM,QAAQ,MAAM,UAAUA,aAAY,cAAc,CAAC,CAAC;AAAA,UAAA;AAGnE,cAAA,CAAC,QAAQ,OAAO;AACf,gBAAA,IAAI,QAAQ;AACf,sBAAQ,IAAI,GAAG;AAAA,YAAA,OACT;AACN,sBAAQ,IAAI,mBAAmB;AAAA,YAAA;AAAA,UAChC;AAED,kBAAQ,SAAS;AAAA,QAAA;AAAA,MAClB,CACA;AAAA,IAAA,CACF;AAEA,kBAAA,MAAA,oBAAmB,CAAC,eAAqC;AACjD,aAAA;AAAA,QACN;AAAA,UACC,SAAS,CAAC,UAAU,aAAa,MAAM;AAAA,QACxC;AAAA,QACA,WAAW,IAAI,CAAM,OAAA;AACpB,kBAAQ,GAAG,OAAO;AAAA,YACjB,KAAKE,iBAAe,eAAA;AACnB,qBAAO,EAAE,QAAQ,MAAM,YAAY,MAAM,OAAO,GAAG,WAAW,GAAG,MAAM,MAAM,GAAG,aAAa;AAAA,YAC9F,KAAKA,iBAAe,eAAA;AACZ,qBAAA;AAAA,gBACN,QAAQ,MAAM,QAAQ,YAAY,UAAU;AAAA,gBAC5C,WAAW,GAAG;AAAA,gBACd,MAAM,eAAe,GAAG,kBAAkB,WAAW,aAAa;AAAA,cACnE;AAAA,YACD,KAAKA,iBAAe,eAAA;AACZ,qBAAA;AAAA,gBACN,QAAQ,MAAM,YAAY,MAAM,OAAO;AAAA,gBACvC,WAAW,GAAG;AAAA,gBACd,MAAM,GAAG;AAAA,cACV;AAAA,YACD,KAAKA,iBAAe,eAAA;AACZ,qBAAA;AAAA,gBACN,QAAQ,MAAM,aAAa,MAAM,cAAc;AAAA,gBAC/C,WAAW,GAAG;AAAA,gBACd,MAAM;AAAA,cACP;AAAA,YACD,KAAKA,iBAAe,eAAA;AACnB,qBAAO,EAAE,QAAQ,MAAM,YAAY,MAAM,OAAO,GAAG,WAAW,GAAG,MAAM,MAAM,GAAG,aAAa;AAAA,YAC9F,KAAKA,iBAAe,eAAA;AACZ,qBAAA;AAAA,gBACN,QAAQ,MAAM,SAAS,MAAM,MAAM;AAAA,gBACnC,WAAW,GAAG;AAAA,gBACd,MAAM;AAAA,cACP;AAAA,YACD;AACCC,0BAAAA,YAAc;AAAA,UAAA;AAAA,QAEhB,CAAA;AAAA,MACF;AAAA,IAAA,CACD;AAAA,EAAA;AAED;;"}
|
|
@@ -39,7 +39,7 @@ class MigrationPrinter {
|
|
|
39
39
|
});
|
|
40
40
|
});
|
|
41
41
|
__publicField(this, "printStatusTable", (migrations) => {
|
|
42
|
-
|
|
42
|
+
return chalkTable(
|
|
43
43
|
{
|
|
44
44
|
columns: ["status", "migration", "info"]
|
|
45
45
|
},
|
|
@@ -67,12 +67,17 @@ class MigrationPrinter {
|
|
|
67
67
|
};
|
|
68
68
|
case MigrationState.TO_EXECUTE_ERROR:
|
|
69
69
|
return { status: chalk.bgRedBright.white("ERROR"), migration: it.name, info: it.errorMessage };
|
|
70
|
+
case MigrationState.SKIP_EMPTY:
|
|
71
|
+
return {
|
|
72
|
+
status: chalk.bgYellow.white("Skip"),
|
|
73
|
+
migration: it.name,
|
|
74
|
+
info: `Skipped because empty`
|
|
75
|
+
};
|
|
70
76
|
default:
|
|
71
77
|
assertNever();
|
|
72
78
|
}
|
|
73
79
|
})
|
|
74
80
|
);
|
|
75
|
-
console.log(table);
|
|
76
81
|
});
|
|
77
82
|
}
|
|
78
83
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MigrationPrinter.js","sources":["../../../../../../packages/cli/src/lib/migrations/MigrationPrinter.ts"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/triple-slash-reference\n/// <reference path=\"../../../types/chalk-table/index.d.ts\" />\n\nimport { Schema } from '@contember/schema'\nimport chalk from 'chalk'\nimport { AnyMigrationStatus, Migration, MigrationDescriber, MigrationState } from '@contember/migrations-client'\nimport { emptyDatabaseMetadata } from '@contember/database'\nimport chalkTable from 'chalk-table'\nimport { assertNever } from '../assertNever'\n\nexport class MigrationPrinter {\n\tconstructor(\n\t\tprivate readonly migrationsDescriber: MigrationDescriber,\n\t) {\n\t}\n\n\tprintMigrationDescription = (\n\t\tschema: Schema,\n\t\tmigration: Migration,\n\t\toptions: { sqlOnly?: boolean; noSql?: boolean },\n\t) => {\n\t\tconst description = this.migrationsDescriber.describeModifications(schema, migration)\n\t\tdescription.forEach(({ modification, getSql, description }) => {\n\t\t\tconst sql = getSql({\n\t\t\t\tsystemSchema: 'system',\n\t\t\t\tdatabaseMetadata: emptyDatabaseMetadata,\n\t\t\t\tinvalidateDatabaseMetadata: () => null,\n\t\t\t})\n\t\t\tif (options.sqlOnly) {\n\t\t\t\tif (sql.trim()) {\n\t\t\t\t\tconsole.log(sql)\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst color = description.isDestructive ? chalk.red : chalk.blue\n\t\t\t\tconsole.group(color(`${description.message} [${modification.modification}]`))\n\t\t\t\tif (description.failureWarning) {\n\t\t\t\t\tconsole.log(chalk.bgWhite(chalk.redBright(description.failureWarning)))\n\t\t\t\t}\n\n\t\t\t\tif (!options.noSql) {\n\t\t\t\t\tif (sql.trim()) {\n\t\t\t\t\t\tconsole.log(sql)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconsole.log('No sql to execute')\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconsole.groupEnd()\n\t\t\t}\n\t\t})\n\t}\n\n\tprintStatusTable = (migrations: AnyMigrationStatus[]) => {\n\t\
|
|
1
|
+
{"version":3,"file":"MigrationPrinter.js","sources":["../../../../../../packages/cli/src/lib/migrations/MigrationPrinter.ts"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/triple-slash-reference\n/// <reference path=\"../../../types/chalk-table/index.d.ts\" />\n\nimport { Schema } from '@contember/schema'\nimport chalk from 'chalk'\nimport { AnyMigrationStatus, Migration, MigrationDescriber, MigrationState } from '@contember/migrations-client'\nimport { emptyDatabaseMetadata } from '@contember/database'\nimport chalkTable from 'chalk-table'\nimport { assertNever } from '../assertNever'\n\nexport class MigrationPrinter {\n\tconstructor(\n\t\tprivate readonly migrationsDescriber: MigrationDescriber,\n\t) {\n\t}\n\n\tprintMigrationDescription = (\n\t\tschema: Schema,\n\t\tmigration: Migration,\n\t\toptions: { sqlOnly?: boolean; noSql?: boolean },\n\t) => {\n\t\tconst description = this.migrationsDescriber.describeModifications(schema, migration)\n\t\tdescription.forEach(({ modification, getSql, description }) => {\n\t\t\tconst sql = getSql({\n\t\t\t\tsystemSchema: 'system',\n\t\t\t\tdatabaseMetadata: emptyDatabaseMetadata,\n\t\t\t\tinvalidateDatabaseMetadata: () => null,\n\t\t\t})\n\t\t\tif (options.sqlOnly) {\n\t\t\t\tif (sql.trim()) {\n\t\t\t\t\tconsole.log(sql)\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst color = description.isDestructive ? chalk.red : chalk.blue\n\t\t\t\tconsole.group(color(`${description.message} [${modification.modification}]`))\n\t\t\t\tif (description.failureWarning) {\n\t\t\t\t\tconsole.log(chalk.bgWhite(chalk.redBright(description.failureWarning)))\n\t\t\t\t}\n\n\t\t\t\tif (!options.noSql) {\n\t\t\t\t\tif (sql.trim()) {\n\t\t\t\t\t\tconsole.log(sql)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconsole.log('No sql to execute')\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconsole.groupEnd()\n\t\t\t}\n\t\t})\n\t}\n\n\tprintStatusTable = (migrations: AnyMigrationStatus[]) => {\n\t\treturn chalkTable(\n\t\t\t{\n\t\t\t\tcolumns: ['status', 'migration', 'info'],\n\t\t\t},\n\t\t\tmigrations.map(it => {\n\t\t\t\tswitch (it.state) {\n\t\t\t\t\tcase MigrationState.EXECUTED_ERROR:\n\t\t\t\t\t\treturn { status: chalk.bgRedBright.white('ERROR'), migration: it.name, info: it.errorMessage }\n\t\t\t\t\tcase MigrationState.EXECUTED_OK:\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tstatus: chalk.bgGreen.blackBright('Executed'),\n\t\t\t\t\t\t\tmigration: it.name,\n\t\t\t\t\t\t\tinfo: `Executed at ${it.executedMigration.executedAt.toISOString()}`,\n\t\t\t\t\t\t}\n\t\t\t\t\tcase MigrationState.EXECUTED_MISSING:\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tstatus: chalk.bgRedBright.white('ERROR'),\n\t\t\t\t\t\t\tmigration: it.name,\n\t\t\t\t\t\t\tinfo: it.errorMessage,\n\t\t\t\t\t\t}\n\t\t\t\t\tcase MigrationState.TO_EXECUTE_OK:\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tstatus: chalk.bgBlueBright.white('Not executed'),\n\t\t\t\t\t\t\tmigration: it.name,\n\t\t\t\t\t\t\tinfo: 'Will be executed during next deploy',\n\t\t\t\t\t\t}\n\t\t\t\t\tcase MigrationState.TO_EXECUTE_ERROR:\n\t\t\t\t\t\treturn { status: chalk.bgRedBright.white('ERROR'), migration: it.name, info: it.errorMessage }\n\t\t\t\t\tcase MigrationState.SKIP_EMPTY:\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tstatus: chalk.bgYellow.white('Skip'),\n\t\t\t\t\t\t\tmigration: it.name,\n\t\t\t\t\t\t\tinfo: `Skipped because empty`,\n\t\t\t\t\t\t}\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tassertNever(it)\n\t\t\t\t}\n\t\t\t}),\n\t\t)\n\t}\n\n}\n"],"names":["description"],"mappings":";;;;;;;;AAUO,MAAM,iBAAiB;AAAA,EAC7B,YACkB,qBAChB;AADgB,SAAA,sBAAA;AAIU,kBAAA,MAAA,6BAAA,CAC3B,QACA,WACA,YACI;AACJ,YAAM,cAAc,KAAK,oBAAoB,sBAAsB,QAAQ,SAAS;AACpF,kBAAY,QAAQ,CAAC,EAAE,cAAc,QAAQ,aAAAA,mBAAkB;AAC9D,cAAM,MAAM,OAAO;AAAA,UAClB,cAAc;AAAA,UACd,kBAAkB;AAAA,UAClB,4BAA4B,MAAM;AAAA,QAAA,CAClC;AACD,YAAI,QAAQ,SAAS;AAChB,cAAA,IAAI,QAAQ;AACf,oBAAQ,IAAI,GAAG;AAAA,UAAA;AAAA,QAChB,OACM;AACN,gBAAM,QAAQA,aAAY,gBAAgB,MAAM,MAAM,MAAM;AACpD,kBAAA,MAAM,MAAM,GAAGA,aAAY,OAAO,KAAK,aAAa,YAAY,GAAG,CAAC;AAC5E,cAAIA,aAAY,gBAAgB;AACvB,oBAAA,IAAI,MAAM,QAAQ,MAAM,UAAUA,aAAY,cAAc,CAAC,CAAC;AAAA,UAAA;AAGnE,cAAA,CAAC,QAAQ,OAAO;AACf,gBAAA,IAAI,QAAQ;AACf,sBAAQ,IAAI,GAAG;AAAA,YAAA,OACT;AACN,sBAAQ,IAAI,mBAAmB;AAAA,YAAA;AAAA,UAChC;AAED,kBAAQ,SAAS;AAAA,QAAA;AAAA,MAClB,CACA;AAAA,IAAA,CACF;AAEA,kBAAA,MAAA,oBAAmB,CAAC,eAAqC;AACjD,aAAA;AAAA,QACN;AAAA,UACC,SAAS,CAAC,UAAU,aAAa,MAAM;AAAA,QACxC;AAAA,QACA,WAAW,IAAI,CAAM,OAAA;AACpB,kBAAQ,GAAG,OAAO;AAAA,YACjB,KAAK,eAAe;AACnB,qBAAO,EAAE,QAAQ,MAAM,YAAY,MAAM,OAAO,GAAG,WAAW,GAAG,MAAM,MAAM,GAAG,aAAa;AAAA,YAC9F,KAAK,eAAe;AACZ,qBAAA;AAAA,gBACN,QAAQ,MAAM,QAAQ,YAAY,UAAU;AAAA,gBAC5C,WAAW,GAAG;AAAA,gBACd,MAAM,eAAe,GAAG,kBAAkB,WAAW,aAAa;AAAA,cACnE;AAAA,YACD,KAAK,eAAe;AACZ,qBAAA;AAAA,gBACN,QAAQ,MAAM,YAAY,MAAM,OAAO;AAAA,gBACvC,WAAW,GAAG;AAAA,gBACd,MAAM,GAAG;AAAA,cACV;AAAA,YACD,KAAK,eAAe;AACZ,qBAAA;AAAA,gBACN,QAAQ,MAAM,aAAa,MAAM,cAAc;AAAA,gBAC/C,WAAW,GAAG;AAAA,gBACd,MAAM;AAAA,cACP;AAAA,YACD,KAAK,eAAe;AACnB,qBAAO,EAAE,QAAQ,MAAM,YAAY,MAAM,OAAO,GAAG,WAAW,GAAG,MAAM,MAAM,GAAG,aAAa;AAAA,YAC9F,KAAK,eAAe;AACZ,qBAAA;AAAA,gBACN,QAAQ,MAAM,SAAS,MAAM,MAAM;AAAA,gBACnC,WAAW,GAAG;AAAA,gBACd,MAAM;AAAA,cACP;AAAA,YACD;AACC,0BAAc;AAAA,UAAA;AAAA,QAEhB,CAAA;AAAA,MACF;AAAA,IAAA,CACD;AAAA,EAAA;AAED;"}
|