Team, any hint how to resolve this error? doing steps from this link
I am trying to build sonarqube integration with backstage and i get this error.
import {
createRouter,
DefaultSonarqubeInfoProvider,
} from '@backstage/plugin-sonarqube-backend';
import { Router } from 'express';
// import { PluginEnvironment } from '../types';
import { PluginEnvironment } from '@backstage/types';
export default async function createPlugin(
env: PluginEnvironment,
): Promise<Router> {
return await createRouter({
logger: env.logger,
sonarqubeInfoProvider: DefaultSonarqubeInfoProvider.fromConfig(env.config),
});
}
cannot import PluginEnvironment from @backstage/types
error on dev
sudo yarn install && sudo yarn dev --verbose
[1] /******/ throw e;
[1] ^
[1]
[1] Error: Cannot find module './plugins/sonarqube'
[1] at webpackMissingModule (webpack-internal:///./src/index.ts:17:50)
[1] at eval (webpack-internal:///./src/index.ts:17:144)
[1] at ./src/index.ts (/Users/teamy/code/nvidia/gitlab-master/backstage/packages/backend/dist/main.js:19:1)
[1] at __webpack_require__ (/Users/teamy/code/nvidia/gitlab-master/backstage/packages/backend/dist/main.js:386:33)
[1] at /Users/teamy/code/nvidia/gitlab-master/backstage/packages/backend/dist/main.js:1395:37
[1] at Object.<anonymous> (/Users/teamy/code/nvidia/gitlab-master/backstage/packages/backend/dist/main.js:1397:12)
[1] at Module._compile (node:internal/modules/cjs/loader:1256:14)
[1] at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
[1] at Module.load (node:internal/modules/cjs/loader:1119:32)
[1] at Module._load (node:internal/modules/cjs/loader:960:12) {
[1] code: 'MODULE_NOT_FOUND'
[1] }
[1]
[1] Node.js v18.18.0
[0] webpack compiled successfully
and my local types.ts does show that
cat packages/backend/src/types.ts
import { Logger } from 'winston';
import { Config } from '@backstage/config';
import {
PluginCacheManager,
PluginDatabaseManager,
PluginEndpointDiscovery,
TokenManager,
UrlReader,
} from '@backstage/backend-common';
import { PluginTaskScheduler } from '@backstage/backend-tasks';
import { PermissionEvaluator } from '@backstage/plugin-permission-common';
import { IdentityApi } from '@backstage/plugin-auth-node';
export type PluginEnvironment = {
logger: Logger;
database: PluginDatabaseManager;
cache: PluginCacheManager;
config: Config;
reader: UrlReader;
discovery: PluginEndpointDiscovery;
tokenManager: TokenManager;
scheduler: PluginTaskScheduler;
permissions: PermissionEvaluator;
identity: IdentityApi;
};