Register the to the DevApp fixing the issue to launch locally the plugin. Add a new section to the plugin scaffolder README. #23684

Signed-off-by: cmoulliard <cmoulliard@redhat.com>
This commit is contained in:
cmoulliard
2024-05-02 09:57:49 +02:00
parent 32cc4e6468
commit faa86f3981
3 changed files with 20 additions and 12 deletions
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder': patch
---
Register the `catalogPlugin` to the DevApp fixing the issue to launch locally the plugin
+9
View File
@@ -121,6 +121,15 @@ export const apis: AnyApiFactory[] = [
This replaces the default implementation of the `scaffolderApiRef`.
### Local development
When you develop a new template, action or new `<ScaffolderFieldExtensions/>`, then we recommend
to launch the plugin locally using the `createDevApp` of the `./dev/index.tsx` file for testing/Debugging purposes
To play with it, open a terminal and run the command: `yarn start` within the `./plugins/scaffolder` folder
**NOTE:** Don't forget to open a second terminal and to launch the backend or [backend-next](../../docs/backend-system/index.md) there, using `yarn start` and to specify the locations of the templates to play with !
## Links
- [scaffolder-backend](https://github.com/backstage/backstage/tree/master/plugins/scaffolder-backend)
+6 -12
View File
@@ -14,11 +14,9 @@
* limitations under the License.
*/
import { CatalogClient } from '@backstage/catalog-client';
import { createDevApp } from '@backstage/dev-utils';
import { scmIntegrationsApiRef } from '@backstage/integration-react';
import {
catalogApiRef,
starredEntitiesApiRef,
MockStarredEntitiesApi,
} from '@backstage/plugin-catalog-react';
@@ -30,18 +28,10 @@ import {
fetchApiRef,
identityApiRef,
} from '@backstage/core-plugin-api';
import { CatalogEntityPage } from '@backstage/plugin-catalog';
import { CatalogEntityPage, catalogPlugin } from '@backstage/plugin-catalog';
createDevApp()
.addPage({
path: '/catalog/:kind/:namespace/:name',
element: <CatalogEntityPage />,
})
.registerApi({
api: catalogApiRef,
deps: { discoveryApi: discoveryApiRef },
factory: ({ discoveryApi }) => new CatalogClient({ discoveryApi }),
})
.registerPlugin(catalogPlugin)
.registerApi({
api: starredEntitiesApiRef,
deps: {},
@@ -63,6 +53,10 @@ createDevApp()
identityApi,
}),
})
.addPage({
path: '/catalog/:kind/:namespace/:name',
element: <CatalogEntityPage />,
})
.addPage({
path: '/create',
title: 'Create',