create-app: Update techdocs-backend, add changesets

This commit is contained in:
Himanshu Mishra
2020-12-17 11:17:25 +01:00
parent 2ac77aeec2
commit a8573e53b9
3 changed files with 60 additions and 15 deletions
@@ -1,10 +1,7 @@
import {
createRouter,
DirectoryPreparer,
Preparers,
Generators,
TechdocsGenerator,
CommonGitPreparer,
Publisher,
} from '@backstage/plugin-techdocs-backend';
import { PluginEnvironment } from '../types';
@@ -14,22 +11,28 @@ export default async function createPlugin({
logger,
config,
discovery,
reader,
}: PluginEnvironment) {
const generators = new Generators();
const techdocsGenerator = new TechdocsGenerator(logger, config);
// Preparers are responsible for fetching source files for documentation.
const preparers = await Preparers.fromConfig(config, {
logger,
reader,
});
generators.register('techdocs', techdocsGenerator);
// Generators are used for generating documentation sites.
const generators = await Generators.fromConfig(config, {
logger,
});
const preparers = new Preparers();
const directoryPreparer = new DirectoryPreparer(logger);
const commonGitPreparer = new CommonGitPreparer(logger);
preparers.register('dir', directoryPreparer);
preparers.register('github', commonGitPreparer);
preparers.register('gitlab', commonGitPreparer);
const publisher = Publisher.fromConfig(config, logger, discovery);
// Publisher is used for
// 1. Publishing generated files to storage
// 2. Fetching files from storage and passing them to TechDocs frontend.
const publisher = await Publisher.fromConfig(config, {
logger,
discovery,
});
// Docker client (conditionally) used by the generators, based on techdocs.generators config.
const dockerClient = new Docker();
return await createRouter({