Merge pull request #2697 from lowjoel/database-refactor

refactor: Expose types to handle Database management
This commit is contained in:
Fredrik Adelöw
2020-10-09 07:16:26 +02:00
committed by GitHub
16 changed files with 275 additions and 57 deletions
+5 -3
View File
@@ -17,7 +17,6 @@
import express from 'express';
import Router from 'express-promise-router';
import cookieParser from 'cookie-parser';
import Knex from 'knex';
import { Logger } from 'winston';
import { createAuthProvider } from '../providers';
import { Config } from '@backstage/config';
@@ -25,11 +24,12 @@ import { DatabaseKeyStore, TokenFactory, createOidcRouter } from '../identity';
import {
NotFoundError,
PluginEndpointDiscovery,
PluginDatabaseManager,
} from '@backstage/backend-common';
export interface RouterOptions {
logger: Logger;
database: Knex;
database: PluginDatabaseManager;
config: Config;
discovery: PluginEndpointDiscovery;
}
@@ -47,7 +47,9 @@ export async function createRouter({
const keyDurationSeconds = 3600;
const keyStore = await DatabaseKeyStore.create({ database });
const keyStore = await DatabaseKeyStore.create({
database: await database.getClient(),
});
const tokenIssuer = new TokenFactory({
issuer: authUrl,
keyStore,
@@ -53,7 +53,11 @@ export async function startStandaloneServer(
const router = await createRouter({
logger,
config,
database,
database: {
async getClient() {
return database;
},
},
discovery,
});