Inject tokenManager into plugin environment

Signed-off-by: Nataliya Issayeva <nissayeva@users.noreply.github.com>
This commit is contained in:
Nataliya Issayeva
2021-10-26 15:50:40 -04:00
parent 883b9ad29f
commit 4f066c3be6
3 changed files with 6 additions and 1 deletions
@@ -14,4 +14,5 @@
* limitations under the License.
*/
export { AuthIdentityTokenManager } from './AuthIdentityTokenManager';
export type { TokenManager } from './types';
@@ -17,6 +17,7 @@ import {
DatabaseManager,
SingleHostDiscovery,
UrlReaders,
AuthIdentityTokenManager,
} from '@backstage/backend-common';
import { Config } from '@backstage/config';
import app from './plugins/app';
@@ -37,12 +38,13 @@ function makeCreateEnv(config: Config) {
const cacheManager = CacheManager.fromConfig(config);
const databaseManager = DatabaseManager.fromConfig(config);
const tokenManager = new AuthIdentityTokenManager(discovery);
return (plugin: string): PluginEnvironment => {
const logger = root.child({ type: 'plugin', plugin });
const database = databaseManager.forPlugin(plugin);
const cache = cacheManager.forPlugin(plugin);
return { logger, database, cache, config, reader, discovery };
return { logger, database, cache, config, reader, discovery, tokenManager };
};
}
@@ -1,6 +1,7 @@
import { Logger } from 'winston';
import { Config } from '@backstage/config';
import {
AuthIdentityTokenManager,
PluginCacheManager,
PluginDatabaseManager,
PluginEndpointDiscovery,
@@ -14,4 +15,5 @@ export type PluginEnvironment = {
config: Config;
reader: UrlReader;
discovery: PluginEndpointDiscovery;
tokenManager: AuthIdentityTokenManager;
};