diff --git a/packages/create-app/templates/default-app/app-config.yaml.hbs b/packages/create-app/templates/default-app/app-config.yaml.hbs index a8e1e194a0..aff375ad29 100644 --- a/packages/create-app/templates/default-app/app-config.yaml.hbs +++ b/packages/create-app/templates/default-app/app-config.yaml.hbs @@ -42,7 +42,7 @@ proxy: changeOrigin: true techdocs: - storageUrl: https://techdocs-mock-sites.storage.googleapis.com + storageUrl: http://localhost:7000/techdocs/static/docs auth: providers: {} diff --git a/packages/create-app/templates/default-app/packages/app/package.json.hbs b/packages/create-app/templates/default-app/packages/app/package.json.hbs index 57e705d4fc..7d34a94c7b 100644 --- a/packages/create-app/templates/default-app/packages/app/package.json.hbs +++ b/packages/create-app/templates/default-app/packages/app/package.json.hbs @@ -10,6 +10,7 @@ "@backstage/plugin-catalog": "^{{version}}", "@backstage/plugin-register-component": "^{{version}}", "@backstage/plugin-scaffolder": "^{{version}}", + "@backstage/plugin-techdocs": "^{{version}}", "@backstage/test-utils": "^{{version}}", "@backstage/theme": "^{{version}}", "history": "^5.0.0", diff --git a/packages/create-app/templates/default-app/packages/app/src/App.test.tsx b/packages/create-app/templates/default-app/packages/app/src/App.test.tsx index a05924ee00..e88c3b47dd 100644 --- a/packages/create-app/templates/default-app/packages/app/src/App.test.tsx +++ b/packages/create-app/templates/default-app/packages/app/src/App.test.tsx @@ -11,6 +11,9 @@ describe('App', () => { data: { app: { title: 'Test' }, backend: { baseUrl: 'http://localhost:7000' }, + techdocs: { + storageUrl: 'http://localhost:7000/techdocs/static/docs', + }, }, context: 'test', }, diff --git a/packages/create-app/templates/default-app/packages/app/src/apis.ts b/packages/create-app/templates/default-app/packages/app/src/apis.ts index 4cc2ebe03a..7fc59cc9d7 100644 --- a/packages/create-app/templates/default-app/packages/app/src/apis.ts +++ b/packages/create-app/templates/default-app/packages/app/src/apis.ts @@ -18,11 +18,17 @@ import { catalogApiRef, CatalogClient } from '@backstage/plugin-catalog'; import { scaffolderApiRef, ScaffolderApi } from '@backstage/plugin-scaffolder'; +import { + techdocsStorageApiRef, + TechDocsStorageApi, +} from '@backstage/plugin-techdocs'; + export const apis = (config: ConfigApi) => { // eslint-disable-next-line no-console console.log(`Creating APIs for ${config.getString('app.title')}`); const backendUrl = config.getString('backend.baseUrl'); + const techdocsStorageUrl = config.getString('techdocs.storageUrl'); const builder = ApiRegistry.builder(); @@ -43,5 +49,10 @@ export const apis = (config: ConfigApi) => { builder.add(scaffolderApiRef, new ScaffolderApi({ discoveryApi })); + builder.add( + techdocsStorageApiRef, + new TechDocsStorageApi({ apiOrigin: techdocsStorageUrl }), + ); + return builder.build(); }; diff --git a/packages/create-app/templates/default-app/packages/app/src/plugins.ts b/packages/create-app/templates/default-app/packages/app/src/plugins.ts index 4063fb509b..f6bef70188 100644 --- a/packages/create-app/templates/default-app/packages/app/src/plugins.ts +++ b/packages/create-app/templates/default-app/packages/app/src/plugins.ts @@ -1,3 +1,4 @@ export { plugin as CatalogPlugin } from '@backstage/plugin-catalog'; export { plugin as RegisterComponent } from '@backstage/plugin-register-component'; export { plugin as ScaffolderPlugin } from '@backstage/plugin-scaffolder'; +export { plugin as TechDocsPlugin } from '@backstage/plugin-techdocs'; diff --git a/packages/create-app/templates/default-app/packages/app/src/sidebar.tsx b/packages/create-app/templates/default-app/packages/app/src/sidebar.tsx index 69ba469130..6520dfbe6e 100644 --- a/packages/create-app/templates/default-app/packages/app/src/sidebar.tsx +++ b/packages/create-app/templates/default-app/packages/app/src/sidebar.tsx @@ -1,5 +1,6 @@ import React from 'react'; import HomeIcon from '@material-ui/icons/Home'; +import LibraryBooks from '@material-ui/icons/LibraryBooks'; import CreateComponentIcon from '@material-ui/icons/AddCircleOutline'; import { Sidebar, @@ -17,6 +18,7 @@ export const AppSidebar = () => ( {/* Global nav, not org-specific */} + {/* End global nav */} diff --git a/packages/create-app/templates/default-app/packages/backend/src/plugins/techdocs.ts b/packages/create-app/templates/default-app/packages/backend/src/plugins/techdocs.ts index a7b713fcb6..dfd9eb5e33 100644 --- a/packages/create-app/templates/default-app/packages/backend/src/plugins/techdocs.ts +++ b/packages/create-app/templates/default-app/packages/backend/src/plugins/techdocs.ts @@ -1,6 +1,7 @@ import { createRouter, DirectoryPreparer, + GithubPreparer, Preparers, Generators, LocalPublish, @@ -15,12 +16,15 @@ export default async function createPlugin({ }: PluginEnvironment) { const generators = new Generators(); const techdocsGenerator = new TechdocsGenerator(logger); + generators.register('techdocs', techdocsGenerator); - const directoryPreparer = new DirectoryPreparer(logger); const preparers = new Preparers(); + const directoryPreparer = new DirectoryPreparer(logger); + const githubPreparer = new GithubPreparer(logger); preparers.register('dir', directoryPreparer); + preparers.register('github', githubPreparer); const publisher = new LocalPublish(logger);