Merge pull request #5772 from backstage/iameap/expose-cache-some

Expose cache management in create-app
This commit is contained in:
Eric Peterson
2021-05-26 18:26:44 +02:00
committed by GitHub
7 changed files with 108 additions and 1 deletions
@@ -34,6 +34,8 @@ backend:
#ca: # if you have a CA file and want to verify it you can uncomment this section
# $file: <file-path>/ca/server.crt
{{/if}}
cache:
store: memory
# workingDirectory: /tmp # Use this to configure a working directory for the scaffolder, defaults to the OS temp-dir
integrations:
@@ -13,6 +13,7 @@ import {
getRootLogger,
useHotMemoize,
notFoundHandler,
CacheManager,
SingleConnectionDatabaseManager,
SingleHostDiscovery,
UrlReaders,
@@ -34,11 +35,13 @@ function makeCreateEnv(config: Config) {
root.info(`Created UrlReader ${reader}`);
const databaseManager = SingleConnectionDatabaseManager.fromConfig(config);
const cacheManager = CacheManager.fromConfig(config);
return (plugin: string): PluginEnvironment => {
const logger = root.child({ type: 'plugin', plugin });
const database = databaseManager.forPlugin(plugin);
return { logger, database, config, reader, discovery };
const cache = cacheManager.forPlugin(plugin);
return { logger, database, cache, config, reader, discovery };
};
}
@@ -1,6 +1,7 @@
import { Logger } from 'winston';
import { Config } from '@backstage/config';
import {
PluginCacheManager,
PluginDatabaseManager,
PluginEndpointDiscovery,
UrlReader,
@@ -9,6 +10,7 @@ import {
export type PluginEnvironment = {
logger: Logger;
database: PluginDatabaseManager;
cache: PluginCacheManager;
config: Config;
reader: UrlReader
discovery: PluginEndpointDiscovery;