@kapeta/local-cluster-service 0.24.2 → 0.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.cjs +8 -0
- package/.github/workflows/check-license.yml +18 -0
- package/CHANGELOG.md +24 -0
- package/LICENSE +38 -21
- package/README.md +4 -0
- package/definitions.d.ts +5 -0
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/index.js +16 -2
- package/dist/cjs/src/RepositoryWatcher.d.ts +5 -0
- package/dist/cjs/src/RepositoryWatcher.js +27 -5
- package/dist/cjs/src/api.d.ts +4 -0
- package/dist/cjs/src/api.js +4 -0
- package/dist/cjs/src/assetManager.d.ts +5 -1
- package/dist/cjs/src/assetManager.js +4 -0
- package/dist/cjs/src/assets/routes.d.ts +4 -0
- package/dist/cjs/src/assets/routes.js +4 -0
- package/dist/cjs/src/attachments/routes.d.ts +4 -0
- package/dist/cjs/src/attachments/routes.js +4 -0
- package/dist/cjs/src/authManager.d.ts +4 -0
- package/dist/cjs/src/authManager.js +4 -0
- package/dist/cjs/src/cacheManager.d.ts +4 -0
- package/dist/cjs/src/cacheManager.js +4 -0
- package/dist/cjs/src/clusterService.d.ts +4 -0
- package/dist/cjs/src/clusterService.js +4 -0
- package/dist/cjs/src/codeGeneratorManager.d.ts +7 -3
- package/dist/cjs/src/codeGeneratorManager.js +4 -0
- package/dist/cjs/src/config/routes.d.ts +4 -0
- package/dist/cjs/src/config/routes.js +4 -0
- package/dist/cjs/src/configManager.d.ts +4 -0
- package/dist/cjs/src/configManager.js +4 -0
- package/dist/cjs/src/containerManager.d.ts +4 -0
- package/dist/cjs/src/containerManager.js +4 -0
- package/dist/cjs/src/definitionsManager.d.ts +4 -0
- package/dist/cjs/src/definitionsManager.js +4 -0
- package/dist/cjs/src/filesystem/routes.d.ts +4 -0
- package/dist/cjs/src/filesystem/routes.js +4 -0
- package/dist/cjs/src/filesystemManager.d.ts +4 -0
- package/dist/cjs/src/filesystemManager.js +4 -0
- package/dist/cjs/src/identities/routes.d.ts +4 -0
- package/dist/cjs/src/identities/routes.js +4 -0
- package/dist/cjs/src/instanceManager.d.ts +4 -0
- package/dist/cjs/src/instanceManager.js +4 -0
- package/dist/cjs/src/instances/routes.d.ts +4 -0
- package/dist/cjs/src/instances/routes.js +4 -0
- package/dist/cjs/src/middleware/cors.d.ts +4 -0
- package/dist/cjs/src/middleware/cors.js +4 -0
- package/dist/cjs/src/middleware/kapeta.d.ts +4 -0
- package/dist/cjs/src/middleware/kapeta.js +4 -0
- package/dist/cjs/src/middleware/stringBody.d.ts +4 -0
- package/dist/cjs/src/middleware/stringBody.js +4 -0
- package/dist/cjs/src/networkManager.d.ts +4 -0
- package/dist/cjs/src/networkManager.js +4 -0
- package/dist/cjs/src/operatorManager.d.ts +4 -0
- package/dist/cjs/src/operatorManager.js +4 -0
- package/dist/cjs/src/progressListener.d.ts +4 -0
- package/dist/cjs/src/progressListener.js +4 -0
- package/dist/cjs/src/providerManager.d.ts +4 -0
- package/dist/cjs/src/providerManager.js +4 -0
- package/dist/cjs/src/providers/routes.d.ts +4 -0
- package/dist/cjs/src/providers/routes.js +4 -0
- package/dist/cjs/src/proxy/routes.d.ts +4 -0
- package/dist/cjs/src/proxy/routes.js +4 -0
- package/dist/cjs/src/proxy/types/rest.d.ts +4 -0
- package/dist/cjs/src/proxy/types/rest.js +4 -0
- package/dist/cjs/src/proxy/types/web.d.ts +4 -0
- package/dist/cjs/src/proxy/types/web.js +4 -0
- package/dist/cjs/src/repositoryManager.d.ts +4 -0
- package/dist/cjs/src/repositoryManager.js +4 -0
- package/dist/cjs/src/serviceManager.d.ts +4 -0
- package/dist/cjs/src/serviceManager.js +4 -0
- package/dist/cjs/src/socketManager.d.ts +4 -0
- package/dist/cjs/src/socketManager.js +4 -0
- package/dist/cjs/src/storageService.d.ts +4 -0
- package/dist/cjs/src/storageService.js +4 -0
- package/dist/cjs/src/taskManager.d.ts +4 -0
- package/dist/cjs/src/taskManager.js +4 -0
- package/dist/cjs/src/tasks/routes.d.ts +4 -0
- package/dist/cjs/src/tasks/routes.js +4 -0
- package/dist/cjs/src/traffic/routes.d.ts +4 -0
- package/dist/cjs/src/traffic/routes.js +4 -0
- package/dist/cjs/src/types.d.ts +4 -0
- package/dist/cjs/src/types.js +4 -0
- package/dist/cjs/src/utils/BlockInstanceRunner.d.ts +4 -0
- package/dist/cjs/src/utils/BlockInstanceRunner.js +5 -1
- package/dist/cjs/src/utils/DefaultProviderInstaller.d.ts +4 -0
- package/dist/cjs/src/utils/DefaultProviderInstaller.js +4 -0
- package/dist/cjs/src/utils/LogData.d.ts +4 -0
- package/dist/cjs/src/utils/LogData.js +4 -0
- package/dist/cjs/src/utils/commandLineUtils.d.ts +5 -0
- package/dist/cjs/src/utils/commandLineUtils.js +11 -1
- package/dist/cjs/src/utils/pathTemplateParser.d.ts +4 -0
- package/dist/cjs/src/utils/pathTemplateParser.js +4 -0
- package/dist/cjs/src/utils/utils.d.ts +4 -0
- package/dist/cjs/src/utils/utils.js +4 -0
- package/dist/cjs/start.d.ts +4 -0
- package/dist/cjs/start.js +4 -0
- package/dist/cjs/test/proxy/types/rest.test.d.ts +4 -0
- package/dist/cjs/test/proxy/types/rest.test.js +4 -0
- package/dist/cjs/test/utils/pathTemplateParser.test.d.ts +4 -0
- package/dist/cjs/test/utils/pathTemplateParser.test.js +4 -0
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.js +16 -2
- package/dist/esm/src/RepositoryWatcher.d.ts +5 -0
- package/dist/esm/src/RepositoryWatcher.js +27 -5
- package/dist/esm/src/api.d.ts +4 -0
- package/dist/esm/src/api.js +4 -0
- package/dist/esm/src/assetManager.d.ts +5 -1
- package/dist/esm/src/assetManager.js +4 -0
- package/dist/esm/src/assets/routes.d.ts +4 -0
- package/dist/esm/src/assets/routes.js +4 -0
- package/dist/esm/src/attachments/routes.d.ts +4 -0
- package/dist/esm/src/attachments/routes.js +4 -0
- package/dist/esm/src/authManager.d.ts +4 -0
- package/dist/esm/src/authManager.js +4 -0
- package/dist/esm/src/cacheManager.d.ts +4 -0
- package/dist/esm/src/cacheManager.js +4 -0
- package/dist/esm/src/clusterService.d.ts +4 -0
- package/dist/esm/src/clusterService.js +4 -0
- package/dist/esm/src/codeGeneratorManager.d.ts +7 -3
- package/dist/esm/src/codeGeneratorManager.js +4 -0
- package/dist/esm/src/config/routes.d.ts +4 -0
- package/dist/esm/src/config/routes.js +4 -0
- package/dist/esm/src/configManager.d.ts +4 -0
- package/dist/esm/src/configManager.js +4 -0
- package/dist/esm/src/containerManager.d.ts +4 -0
- package/dist/esm/src/containerManager.js +4 -0
- package/dist/esm/src/definitionsManager.d.ts +4 -0
- package/dist/esm/src/definitionsManager.js +4 -0
- package/dist/esm/src/filesystem/routes.d.ts +4 -0
- package/dist/esm/src/filesystem/routes.js +4 -0
- package/dist/esm/src/filesystemManager.d.ts +4 -0
- package/dist/esm/src/filesystemManager.js +4 -0
- package/dist/esm/src/identities/routes.d.ts +4 -0
- package/dist/esm/src/identities/routes.js +4 -0
- package/dist/esm/src/instanceManager.d.ts +4 -0
- package/dist/esm/src/instanceManager.js +4 -0
- package/dist/esm/src/instances/routes.d.ts +4 -0
- package/dist/esm/src/instances/routes.js +4 -0
- package/dist/esm/src/middleware/cors.d.ts +4 -0
- package/dist/esm/src/middleware/cors.js +4 -0
- package/dist/esm/src/middleware/kapeta.d.ts +4 -0
- package/dist/esm/src/middleware/kapeta.js +4 -0
- package/dist/esm/src/middleware/stringBody.d.ts +4 -0
- package/dist/esm/src/middleware/stringBody.js +4 -0
- package/dist/esm/src/networkManager.d.ts +4 -0
- package/dist/esm/src/networkManager.js +4 -0
- package/dist/esm/src/operatorManager.d.ts +4 -0
- package/dist/esm/src/operatorManager.js +4 -0
- package/dist/esm/src/progressListener.d.ts +4 -0
- package/dist/esm/src/progressListener.js +4 -0
- package/dist/esm/src/providerManager.d.ts +4 -0
- package/dist/esm/src/providerManager.js +4 -0
- package/dist/esm/src/providers/routes.d.ts +4 -0
- package/dist/esm/src/providers/routes.js +4 -0
- package/dist/esm/src/proxy/routes.d.ts +4 -0
- package/dist/esm/src/proxy/routes.js +4 -0
- package/dist/esm/src/proxy/types/rest.d.ts +4 -0
- package/dist/esm/src/proxy/types/rest.js +4 -0
- package/dist/esm/src/proxy/types/web.d.ts +4 -0
- package/dist/esm/src/proxy/types/web.js +4 -0
- package/dist/esm/src/repositoryManager.d.ts +4 -0
- package/dist/esm/src/repositoryManager.js +4 -0
- package/dist/esm/src/serviceManager.d.ts +4 -0
- package/dist/esm/src/serviceManager.js +4 -0
- package/dist/esm/src/socketManager.d.ts +4 -0
- package/dist/esm/src/socketManager.js +4 -0
- package/dist/esm/src/storageService.d.ts +4 -0
- package/dist/esm/src/storageService.js +4 -0
- package/dist/esm/src/taskManager.d.ts +4 -0
- package/dist/esm/src/taskManager.js +4 -0
- package/dist/esm/src/tasks/routes.d.ts +4 -0
- package/dist/esm/src/tasks/routes.js +4 -0
- package/dist/esm/src/traffic/routes.d.ts +4 -0
- package/dist/esm/src/traffic/routes.js +4 -0
- package/dist/esm/src/types.d.ts +4 -0
- package/dist/esm/src/types.js +4 -0
- package/dist/esm/src/utils/BlockInstanceRunner.d.ts +4 -0
- package/dist/esm/src/utils/BlockInstanceRunner.js +5 -1
- package/dist/esm/src/utils/DefaultProviderInstaller.d.ts +4 -0
- package/dist/esm/src/utils/DefaultProviderInstaller.js +4 -0
- package/dist/esm/src/utils/LogData.d.ts +4 -0
- package/dist/esm/src/utils/LogData.js +4 -0
- package/dist/esm/src/utils/commandLineUtils.d.ts +5 -0
- package/dist/esm/src/utils/commandLineUtils.js +11 -1
- package/dist/esm/src/utils/pathTemplateParser.d.ts +4 -0
- package/dist/esm/src/utils/pathTemplateParser.js +4 -0
- package/dist/esm/src/utils/utils.d.ts +4 -0
- package/dist/esm/src/utils/utils.js +4 -0
- package/dist/esm/start.d.ts +4 -0
- package/dist/esm/start.js +4 -0
- package/dist/esm/test/proxy/types/rest.test.d.ts +4 -0
- package/dist/esm/test/proxy/types/rest.test.js +4 -0
- package/dist/esm/test/utils/pathTemplateParser.test.d.ts +4 -0
- package/dist/esm/test/utils/pathTemplateParser.test.js +4 -0
- package/index.ts +18 -3
- package/package.json +7 -3
- package/src/RepositoryWatcher.ts +34 -13
- package/src/api.ts +5 -0
- package/src/assetManager.ts +7 -2
- package/src/assets/routes.ts +5 -0
- package/src/attachments/routes.ts +5 -0
- package/src/authManager.ts +5 -0
- package/src/cacheManager.ts +5 -0
- package/src/clusterService.ts +5 -0
- package/src/codeGeneratorManager.ts +8 -3
- package/src/config/routes.ts +5 -0
- package/src/configManager.ts +5 -0
- package/src/containerManager.ts +5 -0
- package/src/definitionsManager.ts +5 -0
- package/src/filesystem/routes.ts +5 -0
- package/src/filesystemManager.ts +5 -0
- package/src/identities/routes.ts +5 -0
- package/src/instanceManager.ts +5 -0
- package/src/instances/routes.ts +5 -0
- package/src/middleware/cors.ts +5 -0
- package/src/middleware/kapeta.ts +5 -0
- package/src/middleware/stringBody.ts +5 -0
- package/src/networkManager.ts +5 -0
- package/src/operatorManager.ts +5 -0
- package/src/progressListener.ts +5 -0
- package/src/providerManager.ts +5 -0
- package/src/providers/routes.ts +5 -0
- package/src/proxy/routes.ts +5 -0
- package/src/proxy/types/rest.ts +5 -0
- package/src/proxy/types/web.ts +5 -0
- package/src/repositoryManager.ts +5 -0
- package/src/serviceManager.ts +5 -0
- package/src/socketManager.ts +5 -0
- package/src/storageService.ts +5 -0
- package/src/taskManager.ts +5 -0
- package/src/tasks/routes.ts +5 -0
- package/src/traffic/routes.ts +5 -0
- package/src/types.ts +5 -0
- package/src/utils/BlockInstanceRunner.ts +6 -1
- package/src/utils/DefaultProviderInstaller.ts +5 -0
- package/src/utils/LogData.ts +5 -0
- package/src/utils/commandLineUtils.ts +11 -0
- package/src/utils/pathTemplateParser.ts +5 -0
- package/src/utils/utils.ts +5 -0
- package/start.ts +5 -0
- package/test/proxy/types/rest.test.ts +5 -0
- package/test/utils/pathTemplateParser.test.ts +5 -0
@@ -1,4 +1,8 @@
|
|
1
1
|
"use strict";
|
2
|
+
/**
|
3
|
+
* Copyright 2023 Kapeta Inc.
|
4
|
+
* SPDX-License-Identifier: BUSL-1.1
|
5
|
+
*/
|
2
6
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
7
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
8
|
};
|
@@ -14,6 +18,7 @@ const lodash_1 = __importDefault(require("lodash"));
|
|
14
18
|
const socketManager_1 = require("./socketManager");
|
15
19
|
const cacheManager_1 = require("./cacheManager");
|
16
20
|
const node_events_1 = require("node:events");
|
21
|
+
const assetManager_1 = require("./assetManager");
|
17
22
|
const KAPETA_YML_RX = /^kapeta.ya?ml$/;
|
18
23
|
class RepositoryWatcher extends node_events_1.EventEmitter {
|
19
24
|
watcher;
|
@@ -134,11 +139,11 @@ class RepositoryWatcher extends node_events_1.EventEmitter {
|
|
134
139
|
if (!path) {
|
135
140
|
return;
|
136
141
|
}
|
137
|
-
|
138
|
-
if (!assetIdentity) {
|
142
|
+
if (this.disabled) {
|
139
143
|
return;
|
140
144
|
}
|
141
|
-
|
145
|
+
const assetIdentity = await this.getAssetIdentity(path);
|
146
|
+
if (!assetIdentity) {
|
142
147
|
return;
|
143
148
|
}
|
144
149
|
// If this is false it's because we're watching a symlink target
|
@@ -156,13 +161,31 @@ class RepositoryWatcher extends node_events_1.EventEmitter {
|
|
156
161
|
await this.updateSymlinkTarget(path);
|
157
162
|
}
|
158
163
|
}
|
164
|
+
const repoPath = this.getRepositoryPath(assetIdentity);
|
165
|
+
if (eventName === 'change' &&
|
166
|
+
!withinRepo &&
|
167
|
+
assetIdentity.version === 'local' &&
|
168
|
+
node_path_1.default.basename(path) === 'kapeta.yml' &&
|
169
|
+
(await this.exists(path)) &&
|
170
|
+
!(await this.exists(repoPath))) {
|
171
|
+
// This happens when a local asset is renamed
|
172
|
+
const oldPath = lodash_1.default.findKey(this.symbolicLinks, (link) => link === path);
|
173
|
+
if (oldPath) {
|
174
|
+
await fs_extra_1.default.unlink(oldPath);
|
175
|
+
await assetManager_1.assetManager.importFile(path);
|
176
|
+
return;
|
177
|
+
}
|
178
|
+
}
|
159
179
|
const sourceOfChange = this.sourceOfChange.get(path) ?? 'filesystem';
|
160
180
|
await this.checkForChange(assetIdentity, sourceOfChange);
|
161
181
|
// We consume the sourceOfChange when the file is changed
|
162
182
|
this.sourceOfChange.delete(path);
|
163
183
|
}
|
184
|
+
getRepositoryPath(assetIdentity) {
|
185
|
+
return node_path_1.default.join(this.baseDir, assetIdentity.handle, assetIdentity.name, assetIdentity.version);
|
186
|
+
}
|
164
187
|
async checkForChange(assetIdentity, sourceOfChange) {
|
165
|
-
const ymlPath = node_path_1.default.join(this.
|
188
|
+
const ymlPath = node_path_1.default.join(this.getRepositoryPath(assetIdentity), 'kapeta.yml');
|
166
189
|
const newDefinitions = local_cluster_config_1.default.getDefinitions();
|
167
190
|
const newDefinition = newDefinitions.find((d) => d.ymlPath === ymlPath);
|
168
191
|
let currentDefinition = this.allDefinitions.find((d) => d.ymlPath === ymlPath);
|
@@ -187,7 +210,6 @@ class RepositoryWatcher extends node_events_1.EventEmitter {
|
|
187
210
|
}
|
188
211
|
else {
|
189
212
|
if (currentDefinition) {
|
190
|
-
const ref = (0, nodejs_utils_1.parseKapetaUri)(`${currentDefinition.definition.metadata.name}:${currentDefinition.version}`).id;
|
191
213
|
//Something was removed
|
192
214
|
type = 'removed';
|
193
215
|
}
|
package/dist/esm/src/api.d.ts
CHANGED
package/dist/esm/src/api.js
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright 2023 Kapeta Inc.
|
3
|
+
* SPDX-License-Identifier: BUSL-1.1
|
4
|
+
*/
|
1
5
|
import { Definition } from '@kapeta/local-cluster-config';
|
2
6
|
import { BlockDefinition, BlockInstance, Plan } from '@kapeta/schemas';
|
3
7
|
import { SourceOfChange } from './types';
|
@@ -23,7 +27,7 @@ declare class AssetManager {
|
|
23
27
|
getBlockInstance(systemId: string, instanceId: string): Promise<BlockInstance>;
|
24
28
|
getAsset(ref: string, noCache?: boolean, autoFetch?: boolean): Promise<EnrichedAsset | undefined>;
|
25
29
|
createAsset(path: string, yaml: BlockDefinition, sourceOfChange?: SourceOfChange): Promise<EnrichedAsset[]>;
|
26
|
-
updateAsset(ref: string, yaml:
|
30
|
+
updateAsset(ref: string, yaml: Definition, sourceOfChange?: SourceOfChange): Promise<void>;
|
27
31
|
importFile(filePath: string): Promise<EnrichedAsset[]>;
|
28
32
|
unregisterAsset(ref: string): Promise<void>;
|
29
33
|
installAsset(ref: string, wait?: boolean): Promise<import("./taskManager").Task<void>[] | undefined>;
|
@@ -1,10 +1,14 @@
|
|
1
|
-
|
1
|
+
/**
|
2
|
+
* Copyright 2023 Kapeta Inc.
|
3
|
+
* SPDX-License-Identifier: BUSL-1.1
|
4
|
+
*/
|
5
|
+
import { Definition } from '@kapeta/local-cluster-config';
|
2
6
|
declare class CodeGeneratorManager {
|
3
7
|
private ensureLanguageTargetInRegistry;
|
4
8
|
reload(): Promise<void>;
|
5
9
|
initialize(): Promise<void>;
|
6
|
-
canGenerateCode(yamlContent:
|
7
|
-
generate(yamlFile: string, yamlContent:
|
10
|
+
canGenerateCode(yamlContent: Definition): Promise<boolean>;
|
11
|
+
generate(yamlFile: string, yamlContent: Definition): Promise<void>;
|
8
12
|
}
|
9
13
|
export declare const codeGeneratorManager: CodeGeneratorManager;
|
10
14
|
export {};
|
@@ -1,4 +1,8 @@
|
|
1
1
|
"use strict";
|
2
|
+
/**
|
3
|
+
* Copyright 2023 Kapeta Inc.
|
4
|
+
* SPDX-License-Identifier: BUSL-1.1
|
5
|
+
*/
|
2
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
7
|
exports.configManager = exports.SYSTEM_ID = void 0;
|
4
8
|
const storageService_1 = require("./storageService");
|