@backstage/backend-app-api 0.4.6-next.0 → 0.5.0-next.2
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.
Potentially problematic release.
This version of @backstage/backend-app-api might be problematic. Click here for more details.
- package/CHANGELOG.md +34 -0
- package/alpha/package.json +6 -0
- package/dist/alpha.cjs.js +89 -0
- package/dist/alpha.cjs.js.map +1 -0
- package/dist/alpha.d.ts +7 -0
- package/dist/index.cjs.js +44 -25
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +6 -6
- package/package.json +27 -14
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# @backstage/backend-app-api
|
|
2
2
|
|
|
3
|
+
## 0.5.0-next.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- e65c4896f755: Do not throw in backend.stop, if start failed
|
|
8
|
+
- cc9256a33bcc: Added new experimental `featureDiscoveryServiceFactory`, available as an `/alpha` export.
|
|
9
|
+
- Updated dependencies
|
|
10
|
+
- @backstage/backend-plugin-api@0.6.0-next.2
|
|
11
|
+
- @backstage/backend-tasks@0.5.5-next.2
|
|
12
|
+
- @backstage/backend-common@0.19.2-next.2
|
|
13
|
+
- @backstage/plugin-permission-node@0.7.11-next.2
|
|
14
|
+
- @backstage/plugin-auth-node@0.2.17-next.2
|
|
15
|
+
- @backstage/config-loader@1.4.0-next.1
|
|
16
|
+
|
|
17
|
+
## 0.5.0-next.1
|
|
18
|
+
|
|
19
|
+
### Minor Changes
|
|
20
|
+
|
|
21
|
+
- b9c57a4f857e: **BREAKING**: Renamed `configServiceFactory` to `rootConfigServiceFactory`.
|
|
22
|
+
|
|
23
|
+
### Patch Changes
|
|
24
|
+
|
|
25
|
+
- Updated dependencies
|
|
26
|
+
- @backstage/backend-common@0.19.2-next.1
|
|
27
|
+
- @backstage/config-loader@1.4.0-next.1
|
|
28
|
+
- @backstage/plugin-auth-node@0.2.17-next.1
|
|
29
|
+
- @backstage/backend-plugin-api@0.6.0-next.1
|
|
30
|
+
- @backstage/backend-tasks@0.5.5-next.1
|
|
31
|
+
- @backstage/plugin-permission-node@0.7.11-next.1
|
|
32
|
+
- @backstage/cli-common@0.1.12
|
|
33
|
+
- @backstage/config@1.0.8
|
|
34
|
+
- @backstage/errors@1.2.1
|
|
35
|
+
- @backstage/types@1.1.0
|
|
36
|
+
|
|
3
37
|
## 0.4.6-next.0
|
|
4
38
|
|
|
5
39
|
### Patch Changes
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var backendPluginApi = require('@backstage/backend-plugin-api');
|
|
6
|
+
var alpha = require('@backstage/backend-plugin-api/alpha');
|
|
7
|
+
var path = require('path');
|
|
8
|
+
var fs = require('fs-extra');
|
|
9
|
+
|
|
10
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
11
|
+
|
|
12
|
+
var fs__default = /*#__PURE__*/_interopDefaultLegacy(fs);
|
|
13
|
+
|
|
14
|
+
const LOADED_PACKAGE_ROLES = ["backend-plugin", "backend-module"];
|
|
15
|
+
async function findClosestPackageDir(searchDir) {
|
|
16
|
+
let path$1 = searchDir;
|
|
17
|
+
for (let i = 0; i < 1e3; i++) {
|
|
18
|
+
const packagePath = path.resolve(path$1, "package.json");
|
|
19
|
+
const exists = await fs__default["default"].pathExists(packagePath);
|
|
20
|
+
if (exists) {
|
|
21
|
+
return path$1;
|
|
22
|
+
}
|
|
23
|
+
const newPath = path.dirname(path$1);
|
|
24
|
+
if (newPath === path$1) {
|
|
25
|
+
return void 0;
|
|
26
|
+
}
|
|
27
|
+
path$1 = newPath;
|
|
28
|
+
}
|
|
29
|
+
throw new Error(
|
|
30
|
+
`Iteration limit reached when searching for root package.json at ${searchDir}`
|
|
31
|
+
);
|
|
32
|
+
}
|
|
33
|
+
class PackageDiscoveryService {
|
|
34
|
+
constructor(config) {
|
|
35
|
+
this.config = config;
|
|
36
|
+
}
|
|
37
|
+
async getBackendFeatures() {
|
|
38
|
+
var _a, _b;
|
|
39
|
+
if (this.config.getOptionalString("backend.packages") !== "all") {
|
|
40
|
+
return { features: [] };
|
|
41
|
+
}
|
|
42
|
+
const packageDir = await findClosestPackageDir(process.argv[1]);
|
|
43
|
+
if (!packageDir) {
|
|
44
|
+
throw new Error("Package discovery failed to find package.json");
|
|
45
|
+
}
|
|
46
|
+
const { dependencies } = require(path.resolve(
|
|
47
|
+
packageDir,
|
|
48
|
+
"package.json"
|
|
49
|
+
));
|
|
50
|
+
const dependencyNames = Object.keys(dependencies || {});
|
|
51
|
+
const features = [];
|
|
52
|
+
for (const name of dependencyNames) {
|
|
53
|
+
const depPkg = require(require.resolve(`${name}/package.json`, {
|
|
54
|
+
paths: [packageDir]
|
|
55
|
+
}));
|
|
56
|
+
if (!LOADED_PACKAGE_ROLES.includes((_b = (_a = depPkg == null ? void 0 : depPkg.backstage) == null ? void 0 : _a.role) != null ? _b : "")) {
|
|
57
|
+
continue;
|
|
58
|
+
}
|
|
59
|
+
const depModule = require(require.resolve(name, { paths: [packageDir] }));
|
|
60
|
+
for (const exportValue of Object.values(depModule)) {
|
|
61
|
+
if (isBackendFeature(exportValue)) {
|
|
62
|
+
features.push(exportValue);
|
|
63
|
+
}
|
|
64
|
+
if (isBackendFeatureFactory(exportValue)) {
|
|
65
|
+
features.push(exportValue());
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return { features };
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
const featureDiscoveryServiceFactory = backendPluginApi.createServiceFactory({
|
|
73
|
+
service: alpha.featureDiscoveryServiceRef,
|
|
74
|
+
deps: {
|
|
75
|
+
config: backendPluginApi.coreServices.rootConfig
|
|
76
|
+
},
|
|
77
|
+
factory({ config }) {
|
|
78
|
+
return new PackageDiscoveryService(config);
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
function isBackendFeature(value) {
|
|
82
|
+
return !!value && typeof value === "object" && value.$$type === "@backstage/BackendFeature";
|
|
83
|
+
}
|
|
84
|
+
function isBackendFeatureFactory(value) {
|
|
85
|
+
return !!value && typeof value === "function" && value.$$type === "@backstage/BackendFeatureFactory";
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
exports.featureDiscoveryServiceFactory = featureDiscoveryServiceFactory;
|
|
89
|
+
//# sourceMappingURL=alpha.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alpha.cjs.js","sources":["../src/alpha/featureDiscoveryServiceFactory.ts"],"sourcesContent":["/*\n * Copyright 2023 The Backstage Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n BackendFeature,\n RootConfigService,\n coreServices,\n createServiceFactory,\n} from '@backstage/backend-plugin-api';\nimport {\n featureDiscoveryServiceRef,\n FeatureDiscoveryService,\n} from '@backstage/backend-plugin-api/alpha';\nimport { resolve as resolvePath, dirname } from 'path';\nimport fs from 'fs-extra';\nimport { BackstagePackageJson } from '@backstage/cli-node';\n\nconst LOADED_PACKAGE_ROLES = ['backend-plugin', 'backend-module'];\n\n/** @internal */\nasync function findClosestPackageDir(\n searchDir: string,\n): Promise<string | undefined> {\n let path = searchDir;\n\n // Some confidence check to avoid infinite loop\n for (let i = 0; i < 1000; i++) {\n const packagePath = resolvePath(path, 'package.json');\n const exists = await fs.pathExists(packagePath);\n if (exists) {\n return path;\n }\n\n const newPath = dirname(path);\n if (newPath === path) {\n return undefined;\n }\n path = newPath;\n }\n\n throw new Error(\n `Iteration limit reached when searching for root package.json at ${searchDir}`,\n );\n}\n\n/** @internal */\nclass PackageDiscoveryService implements FeatureDiscoveryService {\n constructor(private readonly config: RootConfigService) {}\n\n async getBackendFeatures(): Promise<{ features: Array<BackendFeature> }> {\n if (this.config.getOptionalString('backend.packages') !== 'all') {\n return { features: [] };\n }\n\n const packageDir = await findClosestPackageDir(process.argv[1]);\n if (!packageDir) {\n throw new Error('Package discovery failed to find package.json');\n }\n const { dependencies } = require(resolvePath(\n packageDir,\n 'package.json',\n )) as BackstagePackageJson;\n const dependencyNames = Object.keys(dependencies || {});\n\n const features: BackendFeature[] = [];\n\n for (const name of dependencyNames) {\n const depPkg = require(require.resolve(`${name}/package.json`, {\n paths: [packageDir],\n })) as BackstagePackageJson;\n if (!LOADED_PACKAGE_ROLES.includes(depPkg?.backstage?.role ?? '')) {\n continue;\n }\n const depModule = require(require.resolve(name, { paths: [packageDir] }));\n for (const exportValue of Object.values(depModule)) {\n if (isBackendFeature(exportValue)) {\n features.push(exportValue);\n }\n if (isBackendFeatureFactory(exportValue)) {\n features.push(exportValue());\n }\n }\n }\n\n return { features };\n }\n}\n\n/** @alpha */\nexport const featureDiscoveryServiceFactory = createServiceFactory({\n service: featureDiscoveryServiceRef,\n deps: {\n config: coreServices.rootConfig,\n },\n factory({ config }) {\n return new PackageDiscoveryService(config);\n },\n});\n\nfunction isBackendFeature(value: unknown): value is BackendFeature {\n return (\n !!value &&\n typeof value === 'object' &&\n (value as BackendFeature).$$type === '@backstage/BackendFeature'\n );\n}\n\nfunction isBackendFeatureFactory(\n value: unknown,\n): value is () => BackendFeature {\n return (\n !!value &&\n typeof value === 'function' &&\n (value as any).$$type === '@backstage/BackendFeatureFactory'\n );\n}\n"],"names":["path","resolvePath","fs","dirname","createServiceFactory","featureDiscoveryServiceRef","coreServices"],"mappings":"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"}
|
package/dist/alpha.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as _backstage_backend_plugin_api from '@backstage/backend-plugin-api';
|
|
2
|
+
import { FeatureDiscoveryService } from '@backstage/backend-plugin-api/alpha';
|
|
3
|
+
|
|
4
|
+
/** @alpha */
|
|
5
|
+
declare const featureDiscoveryServiceFactory: () => _backstage_backend_plugin_api.ServiceFactory<FeatureDiscoveryService, "root">;
|
|
6
|
+
|
|
7
|
+
export { featureDiscoveryServiceFactory };
|
package/dist/index.cjs.js
CHANGED
|
@@ -21,6 +21,7 @@ var minimatch = require('minimatch');
|
|
|
21
21
|
var errors = require('@backstage/errors');
|
|
22
22
|
var winston = require('winston');
|
|
23
23
|
var backendPluginApi = require('@backstage/backend-plugin-api');
|
|
24
|
+
var alpha = require('@backstage/backend-plugin-api/alpha');
|
|
24
25
|
var backendCommon = require('@backstage/backend-common');
|
|
25
26
|
var PromiseRouter = require('express-promise-router');
|
|
26
27
|
var types = require('@backstage/types');
|
|
@@ -1096,10 +1097,11 @@ var __privateMethod$2 = (obj, member, method) => {
|
|
|
1096
1097
|
__accessCheck$3(obj, member, "access private method");
|
|
1097
1098
|
return method;
|
|
1098
1099
|
};
|
|
1099
|
-
var _startPromise, _features, _extensionPoints, _serviceHolder, _getInitDeps, getInitDeps_fn, _doStart, doStart_fn, _getRootLifecycleImpl, getRootLifecycleImpl_fn, _getPluginLifecycleImpl, getPluginLifecycleImpl_fn;
|
|
1100
|
+
var _startPromise, _features, _extensionPoints, _serviceHolder, _getInitDeps, getInitDeps_fn, _addFeature, addFeature_fn, _doStart, doStart_fn, _getRootLifecycleImpl, getRootLifecycleImpl_fn, _getPluginLifecycleImpl, getPluginLifecycleImpl_fn;
|
|
1100
1101
|
class BackendInitializer {
|
|
1101
1102
|
constructor(serviceHolder) {
|
|
1102
1103
|
__privateAdd$3(this, _getInitDeps);
|
|
1104
|
+
__privateAdd$3(this, _addFeature);
|
|
1103
1105
|
__privateAdd$3(this, _doStart);
|
|
1104
1106
|
// Bit of a hacky way to grab the lifecycle services, potentially find a nicer way to do this
|
|
1105
1107
|
__privateAdd$3(this, _getRootLifecycleImpl);
|
|
@@ -1114,18 +1116,7 @@ class BackendInitializer {
|
|
|
1114
1116
|
if (__privateGet$3(this, _startPromise)) {
|
|
1115
1117
|
throw new Error("feature can not be added after the backend has started");
|
|
1116
1118
|
}
|
|
1117
|
-
|
|
1118
|
-
throw new Error(
|
|
1119
|
-
`Failed to add feature, invalid type '${feature.$$type}'`
|
|
1120
|
-
);
|
|
1121
|
-
}
|
|
1122
|
-
const internalFeature = feature;
|
|
1123
|
-
if (internalFeature.version !== "v1") {
|
|
1124
|
-
throw new Error(
|
|
1125
|
-
`Failed to add feature, invalid version '${internalFeature.version}'`
|
|
1126
|
-
);
|
|
1127
|
-
}
|
|
1128
|
-
__privateGet$3(this, _features).push(internalFeature);
|
|
1119
|
+
__privateMethod$2(this, _addFeature, addFeature_fn).call(this, feature);
|
|
1129
1120
|
}
|
|
1130
1121
|
async start() {
|
|
1131
1122
|
if (__privateGet$3(this, _startPromise)) {
|
|
@@ -1153,7 +1144,10 @@ class BackendInitializer {
|
|
|
1153
1144
|
if (!__privateGet$3(this, _startPromise)) {
|
|
1154
1145
|
return;
|
|
1155
1146
|
}
|
|
1156
|
-
|
|
1147
|
+
try {
|
|
1148
|
+
await __privateGet$3(this, _startPromise);
|
|
1149
|
+
} catch (error) {
|
|
1150
|
+
}
|
|
1157
1151
|
const lifecycleService = await __privateMethod$2(this, _getRootLifecycleImpl, getRootLifecycleImpl_fn).call(this);
|
|
1158
1152
|
await lifecycleService.shutdown();
|
|
1159
1153
|
}
|
|
@@ -1192,8 +1186,33 @@ getInitDeps_fn = async function(deps, pluginId) {
|
|
|
1192
1186
|
}
|
|
1193
1187
|
return Object.fromEntries(result);
|
|
1194
1188
|
};
|
|
1189
|
+
_addFeature = new WeakSet();
|
|
1190
|
+
addFeature_fn = function(feature) {
|
|
1191
|
+
if (feature.$$type !== "@backstage/BackendFeature") {
|
|
1192
|
+
throw new Error(
|
|
1193
|
+
`Failed to add feature, invalid type '${feature.$$type}'`
|
|
1194
|
+
);
|
|
1195
|
+
}
|
|
1196
|
+
const internalFeature = feature;
|
|
1197
|
+
if (internalFeature.version !== "v1") {
|
|
1198
|
+
throw new Error(
|
|
1199
|
+
`Failed to add feature, invalid version '${internalFeature.version}'`
|
|
1200
|
+
);
|
|
1201
|
+
}
|
|
1202
|
+
__privateGet$3(this, _features).push(internalFeature);
|
|
1203
|
+
};
|
|
1195
1204
|
_doStart = new WeakSet();
|
|
1196
1205
|
doStart_fn = async function() {
|
|
1206
|
+
const featureDiscovery = await __privateGet$3(this, _serviceHolder).get(
|
|
1207
|
+
alpha.featureDiscoveryServiceRef,
|
|
1208
|
+
"root"
|
|
1209
|
+
);
|
|
1210
|
+
if (featureDiscovery) {
|
|
1211
|
+
const { features } = await featureDiscovery.getBackendFeatures();
|
|
1212
|
+
for (const feature of features) {
|
|
1213
|
+
__privateMethod$2(this, _addFeature, addFeature_fn).call(this, feature);
|
|
1214
|
+
}
|
|
1215
|
+
}
|
|
1197
1216
|
for (const ref of __privateGet$3(this, _serviceHolder).getServiceRefs()) {
|
|
1198
1217
|
if (ref.scope === "root") {
|
|
1199
1218
|
await __privateGet$3(this, _serviceHolder).get(ref, "root");
|
|
@@ -1565,7 +1584,7 @@ function createSpecializedBackend(options) {
|
|
|
1565
1584
|
const cacheServiceFactory = backendPluginApi.createServiceFactory({
|
|
1566
1585
|
service: backendPluginApi.coreServices.cache,
|
|
1567
1586
|
deps: {
|
|
1568
|
-
config: backendPluginApi.coreServices.
|
|
1587
|
+
config: backendPluginApi.coreServices.rootConfig,
|
|
1569
1588
|
plugin: backendPluginApi.coreServices.pluginMetadata
|
|
1570
1589
|
},
|
|
1571
1590
|
async createRootContext({ config }) {
|
|
@@ -1576,9 +1595,9 @@ const cacheServiceFactory = backendPluginApi.createServiceFactory({
|
|
|
1576
1595
|
}
|
|
1577
1596
|
});
|
|
1578
1597
|
|
|
1579
|
-
const
|
|
1598
|
+
const rootConfigServiceFactory = backendPluginApi.createServiceFactory(
|
|
1580
1599
|
(options) => ({
|
|
1581
|
-
service: backendPluginApi.coreServices.
|
|
1600
|
+
service: backendPluginApi.coreServices.rootConfig,
|
|
1582
1601
|
deps: {},
|
|
1583
1602
|
async factory() {
|
|
1584
1603
|
const source = configLoader.ConfigSources.default({
|
|
@@ -1594,7 +1613,7 @@ const configServiceFactory = backendPluginApi.createServiceFactory(
|
|
|
1594
1613
|
const databaseServiceFactory = backendPluginApi.createServiceFactory({
|
|
1595
1614
|
service: backendPluginApi.coreServices.database,
|
|
1596
1615
|
deps: {
|
|
1597
|
-
config: backendPluginApi.coreServices.
|
|
1616
|
+
config: backendPluginApi.coreServices.rootConfig,
|
|
1598
1617
|
lifecycle: backendPluginApi.coreServices.lifecycle,
|
|
1599
1618
|
pluginMetadata: backendPluginApi.coreServices.pluginMetadata
|
|
1600
1619
|
},
|
|
@@ -1618,7 +1637,7 @@ const databaseServiceFactory = backendPluginApi.createServiceFactory({
|
|
|
1618
1637
|
const discoveryServiceFactory = backendPluginApi.createServiceFactory({
|
|
1619
1638
|
service: backendPluginApi.coreServices.discovery,
|
|
1620
1639
|
deps: {
|
|
1621
|
-
config: backendPluginApi.coreServices.
|
|
1640
|
+
config: backendPluginApi.coreServices.rootConfig
|
|
1622
1641
|
},
|
|
1623
1642
|
async factory({ config }) {
|
|
1624
1643
|
return backendCommon.HostDiscovery.fromConfig(config);
|
|
@@ -1719,7 +1738,7 @@ const loggerServiceFactory = backendPluginApi.createServiceFactory({
|
|
|
1719
1738
|
const permissionsServiceFactory = backendPluginApi.createServiceFactory({
|
|
1720
1739
|
service: backendPluginApi.coreServices.permissions,
|
|
1721
1740
|
deps: {
|
|
1722
|
-
config: backendPluginApi.coreServices.
|
|
1741
|
+
config: backendPluginApi.coreServices.rootConfig,
|
|
1723
1742
|
discovery: backendPluginApi.coreServices.discovery,
|
|
1724
1743
|
tokenManager: backendPluginApi.coreServices.tokenManager
|
|
1725
1744
|
},
|
|
@@ -1839,7 +1858,7 @@ const rootHttpRouterServiceFactory = backendPluginApi.createServiceFactory(
|
|
|
1839
1858
|
(options) => ({
|
|
1840
1859
|
service: backendPluginApi.coreServices.rootHttpRouter,
|
|
1841
1860
|
deps: {
|
|
1842
|
-
config: backendPluginApi.coreServices.
|
|
1861
|
+
config: backendPluginApi.coreServices.rootConfig,
|
|
1843
1862
|
rootLogger: backendPluginApi.coreServices.rootLogger,
|
|
1844
1863
|
lifecycle: backendPluginApi.coreServices.rootLifecycle
|
|
1845
1864
|
},
|
|
@@ -1872,7 +1891,7 @@ const rootHttpRouterServiceFactory = backendPluginApi.createServiceFactory(
|
|
|
1872
1891
|
const rootLoggerServiceFactory = backendPluginApi.createServiceFactory({
|
|
1873
1892
|
service: backendPluginApi.coreServices.rootLogger,
|
|
1874
1893
|
deps: {
|
|
1875
|
-
config: backendPluginApi.coreServices.
|
|
1894
|
+
config: backendPluginApi.coreServices.rootConfig
|
|
1876
1895
|
},
|
|
1877
1896
|
async factory({ config }) {
|
|
1878
1897
|
var _a;
|
|
@@ -1910,7 +1929,7 @@ const schedulerServiceFactory = backendPluginApi.createServiceFactory({
|
|
|
1910
1929
|
const tokenManagerServiceFactory = backendPluginApi.createServiceFactory({
|
|
1911
1930
|
service: backendPluginApi.coreServices.tokenManager,
|
|
1912
1931
|
deps: {
|
|
1913
|
-
config: backendPluginApi.coreServices.
|
|
1932
|
+
config: backendPluginApi.coreServices.rootConfig,
|
|
1914
1933
|
logger: backendPluginApi.coreServices.rootLogger
|
|
1915
1934
|
},
|
|
1916
1935
|
createRootContext({ config, logger }) {
|
|
@@ -1926,7 +1945,7 @@ const tokenManagerServiceFactory = backendPluginApi.createServiceFactory({
|
|
|
1926
1945
|
const urlReaderServiceFactory = backendPluginApi.createServiceFactory({
|
|
1927
1946
|
service: backendPluginApi.coreServices.urlReader,
|
|
1928
1947
|
deps: {
|
|
1929
|
-
config: backendPluginApi.coreServices.
|
|
1948
|
+
config: backendPluginApi.coreServices.rootConfig,
|
|
1930
1949
|
logger: backendPluginApi.coreServices.logger
|
|
1931
1950
|
},
|
|
1932
1951
|
async factory({ config, logger }) {
|
|
@@ -1941,7 +1960,6 @@ exports.DefaultRootHttpRouter = DefaultRootHttpRouter;
|
|
|
1941
1960
|
exports.MiddlewareFactory = MiddlewareFactory;
|
|
1942
1961
|
exports.WinstonLogger = WinstonLogger;
|
|
1943
1962
|
exports.cacheServiceFactory = cacheServiceFactory;
|
|
1944
|
-
exports.configServiceFactory = configServiceFactory;
|
|
1945
1963
|
exports.createConfigSecretEnumerator = createConfigSecretEnumerator;
|
|
1946
1964
|
exports.createHttpServer = createHttpServer;
|
|
1947
1965
|
exports.createLifecycleMiddleware = createLifecycleMiddleware;
|
|
@@ -1957,6 +1975,7 @@ exports.permissionsServiceFactory = permissionsServiceFactory;
|
|
|
1957
1975
|
exports.readCorsOptions = readCorsOptions;
|
|
1958
1976
|
exports.readHelmetOptions = readHelmetOptions;
|
|
1959
1977
|
exports.readHttpServerOptions = readHttpServerOptions;
|
|
1978
|
+
exports.rootConfigServiceFactory = rootConfigServiceFactory;
|
|
1960
1979
|
exports.rootHttpRouterServiceFactory = rootHttpRouterServiceFactory;
|
|
1961
1980
|
exports.rootLifecycleServiceFactory = rootLifecycleServiceFactory;
|
|
1962
1981
|
exports.rootLoggerServiceFactory = rootLoggerServiceFactory;
|