Merge remote-tracking branch 'upstream/master' into upgrade-techdocs-sdk-v3

Signed-off-by: Clare Liguori <liguori@amazon.com>
This commit is contained in:
Clare Liguori
2022-11-25 11:44:46 -08:00
808 changed files with 17550 additions and 4277 deletions
+9
View File
@@ -0,0 +1,9 @@
---
'@backstage/plugin-catalog-graph': patch
'@backstage/plugin-pagerduty': patch
'@backstage/plugin-scaffolder-backend': patch
'@backstage/plugin-splunk-on-call': patch
'@backstage/plugin-techdocs-react': patch
---
Internal refactor to improve tests
+11
View File
@@ -0,0 +1,11 @@
---
'@backstage/plugin-scaffolder': patch
---
Enabling the customization of the last step in the scaffolder template.
To override the content you have to do the next:
```typescript jsx
<TemplatePage ReviewStepComponent={YourCustomComponent} />
```
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/catalog-client': minor
---
**BREAKING PRODUCERS**: Added a new `getEntitiesByRefs` endpoint to `CatalogApi`, for efficient batch fetching of entities by ref.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/repo-tools': minor
---
Introducing repo-tools package
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend': patch
---
Do not use deprecated `LocationSpec` from the `@backstage/plugin-catalog-node` package
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend-module-github': patch
---
Fixes the assignment of group member references in `GithubMultiOrgProcessor` so membership relations are resolved correctly.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/create-app': patch
---
Bumped create-app version.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder': patch
---
Initialize all `formData` in the `Stepper` in `/next`
+15
View File
@@ -0,0 +1,15 @@
---
'@backstage/backend-common': patch
'@backstage/core-app-api': patch
'@backstage/core-components': patch
'@backstage/version-bridge': patch
'@backstage/plugin-analytics-module-ga': patch
'@backstage/plugin-catalog': patch
'@backstage/plugin-cloudbuild': patch
'@backstage/plugin-gcp-projects': patch
'@backstage/plugin-github-actions': patch
'@backstage/plugin-graphiql': patch
'@backstage/plugin-techdocs': patch
---
Internal fixes to avoid implicit usage of globals
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-org-react': patch
---
Bug fixes and adding the possibility to add a default value for the `GroupListPicker`. Fixes: Vertical size jump on text entry, left align for text, selecting a value closes the popup, auto focus on the popup when opening
+8
View File
@@ -0,0 +1,8 @@
---
'@backstage/plugin-catalog-backend': minor
---
Added new `POST /entities/by-refs` endpoint, which allows you to efficiently
batch-fetch entities by their entity ref. This can be useful e.g. in graphql
resolvers or similar contexts where you need to fetch many entities at the same
time.
+21
View File
@@ -0,0 +1,21 @@
---
'@backstage/plugin-events-backend': minor
---
**BREAKING:** Remove required field `router` at `HttpPostIngressEventPublisher.fromConfig`
and replace it with `bind(router: Router)`.
Additionally, the path prefix `/http` will be added inside `HttpPostIngressEventPublisher`.
```diff
// at packages/backend/src/plugins/events.ts
const eventsRouter = Router();
- const httpRouter = Router();
- eventsRouter.use('/http', httpRouter);
const http = HttpPostIngressEventPublisher.fromConfig({
config: env.config,
logger: env.logger,
- router: httpRouter,
});
+ http.bind(eventsRouter);
```
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-techdocs-node': patch
---
Bump dependency @azure/identity to next minor
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-cost-insights': patch
---
Provide the ability to change the base currency from USD to any other currency in cost insights plugin
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder-backend': patch
---
Use Json types from @backstage/types
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/cli': patch
---
Bump `msw` version in default plugin/app templates
+6
View File
@@ -0,0 +1,6 @@
---
'@backstage/test-utils': patch
---
The test utility for the plugin context called `MockPluginProvider` has been created. It will be handy in the cases when you use
`__experimentalConfigure` in your plugin. It is experimental and exported through `@backstage/test-utils/alpha`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-kafka-backend': patch
---
Internal tweak to adapt to `kafkajs` 2.2.3
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-cost-insights': patch
---
Internal refactor to avoid usage of deprecated symbols
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/core-components': patch
---
Create a variable for minimum height and add a prop named 'fit' for determining if the graph height should grow or be contained.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/backend-common': patch
---
exported KubernetesContainerRunner, KubernetesContainerRunnerOptions, KubernetesContainerRunnerMountBase
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend-module-incremental-ingestion': minor
---
Introduces incremental entity providers, which are used for streaming very large data sources into the catalog.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/core-components': patch
---
Add items prop to SupportButton. This prop can be used to override the items that would otherwise be grabbed from the config.
+12
View File
@@ -0,0 +1,12 @@
---
'@backstage/plugin-events-backend-module-github': patch
---
Add `createGithubSignatureValidator(config)` which can be used
to create a validator used at an ingress for topic `github`.
On top, there is a new `githubWebhookEventsModule` for the new backend plugin API
which auto-registers the `HttpPostIngress` for topic `github` incl. the validator.
Please find more information at
https://github.com/backstage/backstage/tree/master/plugins/events-backend-module-github/README.md.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-jenkins-backend': patch
---
Remove unnecessary dependency promise-any-polyfill
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-explore': patch
---
Adds styling to graph forcing it to always fill out the available space.
+9
View File
@@ -0,0 +1,9 @@
---
'@backstage/plugin-events-backend': patch
'@backstage/plugin-events-node': minor
---
Introduce a new interface `RequestDetails` to abstract `Request`
providing access to request body and headers.
**BREAKING:** Replace `request: Request` with `request: RequestDetails` at `RequestValidator`.
+14
View File
@@ -0,0 +1,14 @@
---
'@backstage/plugin-catalog-backend-module-github': patch
---
Handle GitHub `push` events at the `GithubEntityProvider` by subscribing to the topic `github.push.`
Implements `EventSubscriber` to receive events for the topic `github.push`.
On `github.push`, the affected repository will be refreshed.
This includes adding new Location entities, refreshing existing ones,
and removing obsolete ones.
Please find more information at
https://backstage.io/docs/integrations/github/discovery#installation-with-events-support
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/backend-app-api': patch
---
Added `lifecycleFactory` implementation.
+234
View File
@@ -0,0 +1,234 @@
{
"mode": "pre",
"tag": "next",
"initialVersions": {
"example-app": "0.2.77",
"@backstage/app-defaults": "1.0.8",
"example-backend": "0.2.77",
"@backstage/backend-app-api": "0.2.3",
"@backstage/backend-common": "0.16.0",
"@backstage/backend-defaults": "0.1.3",
"example-backend-next": "0.0.5",
"@backstage/backend-plugin-api": "0.1.4",
"@backstage/backend-tasks": "0.3.7",
"@backstage/backend-test-utils": "0.1.30",
"@backstage/catalog-client": "1.1.2",
"@backstage/catalog-model": "1.1.3",
"@backstage/cli": "0.21.0",
"@backstage/cli-common": "0.1.10",
"@backstage/codemods": "0.1.41",
"@backstage/config": "1.0.4",
"@backstage/config-loader": "1.1.6",
"@backstage/core-app-api": "1.2.0",
"@backstage/core-components": "0.12.0",
"@backstage/core-plugin-api": "1.1.0",
"@backstage/create-app": "0.4.34",
"@backstage/dev-utils": "1.0.8",
"e2e-test": "0.2.0",
"@backstage/errors": "1.1.3",
"@backstage/integration": "1.4.0",
"@backstage/integration-react": "1.1.6",
"@backstage/release-manifests": "0.0.7",
"@backstage/repo-tools": "0.0.0",
"@techdocs/cli": "1.2.3",
"techdocs-cli-embedded-app": "0.2.76",
"@backstage/test-utils": "1.2.2",
"@backstage/theme": "0.2.16",
"@backstage/types": "1.0.1",
"@backstage/version-bridge": "1.0.2",
"@backstage/plugin-adr": "0.2.3",
"@backstage/plugin-adr-backend": "0.2.3",
"@backstage/plugin-adr-common": "0.2.3",
"@backstage/plugin-airbrake": "0.3.11",
"@backstage/plugin-airbrake-backend": "0.2.11",
"@backstage/plugin-allure": "0.1.27",
"@backstage/plugin-analytics-module-ga": "0.1.22",
"@backstage/plugin-apache-airflow": "0.2.4",
"@backstage/plugin-api-docs": "0.8.11",
"@backstage/plugin-api-docs-module-protoc-gen-doc": "0.1.0",
"@backstage/plugin-apollo-explorer": "0.1.4",
"@backstage/plugin-app-backend": "0.3.38",
"@backstage/plugin-auth-backend": "0.17.1",
"@backstage/plugin-auth-node": "0.2.7",
"@backstage/plugin-azure-devops": "0.2.2",
"@backstage/plugin-azure-devops-backend": "0.3.17",
"@backstage/plugin-azure-devops-common": "0.3.0",
"@backstage/plugin-azure-sites": "0.1.0",
"@backstage/plugin-azure-sites-backend": "0.1.0",
"@backstage/plugin-azure-sites-common": "0.1.0",
"@backstage/plugin-badges": "0.2.35",
"@backstage/plugin-badges-backend": "0.1.32",
"@backstage/plugin-bazaar": "0.2.0",
"@backstage/plugin-bazaar-backend": "0.2.1",
"@backstage/plugin-bitbucket-cloud-common": "0.2.1",
"@backstage/plugin-bitrise": "0.1.38",
"@backstage/plugin-catalog": "1.6.1",
"@backstage/plugin-catalog-backend": "1.5.1",
"@backstage/plugin-catalog-backend-module-aws": "0.1.11",
"@backstage/plugin-catalog-backend-module-azure": "0.1.9",
"@backstage/plugin-catalog-backend-module-bitbucket": "0.2.5",
"@backstage/plugin-catalog-backend-module-bitbucket-cloud": "0.1.5",
"@backstage/plugin-catalog-backend-module-bitbucket-server": "0.1.3",
"@backstage/plugin-catalog-backend-module-gerrit": "0.1.6",
"@backstage/plugin-catalog-backend-module-github": "0.2.0",
"@backstage/plugin-catalog-backend-module-gitlab": "0.1.9",
"@backstage/plugin-catalog-backend-module-ldap": "0.5.5",
"@backstage/plugin-catalog-backend-module-msgraph": "0.4.4",
"@backstage/plugin-catalog-backend-module-openapi": "0.1.4",
"@backstage/plugin-catalog-common": "1.0.8",
"@internal/plugin-catalog-customized": "0.0.4",
"@backstage/plugin-catalog-graph": "0.2.23",
"@backstage/plugin-catalog-graphql": "0.3.15",
"@backstage/plugin-catalog-import": "0.9.1",
"@backstage/plugin-catalog-node": "1.2.1",
"@backstage/plugin-catalog-react": "1.2.1",
"@backstage/plugin-cicd-statistics": "0.1.13",
"@backstage/plugin-cicd-statistics-module-gitlab": "0.1.7",
"@backstage/plugin-circleci": "0.3.11",
"@backstage/plugin-cloudbuild": "0.3.11",
"@backstage/plugin-code-climate": "0.1.11",
"@backstage/plugin-code-coverage": "0.2.4",
"@backstage/plugin-code-coverage-backend": "0.2.4",
"@backstage/plugin-codescene": "0.1.6",
"@backstage/plugin-config-schema": "0.1.34",
"@backstage/plugin-cost-insights": "0.12.0",
"@backstage/plugin-cost-insights-common": "0.1.1",
"@backstage/plugin-dynatrace": "1.0.1",
"@backstage/plugin-events-backend": "0.1.0",
"@backstage/plugin-events-backend-module-aws-sqs": "0.1.0",
"@backstage/plugin-events-backend-module-azure": "0.1.0",
"@backstage/plugin-events-backend-module-bitbucket-cloud": "0.1.0",
"@backstage/plugin-events-backend-module-gerrit": "0.1.0",
"@backstage/plugin-events-backend-module-github": "0.1.0",
"@backstage/plugin-events-backend-module-gitlab": "0.1.0",
"@backstage/plugin-events-backend-test-utils": "0.1.0",
"@backstage/plugin-events-node": "0.1.0",
"@internal/plugin-todo-list": "1.0.7",
"@internal/plugin-todo-list-backend": "1.0.7",
"@internal/plugin-todo-list-common": "1.0.6",
"@backstage/plugin-explore": "0.3.42",
"@backstage/plugin-explore-react": "0.0.23",
"@backstage/plugin-firehydrant": "0.1.28",
"@backstage/plugin-fossa": "0.2.43",
"@backstage/plugin-gcalendar": "0.3.7",
"@backstage/plugin-gcp-projects": "0.3.30",
"@backstage/plugin-git-release-manager": "0.3.24",
"@backstage/plugin-github-actions": "0.5.11",
"@backstage/plugin-github-deployments": "0.1.42",
"@backstage/plugin-github-issues": "0.2.0",
"@backstage/plugin-github-pull-requests-board": "0.1.5",
"@backstage/plugin-gitops-profiles": "0.3.29",
"@backstage/plugin-gocd": "0.1.17",
"@backstage/plugin-graphiql": "0.2.43",
"@backstage/plugin-graphql-backend": "0.1.28",
"@backstage/plugin-home": "0.4.27",
"@backstage/plugin-ilert": "0.2.0",
"@backstage/plugin-jenkins": "0.7.10",
"@backstage/plugin-jenkins-backend": "0.1.28",
"@backstage/plugin-jenkins-common": "0.1.10",
"@backstage/plugin-kafka": "0.3.11",
"@backstage/plugin-kafka-backend": "0.2.31",
"@backstage/plugin-kubernetes": "0.7.4",
"@backstage/plugin-kubernetes-backend": "0.8.0",
"@backstage/plugin-kubernetes-common": "0.4.4",
"@backstage/plugin-lighthouse": "0.3.11",
"@backstage/plugin-newrelic": "0.3.29",
"@backstage/plugin-newrelic-dashboard": "0.2.4",
"@backstage/plugin-org": "0.6.0",
"@backstage/plugin-org-react": "0.1.0",
"@backstage/plugin-pagerduty": "0.5.4",
"@backstage/plugin-periskop": "0.1.9",
"@backstage/plugin-periskop-backend": "0.1.9",
"@backstage/plugin-permission-backend": "0.5.13",
"@backstage/plugin-permission-common": "0.7.1",
"@backstage/plugin-permission-node": "0.7.1",
"@backstage/plugin-permission-react": "0.4.7",
"@backstage/plugin-playlist": "0.1.2",
"@backstage/plugin-playlist-backend": "0.2.1",
"@backstage/plugin-playlist-common": "0.1.2",
"@backstage/plugin-proxy-backend": "0.2.32",
"@backstage/plugin-rollbar": "0.4.11",
"@backstage/plugin-rollbar-backend": "0.1.35",
"@backstage/plugin-scaffolder": "1.8.0",
"@backstage/plugin-scaffolder-backend": "1.8.0",
"@backstage/plugin-scaffolder-backend-module-cookiecutter": "0.2.13",
"@backstage/plugin-scaffolder-backend-module-rails": "0.4.6",
"@backstage/plugin-scaffolder-backend-module-yeoman": "0.2.11",
"@backstage/plugin-scaffolder-common": "1.2.2",
"@backstage/plugin-search": "1.0.4",
"@backstage/plugin-search-backend": "1.1.1",
"@backstage/plugin-search-backend-module-elasticsearch": "1.0.4",
"@backstage/plugin-search-backend-module-pg": "0.4.2",
"@backstage/plugin-search-backend-node": "1.0.4",
"@backstage/plugin-search-common": "1.1.1",
"@backstage/plugin-search-react": "1.2.1",
"@backstage/plugin-sentry": "0.4.4",
"@backstage/plugin-shortcuts": "0.3.3",
"@backstage/plugin-sonarqube": "0.5.0",
"@backstage/plugin-sonarqube-backend": "0.1.3",
"@backstage/plugin-splunk-on-call": "0.4.0",
"@backstage/plugin-stack-overflow": "0.1.7",
"@backstage/plugin-stack-overflow-backend": "0.1.7",
"@backstage/plugin-tech-insights": "0.3.3",
"@backstage/plugin-tech-insights-backend": "0.5.4",
"@backstage/plugin-tech-insights-backend-module-jsonfc": "0.1.22",
"@backstage/plugin-tech-insights-common": "0.2.8",
"@backstage/plugin-tech-insights-node": "0.3.6",
"@backstage/plugin-tech-radar": "0.5.18",
"@backstage/plugin-techdocs": "1.4.0",
"@backstage/plugin-techdocs-addons-test-utils": "1.0.6",
"@backstage/plugin-techdocs-backend": "1.4.1",
"@backstage/plugin-techdocs-module-addons-contrib": "1.0.6",
"@backstage/plugin-techdocs-node": "1.4.2",
"@backstage/plugin-techdocs-react": "1.0.6",
"@backstage/plugin-todo": "0.2.13",
"@backstage/plugin-todo-backend": "0.1.35",
"@backstage/plugin-user-settings": "0.5.1",
"@backstage/plugin-user-settings-backend": "0.1.2",
"@backstage/plugin-vault": "0.1.5",
"@backstage/plugin-vault-backend": "0.2.4",
"@backstage/plugin-xcmetrics": "0.2.31"
},
"changesets": [
"angry-dingos-lick",
"angry-trees-relax",
"chilly-ads-lay",
"clean-paws-fry",
"clever-pillows-drive",
"clever-rivers-obey",
"create-app-1669131574",
"early-hairs-switch",
"early-parrots-guess",
"fair-walls-talk",
"fast-lies-remain",
"fluffy-walls-approve",
"four-adults-provide",
"funny-numbers-compete",
"gold-icons-cheat",
"gorgeous-hairs-applaud",
"hip-stingrays-kneel",
"itchy-walls-boil",
"modern-mugs-shout",
"new-bugs-march",
"nine-ears-whisper",
"old-keys-leave",
"renovate-3fe8460",
"renovate-4bb70f3",
"renovate-778b2fa",
"rich-garlics-play",
"search-heavy-frogs-confess",
"search-om-manniskan-ginge",
"serious-windows-occur",
"silly-wolves-remember",
"slow-dragons-promise",
"soft-nails-arrive",
"sour-flowers-care",
"sour-plums-grow",
"tender-parrots-cover",
"thin-donuts-join",
"twelve-meals-smell",
"twenty-dodos-wash",
"weak-ears-jam",
"young-turkeys-relax"
]
}
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-org': patch
---
Update `UserProfileCard` and `GroupProfileCard` to not render links unless the `showLinks` prop is set. The primary component for rendering links are the `EntityLinksCard` from plugin-catalog.
+113
View File
@@ -0,0 +1,113 @@
---
'@backstage/backend-common': patch
'@backstage/backend-test-utils': patch
'@backstage/catalog-client': patch
'@backstage/cli': patch
'@backstage/config-loader': patch
'@backstage/core-app-api': patch
'@backstage/core-components': patch
'@backstage/core-plugin-api': patch
'@backstage/integration-react': patch
'@backstage/integration': patch
'@backstage/release-manifests': patch
'@backstage/test-utils': patch
'@backstage/plugin-adr-backend': patch
'@backstage/plugin-adr': patch
'@backstage/plugin-airbrake-backend': patch
'@backstage/plugin-airbrake': patch
'@backstage/plugin-allure': patch
'@backstage/plugin-analytics-module-ga': patch
'@backstage/plugin-apache-airflow': patch
'@backstage/plugin-api-docs': patch
'@backstage/plugin-apollo-explorer': patch
'@backstage/plugin-app-backend': patch
'@backstage/plugin-auth-backend': patch
'@backstage/plugin-auth-node': patch
'@backstage/plugin-azure-devops-backend': patch
'@backstage/plugin-azure-devops': patch
'@backstage/plugin-azure-sites-backend': patch
'@backstage/plugin-azure-sites': patch
'@backstage/plugin-badges': patch
'@backstage/plugin-bitbucket-cloud-common': patch
'@backstage/plugin-bitrise': patch
'@backstage/plugin-catalog-backend-module-azure': patch
'@backstage/plugin-catalog-backend-module-bitbucket-cloud': patch
'@backstage/plugin-catalog-backend-module-bitbucket-server': patch
'@backstage/plugin-catalog-backend-module-bitbucket': patch
'@backstage/plugin-catalog-backend-module-gerrit': patch
'@backstage/plugin-catalog-backend-module-github': patch
'@backstage/plugin-catalog-backend-module-gitlab': patch
'@backstage/plugin-catalog-backend-module-msgraph': patch
'@backstage/plugin-catalog-backend': patch
'@backstage/plugin-catalog-graphql': patch
'@backstage/plugin-catalog-import': patch
'@backstage/plugin-circleci': patch
'@backstage/plugin-cloudbuild': patch
'@backstage/plugin-code-climate': patch
'@backstage/plugin-code-coverage-backend': patch
'@backstage/plugin-code-coverage': patch
'@backstage/plugin-codescene': patch
'@backstage/plugin-config-schema': patch
'@backstage/plugin-cost-insights': patch
'@backstage/plugin-dynatrace': patch
'@backstage/plugin-explore-react': patch
'@backstage/plugin-explore': patch
'@backstage/plugin-firehydrant': patch
'@backstage/plugin-fossa': patch
'@backstage/plugin-gcalendar': patch
'@backstage/plugin-gcp-projects': patch
'@backstage/plugin-git-release-manager': patch
'@backstage/plugin-github-actions': patch
'@backstage/plugin-github-deployments': patch
'@backstage/plugin-github-issues': patch
'@backstage/plugin-github-pull-requests-board': patch
'@backstage/plugin-gitops-profiles': patch
'@backstage/plugin-gocd': patch
'@backstage/plugin-graphiql': patch
'@backstage/plugin-graphql-backend': patch
'@backstage/plugin-home': patch
'@backstage/plugin-ilert': patch
'@backstage/plugin-jenkins-backend': patch
'@backstage/plugin-jenkins': patch
'@backstage/plugin-kafka': patch
'@backstage/plugin-kubernetes': patch
'@backstage/plugin-lighthouse': patch
'@backstage/plugin-newrelic': patch
'@backstage/plugin-org-react': patch
'@backstage/plugin-org': patch
'@backstage/plugin-pagerduty': patch
'@backstage/plugin-periskop-backend': patch
'@backstage/plugin-periskop': patch
'@backstage/plugin-permission-backend': patch
'@backstage/plugin-permission-common': patch
'@backstage/plugin-permission-node': patch
'@backstage/plugin-playlist-backend': patch
'@backstage/plugin-playlist': patch
'@backstage/plugin-proxy-backend': patch
'@backstage/plugin-rollbar-backend': patch
'@backstage/plugin-rollbar': patch
'@backstage/plugin-scaffolder-backend-module-cookiecutter': patch
'@backstage/plugin-scaffolder-backend': patch
'@backstage/plugin-scaffolder': patch
'@backstage/plugin-search': patch
'@backstage/plugin-sentry': patch
'@backstage/plugin-shortcuts': patch
'@backstage/plugin-sonarqube-backend': patch
'@backstage/plugin-sonarqube': patch
'@backstage/plugin-splunk-on-call': patch
'@backstage/plugin-stack-overflow': patch
'@backstage/plugin-tech-insights': patch
'@backstage/plugin-tech-radar': patch
'@backstage/plugin-techdocs-addons-test-utils': patch
'@backstage/plugin-techdocs-backend': patch
'@backstage/plugin-techdocs-module-addons-contrib': patch
'@backstage/plugin-techdocs': patch
'@backstage/plugin-todo-backend': patch
'@backstage/plugin-todo': patch
'@backstage/plugin-user-settings': patch
'@backstage/plugin-vault-backend': patch
'@backstage/plugin-vault': patch
'@backstage/plugin-xcmetrics': patch
---
Updated dependency `msw` to `^0.49.0`.
+7
View File
@@ -0,0 +1,7 @@
---
'@backstage/core-components': patch
'@backstage/plugin-codescene': patch
'@backstage/plugin-sonarqube': patch
---
Updated dependency `rc-progress` to `3.4.1`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/config-loader': patch
---
Updated dependency `typescript-json-schema` to `^0.55.0`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/backend-common': patch
---
Added the ability to understand Job Artifact URLs to the GitLab integration
+6
View File
@@ -0,0 +1,6 @@
---
'@backstage/plugin-kubernetes-backend': patch
'@backstage/plugin-kubernetes-common': patch
---
Added Kubernetes proxy API route to backend Kubernetes plugin, allowing Backstage plugin developers to read/write new information from Kubernetes (if proper credentials are provided).
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-search-backend-node': patch
---
Fixed a bug that could cause a `max listeners exceeded warning` to be logged when more than 10 collators were running simultaneously.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-search-backend-node': patch
---
Updated indexer and decorator base classes to take advantage of features introduced in Node.js v16; be sure you are running a [supported version of Node.js](https://backstage.io/docs/releases/v1.8.0#node-16-and-18).
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-search-backend-node': patch
---
Use of `TestPipeline.withSubject()` is now deprecated. Instead, use the `fromCollator`, `fromDecorator`, or `fromIndexer` static methods to instantiate a test pipeline. You may also use the class' `withCollator`, `withDecorator`, and `withIndexer` instance methods to build test pipelines that consist of multiple test subjects.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend': patch
---
Registered shutdown hook in experimental catalog plugin.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder': patch
---
fixed `headerOptions` not passed to `TemplatePage` component
+12
View File
@@ -0,0 +1,12 @@
---
'@backstage/plugin-events-backend-module-gitlab': patch
---
Add `createGitlabTokenValidator(config)` which can be used
to create a validator used at an ingress for topic `gitlab`.
On top, there is a new `gitlabWebhookEventsModule` for the new backend plugin API
which auto-registers the `HttpPostIngress` for topic `gitlab` incl. the validator.
Please find more information at
https://github.com/backstage/backstage/tree/master/plugins/events-backend-module-gitlab/README.md.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend-module-bitbucket-cloud': patch
---
Fix repo:push topic not matching `BitbucketCloudEventRouter`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend-module-openapi': patch
---
Enabled support of resolving `$refs` in all kind of yaml documents, not only OpenAPI. This implicitly adds `$ref` resolving support for AsyncAPI specs. Thus, the `openApiPlaceholderResolver` has been renamed to `jsonSchemaRefPlaceholderResolver`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-techdocs-module-addons-contrib': patch
---
Use `app.title` from `app-config.yaml` when creating new Documentation Feedback issue. `Backstage` is the default value.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog': patch
---
Fixed Entity kind pluralisation in the `CatalogKindHeader` component.
+6
View File
@@ -0,0 +1,6 @@
---
'@backstage/plugin-vault-backend': patch
---
Use `express-promise-router` to catch errors properly.
Add `403` error as a known one. It will now return a `NotAllowed` error.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/backend-defaults': patch
---
Added `lifecycleFactory` to default service factories.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-cost-insights': patch
---
Making a possibility to hide a trending line in a cost insights plugin
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/backend-plugin-api': patch
---
Added initial support for registering shutdown hooks via `lifecycleServiceRef`.
+192 -1
View File
@@ -18,7 +18,7 @@ var path = require('path');
module.exports = {
root: true,
plugins: ['notice'],
plugins: ['notice', 'testing-library'],
rules: {
'notice/notice': [
'error',
@@ -45,5 +45,196 @@ module.exports = {
"CallExpression[arguments.length=0] > MemberExpression[property.name='toUpperCase']",
},
],
'testing-library/await-async-query': 'error',
'testing-library/await-async-utils': 'error',
'testing-library/no-await-sync-query': 'error',
'testing-library/prefer-wait-for': 'error',
'testing-library/no-dom-import': 'error',
'testing-library/no-wait-for-side-effects': 'error',
'testing-library/no-wait-for-empty-callback': 'error',
'no-restricted-globals': [
'error',
[
'blur',
'captureEvents',
'chrome',
'clientInformation',
'close',
'closed',
'createImageBitmap',
'crypto',
'customElements',
'defaultstatus',
'defaultStatus',
'devicePixelRatio',
'external',
'find',
'focus',
'frameElement',
'frames',
'getComputedStyle',
'getSelection',
'indexedDB',
'innerHeight',
'innerWidth',
'isSecureContext',
'length',
'location',
'locationbar',
'matchMedia',
'menubar',
'moveBy',
'moveTo',
'name',
'navigator',
'onabort',
'onafterprint',
'onanimationend',
'onanimationiteration',
'onanimationstart',
'onappinstalled',
'onauxclick',
'onbeforeinstallprompt',
'onbeforeprint',
'onbeforeunload',
'onblur',
'oncancel',
'oncanplay',
'oncanplaythrough',
'onchange',
'onclick',
'onclose',
'oncontextmenu',
'oncuechange',
'ondblclick',
'ondevicemotion',
'ondeviceorientation',
'ondeviceorientationabsolute',
'ondrag',
'ondragend',
'ondragenter',
'ondragleave',
'ondragover',
'ondragstart',
'ondrop',
'ondurationchange',
'onemptied',
'onended',
'onerror',
'onfocus',
'ongotpointercapture',
'onhashchange',
'oninput',
'oninvalid',
'onkeydown',
'onkeypress',
'onkeyup',
'onlanguagechange',
'onload',
'onloadeddata',
'onloadedmetadata',
'onloadstart',
'onlostpointercapture',
'onmessage',
'onmessageerror',
'onmousedown',
'onmouseenter',
'onmouseleave',
'onmousemove',
'onmouseout',
'onmouseover',
'onmouseup',
'onmousewheel',
'onoffline',
'ononline',
'onpagehide',
'onpageshow',
'onpause',
'onplay',
'onplaying',
'onpointercancel',
'onpointerdown',
'onpointerenter',
'onpointerleave',
'onpointermove',
'onpointerout',
'onpointerover',
'onpointerup',
'onpopstate',
'onprogress',
'onratechange',
'onrejectionhandled',
'onreset',
'onresize',
'onscroll',
'onsearch',
'onseeked',
'onseeking',
'onselect',
'onstalled',
'onstorage',
'onsubmit',
'onsuspend',
'ontimeupdate',
'ontoggle',
'ontransitionend',
'onunhandledrejection',
'onunload',
'onvolumechange',
'onwaiting',
'onwebkitanimationend',
'onwebkitanimationiteration',
'onwebkitanimationstart',
'onwebkittransitionend',
'onwheel',
'open',
'openDatabase',
'opener',
'origin',
'outerHeight',
'outerWidth',
'pageXOffset',
'pageYOffset',
'parent',
'performance',
'personalbar',
'postMessage',
'print',
'releaseEvents',
'resizeBy',
'resizeTo',
'screen',
'screenLeft',
'screenTop',
'screenX',
'screenY',
'scroll',
'scrollbars',
'scrollBy',
'scrollTo',
'scrollX',
'scrollY',
'self',
'speechSynthesis',
'status',
'statusbar',
'stop',
'styleMedia',
'toolbar',
'top',
'visualViewport',
'webkitRequestFileSystem',
'webkitResolveLocalFileSystemURL',
'webkitStorageInfo',
].map(function f(name) {
return {
name: name,
message:
'Avoid using implicitly global variables. Use e.g. window.' +
name +
' instead if this was your intent.',
};
}),
].flat(),
},
};
+1 -1
View File
@@ -41,7 +41,7 @@ body:
attributes:
label: '🏢 Have you read the Code of Conduct?'
options:
- label: 'I have read the [Contributing Guidelines](https://github.com/backstage/backstage/blob/master/CODE_OF_CONDUCT.md)'
- label: 'I have read the [Code of Conduct](https://github.com/backstage/backstage/blob/master/CODE_OF_CONDUCT.md)'
required: true
- type: dropdown
id: willing-to-submit-pr
+1 -1
View File
@@ -39,7 +39,7 @@ body:
attributes:
label: '🏢 Have you read the Code of Conduct?'
options:
- label: 'I have read the [Contributing Guidelines](https://github.com/backstage/backstage/blob/master/CODE_OF_CONDUCT.md)'
- label: 'I have read the [Code of Conduct](https://github.com/backstage/backstage/blob/master/CODE_OF_CONDUCT.md)'
required: true
- type: dropdown
id: willing-to-submit-pr
+5
View File
@@ -21,5 +21,10 @@
groupName: 'SVGR monorepo packages',
rangeStrategy: 'replace',
},
// We update yarn packages manually as it's gzip'd and we don't want to pollute the repository too much.
{
matchSourceUrls: ['https://github.com/yarnpkg/berry'],
enabled: false,
},
],
}
+3
View File
@@ -126,6 +126,7 @@ github
Gitiles
gitlab
GitLab
globals
Gource
Grafana
graphql
@@ -241,6 +242,7 @@ pageview
parallelization
parseable
Patrik
pattison
Peloton
performant
Performant
@@ -408,3 +410,4 @@ Zolotusky
zoomable
zsh
Lainfiesta
allowlisted
@@ -0,0 +1,63 @@
name: Automate merge message
on:
pull_request_target:
branches: ['master']
types: ['closed']
permissions:
pull-requests: write
actions: none
checks: none
contents: none
deployments: none
issues: none
packages: none
pages: none
repository-projects: none
security-events: none
statuses: none
jobs:
message:
# prevent running towards forks, and only run on merged PRs
if: github.repository == 'backstage/backstage' && github.event.pull_request.merged == true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: '${{ github.event.pull_request.merge_commit_sha }}'
- name: fetch base
run: git fetch --depth 1 origin ${{ github.event.pull_request.base.sha }}
# We avoid using the in-source script since this workflow has elevated permissions that we don't want to expose
- name: Generate Message
id: generate-message
run: |
rm -f generate.js
wget -O generate.js https://raw.githubusercontent.com/backstage/backstage/master/scripts/generate-merge-message.js 1>&2
node generate.js ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }} > message.txt
- name: Post Message
uses: actions/github-script@v6
env:
ISSUE_NUMBER: ${{ github.event.pull_request.number }}
with:
script: |
const owner = "backstage";
const repo = "backstage";
const body = require('fs').readFileSync('message.txt', 'utf8').trim();
const issue_number = Number(process.env.ISSUE_NUMBER);
if (!body) {
console.log(`skipping comment for #${issue_number}`);
return;
}
console.log(`creating comment for #${issue_number}`);
await github.rest.issues.createComment({
owner,
repo,
issue_number,
body,
});
+4 -4
View File
@@ -33,7 +33,7 @@ jobs:
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.7
uses: backstage/actions/yarn-install@v0.5.8
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
@@ -63,12 +63,12 @@ jobs:
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.7
uses: backstage/actions/yarn-install@v0.5.8
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
- name: verify yarn dependency duplicates
run: yarn dedupe --check
run: node scripts/verify-lockfile-duplicates.js
- name: verify changesets
run: node scripts/verify-changesets.js
@@ -181,7 +181,7 @@ jobs:
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.7
uses: backstage/actions/yarn-install@v0.5.8
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
+1 -1
View File
@@ -8,7 +8,7 @@ jobs:
cron:
runs-on: ubuntu-latest
steps:
- uses: backstage/actions/cron@v0.5.7
- uses: backstage/actions/cron@v0.5.8
with:
app-id: ${{ secrets.BACKSTAGE_GOALIE_APPLICATION_ID }}
private-key: ${{ secrets.BACKSTAGE_GOALIE_PRIVATE_KEY }}
+6 -6
View File
@@ -9,13 +9,13 @@ jobs:
steps:
- name: checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: backstage
ref: v${{ github.event.client_payload.version }}
- name: setup-node
uses: actions/setup-node@v1
uses: actions/setup-node@v3
with:
node-version: 16.x
registry-url: https://registry.npmjs.org/
@@ -23,7 +23,7 @@ jobs:
# Beginning of yarn setup, keep in sync between all workflows.
# TODO(Rugvip): move this to composite action once all features we use are supported
- name: use node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
@@ -31,7 +31,7 @@ jobs:
# Cache every node_modules folder inside the monorepo
- name: cache all node_modules
id: cache-modules
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: '**/node_modules'
# We use both yarn.lock and package.json as cache keys to ensure that
@@ -44,10 +44,10 @@ jobs:
- name: find location of global yarn cache
id: yarn-cache
if: steps.cache-modules.outputs.cache-hit != 'true'
run: echo "::set-output name=dir::$(yarn cache dir)"
run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT
- name: cache global yarn cache
uses: actions/cache@v2
uses: actions/cache@v3
if: steps.cache-modules.outputs.cache-hit != 'true'
with:
path: ${{ steps.yarn-cache.outputs.dir }}
+1 -1
View File
@@ -26,7 +26,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.7
uses: backstage/actions/yarn-install@v0.5.8
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
+2 -2
View File
@@ -67,7 +67,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.7
uses: backstage/actions/yarn-install@v0.5.8
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
@@ -145,7 +145,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.7
uses: backstage/actions/yarn-install@v0.5.8
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
+1 -1
View File
@@ -10,4 +10,4 @@ jobs:
if: github.repository == 'backstage/backstage'
steps:
- name: Issue sync
uses: backstage/actions/issue-sync@v0.5.7
uses: backstage/actions/issue-sync@v0.5.8
+2 -2
View File
@@ -33,9 +33,9 @@ jobs:
}
const prNumber = artifact.name.slice('pr_number-'.length)
console.log(`::set-output name=pr-number::${prNumber}`);
core.setOutput('pr-number', prNumber);
- uses: backstage/actions/re-review@v0.5.7
- uses: backstage/actions/re-review@v0.5.8
with:
app-id: ${{ secrets.BACKSTAGE_GOALIE_APPLICATION_ID }}
private-key: ${{ secrets.BACKSTAGE_GOALIE_PRIVATE_KEY }}
+1 -1
View File
@@ -18,7 +18,7 @@ jobs:
if: github.repository == 'backstage/backstage' && ( github.event.pull_request || github.event.issue.pull_request )
steps:
- name: PR sync
uses: backstage/actions/pr-sync@v0.5.7
uses: backstage/actions/pr-sync@v0.5.8
with:
github-token: ${{ secrets.GH_SERVICE_ACCOUNT_TOKEN }}
app-id: ${{ secrets.BACKSTAGE_GOALIE_APPLICATION_ID }}
+1 -1
View File
@@ -20,7 +20,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.7
uses: backstage/actions/yarn-install@v0.5.8
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
@@ -23,7 +23,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.7
uses: backstage/actions/yarn-install@v0.5.8
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
+1 -1
View File
@@ -18,7 +18,7 @@ jobs:
# also contains an "--config=.github/vale/config.ini" option
- name: generate vale args
id: generate
run: echo "::set-output name=args::$(node scripts/check-docs-quality.js --ci-args)"
run: echo "args=$(node scripts/check-docs-quality.js --ci-args)" >> $GITHUB_OUTPUT
- name: documentation quality check
uses: errata-ai/vale-action@v2.0.1
+1 -1
View File
@@ -52,7 +52,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.7
uses: backstage/actions/yarn-install@v0.5.8
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
+3 -1
View File
@@ -26,7 +26,9 @@ jobs:
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v3
- uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: install dependencies
run: yarn install --immutable
+1 -1
View File
@@ -49,7 +49,7 @@ jobs:
with:
node-version: ${{ matrix.node-version }}
- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@v1.0.3
uses: microsoft/setup-msbuild@v1.1.3
- name: setup chrome
uses: browser-actions/setup-chrome@latest
- name: yarn install
+2 -2
View File
@@ -28,12 +28,12 @@ jobs:
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.7
uses: backstage/actions/yarn-install@v0.5.8
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
- name: bootstrap kind
uses: helm/kind-action@v1.3.0
uses: helm/kind-action@v1.4.0
- name: kubernetes test
working-directory: packages/backend-common
+3
View File
@@ -32,6 +32,9 @@ jobs:
run: yarn install --immutable
working-directory: microsite
- name: verify yarn dependency duplicates
run: node scripts/verify-lockfile-duplicates.js
- name: prettier
run: yarn prettier:check
working-directory: microsite
+1 -1
View File
@@ -35,7 +35,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.7
uses: backstage/actions/yarn-install@v0.5.8
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
- name: storybook yarn install
@@ -9,6 +9,7 @@ if [ "$CURRENT_VERSION" == "$TARGET_VERSION" ]; then
else
echo "Attempting upgrade from Backstage $CURRENT_VERSION (create-app $CREATE_APP_CURRENT_VERSION) to $TARGET_VERSION ($CREATE_APP_TARGET_VERSION)"
rm -rf .upgrade && mkdir .upgrade
git fetch https://github.com/backstage/upgrade-helper-diff.git '+refs/heads/*:refs/remotes/upgrade-helper/*'
curl -s https://raw.githubusercontent.com/backstage/upgrade-helper-diff/master/diffs/$CREATE_APP_CURRENT_VERSION..$CREATE_APP_TARGET_VERSION.diff > .upgrade/upgrade.diff
git apply -3 .upgrade/upgrade.diff
git mergetool
+6 -6
View File
@@ -1415,22 +1415,22 @@ __metadata:
linkType: hard
"typescript@npm:^4.1.3":
version: 4.8.4
resolution: "typescript@npm:4.8.4"
version: 4.9.3
resolution: "typescript@npm:4.9.3"
bin:
tsc: bin/tsc
tsserver: bin/tsserver
checksum: 3e4f061658e0c8f36c820802fa809e0fd812b85687a9a2f5430bc3d0368e37d1c9605c3ce9b39df9a05af2ece67b1d844f9f6ea8ff42819f13bcb80f85629af0
checksum: 17b8f816050b412403e38d48eef0e893deb6be522d6dc7caf105e54a72e34daf6835c447735fd2b28b66784e72bfbf87f627abb4818a8e43d1fa8106396128dc
languageName: node
linkType: hard
"typescript@patch:typescript@^4.1.3#~builtin<compat/typescript>":
version: 4.8.4
resolution: "typescript@patch:typescript@npm%3A4.8.4#~builtin<compat/typescript>::version=4.8.4&hash=a1c5e5"
version: 4.9.3
resolution: "typescript@patch:typescript@npm%3A4.9.3#~builtin<compat/typescript>::version=4.9.3&hash=a1c5e5"
bin:
tsc: bin/tsc
tsserver: bin/tsserver
checksum: 563a0ef47abae6df27a9a3ab38f75fc681f633ccf1a3502b1108e252e187787893de689220f4544aaf95a371a4eb3141e4a337deb9895de5ac3c1ca76430e5f0
checksum: ef65c22622d864497d0a0c5db693523329b3284c15fe632e93ad9aa059e8dc38ef3bd767d6f26b1e5ecf9446f49bd0f6c4e5714a2eeaf352805dc002479843d1
languageName: node
linkType: hard
Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

+5
View File
@@ -275,6 +275,11 @@ browser at `http://localhost:7007`
## Separate Frontend
> NOTE: This is an optional step, and you will lose out on the features of the
> `@backstage/plugin-app-backend` plugin. Most notably the frontend configuration
> will no longer be injected by the backend, you will instead need to use the
> correct configuration when building the frontend bundle.
It is sometimes desirable to serve the frontend separately from the backend,
either from a separate image or for example a static file serving provider. The
first step in doing so is to remove the `app-backend` plugin from the backend
+3 -3
View File
@@ -68,7 +68,7 @@ export const searchPage = (
switch (result.type) {
case 'software-catalog':
return (
<CatalogResultListItem
<CatalogSearchResultListItem
key={result.document.location}
result={result.document}
highlight={result.highlight}
@@ -253,7 +253,7 @@ const MyCustomFilter = () => {
It's good practice for search results to highlight information that was used to
return it in the first place! The code below highlights how you might specify a
custom result item component, using the `<CatalogResultListItem />` component as
custom result item component, using the `<CatalogSearchResultListItem />` component as
an example:
```tsx {7-13}
@@ -265,7 +265,7 @@ an example:
switch (result.type) {
case 'software-catalog':
return (
<CatalogResultListItem
<CatalogSearchResultListItem
key={result.document.location}
result={result.document}
highlight={result.highlight}
@@ -159,7 +159,12 @@ Check out the numbered markings - let's go through them one by one.
the outcome of that. This example issues a `fetch` to the right service and
issues a full refresh of its entity bucket based on that.
5. The method translates the foreign data model to the native `Entity` form, as
expected by the catalog.
expected by the catalog. The `Entity` must include the
`backstage.io/managed-by-location` and
`backstage.io/managed-by-origin-location annotations`; otherwise, it will not
appear in the Catalog and will generate warning logs. The
[Well-known Annotations](./well-known-annotations.md#backstageiomanaged-by-location)
documentation has guidance on what values to use for these.
6. Finally, we issue a "mutation" to the catalog. This persists the entities in
our own bucket, along with an optional `locationKey` that's used for conflict
checks. But this is a bigger topic - mutations warrant their own explanatory
+6 -4
View File
@@ -141,14 +141,16 @@ jobs:
steps:
- name: Checkout code
uses: actions/checkout@v2
uses: actions/checkout@v3
- uses: actions/setup-node@v2
- uses: actions/setup-python@v2
- uses: actions/setup-node@v3
- uses: actions/setup-python@v4
with:
python-version: '3.9'
# the 2 steps below can be removed if you aren't using plantuml in your documentation
- name: setup java
uses: actions/setup-java@v2
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: '11'
+92
View File
@@ -393,6 +393,98 @@ You can add more icons, if the [default icons](https://github.com/backstage/back
Note: If the icon is not available as one of the default icons or one you've added then it will fall back to Material UI's `LanguageIcon`
## Custom Sidebar
As you've seen there are many ways that you can customize your Backstage app. The following section will show you how you can customize the sidebar.
### Sidebar Sub-menu
For this example we'll show you how you can expand the sidebar with a sub-menu:
1. Open the `Root.tsx` file located in `packages/app/src/components/Root` as this is where the sidebar code lives
2. Then we want to add the following imports for the icons:
```ts
import ApiIcon from '@material-ui/icons/Extension';
import ComponentIcon from '@material-ui/icons/Memory';
import DomainIcon from '@material-ui/icons/Apartment';
import ResourceIcon from '@material-ui/icons/Work';
import SystemIcon from '@material-ui/icons/Category';
import UserIcon from '@material-ui/icons/Person';
```
3. Then update the `@backstage/core-components` import like this:
```diff
import {
Sidebar,
sidebarConfig,
SidebarDivider,
SidebarGroup,
SidebarItem,
SidebarPage,
SidebarScrollWrapper,
SidebarSpace,
useSidebarOpenState,
Link,
+ GroupIcon,
+ SidebarSubmenu,
+ SidebarSubmenuItem,
} from '@backstage/core-components';
```
4. Finally replace `<SidebarItem icon={HomeIcon} to="catalog" text="Home" />` with this:
```ts
<SidebarItem icon={HomeIcon} to="catalog" text="Home">
<SidebarSubmenu title="Catalog">
<SidebarSubmenuItem
title="Domains"
to="catalog?filters[kind]=domain"
icon={DomainIcon}
/>
<SidebarSubmenuItem
title="Systems"
to="catalog?filters[kind]=system"
icon={SystemIcon}
/>
<SidebarSubmenuItem
title="Components"
to="catalog?filters[kind]=component"
icon={ComponentIcon}
/>
<SidebarSubmenuItem
title="APIs"
to="catalog?filters[kind]=api"
icon={ApiIcon}
/>
<SidebarDivider />
<SidebarSubmenuItem
title="Resources"
to="catalog?filters[kind]=resource"
icon={ResourceIcon}
/>
<SidebarDivider />
<SidebarSubmenuItem
title="Groups"
to="catalog?filters[kind]=group"
icon={GroupIcon}
/>
<SidebarSubmenuItem
title="Users"
to="catalog?filters[kind]=user"
icon={UserIcon}
/>
</SidebarSubmenu>
</SidebarItem>
```
When you startup your Backstage app and hover over the Home option on the sidebar you'll now see a nice sub-menu appear with links to the various Kinds in your Catalog. It would look like this:
![Sidebar sub-menu example](./../assets/getting-started/sidebar-submenu-example.png)
You can see more ways to use this in the [Storybook Sidebar examples](https://backstage.io/storybook/?path=/story/layout-sidebar--sample-scalable-sidebar)
## Custom Homepage
In addition to a custom theme, a custom logo, you can also customize the
+47 -1
View File
@@ -14,7 +14,7 @@ organization and register entities matching the configured path. This can be
useful as an alternative to static locations or manually adding things to the
catalog. This is the preferred method for ingesting entities into the catalog.
## Installation
## Installation without Events Support
You will have to add the provider in the catalog initialization code of your
backend. They are not installed by default, therefore you have to add a
@@ -53,6 +53,52 @@ And then add the entity provider to your catalog builder:
}
```
## Installation with Events Support
Please follow the installation instructions at
- https://github.com/backstage/backstage/tree/master/plugins/events-backend/README.md
- https://github.com/backstage/backstage/tree/master/plugins/events-backend-module-github/README.md
Additionally, you need to decide how you want to receive events from external sources like
- [via HTTP endpoint](https://github.com/backstage/backstage/tree/master/plugins/events-backend/README.md)
- [via an AWS SQS queue](https://github.com/backstage/backstage/tree/master/plugins/events-backend-module-aws-sqs/README.md)
Set up your provider
```diff
// packages/backend/src/plugins/catalogEventBasedProviders.ts
+import { GithubEntityProvider } from '@backstage/plugin-catalog-backend-module-github';
import { EntityProvider } from '@backstage/plugin-catalog-node';
import { EventSubscriber } from '@backstage/plugin-events-node';
import { PluginEnvironment } from '../types';
export default async function createCatalogEventBasedProviders(
- _: PluginEnvironment,
+ env: PluginEnvironment,
): Promise<Array<EntityProvider & EventSubscriber>> {
const providers: Array<
(EntityProvider & EventSubscriber) | Array<EntityProvider & EventSubscriber>
> = [];
- // add your event-based entity providers here
+ providers.push(
+ GithubEntityProvider.fromConfig(env.config, {
+ logger: env.logger,
+ // optional: alternatively, use scheduler with schedule defined in app-config.yaml
+ schedule: env.scheduler.createScheduledTaskRunner({
+ frequency: { minutes: 30 },
+ timeout: { minutes: 3 },
+ }),
+ // optional: alternatively, use schedule
+ scheduler: env.scheduler,
+ }),
+ );
return providers.flat();
}
```
You can check the official docs to [configure your webhook](https://docs.github.com/en/developers/webhooks-and-events/webhooks/creating-webhooks) and to [secure your request](https://docs.github.com/en/developers/webhooks-and-events/webhooks/securing-your-webhooks). The webhook will need to be configured to forward `push` events.
## Configuration
To use the discovery provider, you'll need a GitHub integration
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,10 @@
---
title: 'Azure Spring Apps'
author: Enfuse
authorUrl: https://enfuse.io/
category: Discovery
description: Easily view your Azure Spring Apps service resources
documentation: https://github.com/enfuse/asae-backstage-plugin/blob/main/README.md
iconUrl: img/azure-spring-apps.png
npmPackageName: '@enfuse/plugin-azure-spring-apps'
addedDate: '2022-11-21'
+13
View File
@@ -0,0 +1,13 @@
---
title: Cloudsmith
author: Roadie
authorUrl: https://roadie.io
category: CI/CD
description: Show Cloudsmith Repository stats on your backstage homepage.
documentation: https://github.com/RoadieHQ/roadie-backstage-plugins/tree/main/plugins/frontend/backstage-plugin-cloudsmith
iconUrl: https://cloudsmith.com/img/cloudsmith-mini-dark.svg
npmPackageName: '@roadiehq/backstage-plugin-cloudsmith'
tags:
- dashboards
- monitoring
addedDate: '2022-11-18'
+1 -1
View File
@@ -6,7 +6,7 @@ category: Deployment # A single category e.g. CI, Machine Learning, Services, Mo
description: |
Show workloads, environments and resources deployed by Humanitec Platform Orchestrator.
Plugin includes an Entity ComponentCard, Backend API route and scaffolder actions.
documentation: https://github.com/thefrontside/backstage/tree/main/plugins/humanitec
documentation: https://github.com/thefrontside/playhouse/tree/main/plugins/humanitec
iconUrl: img/humanitec-logo.png
npmPackageName: '@frontside/backstage-plugin-humanitec'
addedDate: '2022-06-22'
Binary file not shown.

After

Width:  |  Height:  |  Size: 142 KiB

+15 -90
View File
@@ -281,14 +281,7 @@ __metadata:
languageName: node
linkType: hard
"@babel/helper-validator-identifier@npm:^7.10.4, @babel/helper-validator-identifier@npm:^7.12.11":
version: 7.12.11
resolution: "@babel/helper-validator-identifier@npm:7.12.11"
checksum: e604c6bf890704fc46c1ae13bf23afb242b810224ec3403bba67cdbf0d8dabfec4b82123d6dfb18135a0ee3f7f79218583c819363ebb5e04a0a49d8418db7fce
languageName: node
linkType: hard
"@babel/helper-validator-identifier@npm:^7.18.6":
"@babel/helper-validator-identifier@npm:^7.10.4, @babel/helper-validator-identifier@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/helper-validator-identifier@npm:7.18.6"
checksum: e295254d616bbe26e48c196a198476ab4d42a73b90478c9842536cf910ead887f5af6b5c4df544d3052a25ccb3614866fa808dc1e3a5a4291acd444e243c0648
@@ -1241,18 +1234,7 @@ __metadata:
languageName: node
linkType: hard
"@babel/types@npm:^7.10.4, @babel/types@npm:^7.10.5, @babel/types@npm:^7.12.1, @babel/types@npm:^7.12.10, @babel/types@npm:^7.12.11, @babel/types@npm:^7.12.12, @babel/types@npm:^7.12.5, @babel/types@npm:^7.12.6, @babel/types@npm:^7.12.7, @babel/types@npm:^7.4.4":
version: 7.12.12
resolution: "@babel/types@npm:7.12.12"
dependencies:
"@babel/helper-validator-identifier": ^7.12.11
lodash: ^4.17.19
to-fast-properties: ^2.0.0
checksum: 1eefe9468573a32491030f2986f820eb4289ff0b93e437b97f665e73cc8dae0ec0bdd95f37995bb3b70b5ce2a9a45a302affbbad497150021cf874c5ef10e361
languageName: node
linkType: hard
"@babel/types@npm:^7.8.3":
"@babel/types@npm:^7.10.4, @babel/types@npm:^7.10.5, @babel/types@npm:^7.12.1, @babel/types@npm:^7.12.10, @babel/types@npm:^7.12.11, @babel/types@npm:^7.12.12, @babel/types@npm:^7.12.5, @babel/types@npm:^7.12.6, @babel/types@npm:^7.12.7, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3":
version: 7.18.10
resolution: "@babel/types@npm:7.18.10"
dependencies:
@@ -2917,7 +2899,7 @@ __metadata:
languageName: node
linkType: hard
"debug@npm:4, debug@npm:^4.3.3":
"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.3.3":
version: 4.3.4
resolution: "debug@npm:4.3.4"
dependencies:
@@ -2929,7 +2911,7 @@ __metadata:
languageName: node
linkType: hard
"debug@npm:4.3.1, debug@npm:^4.1.0":
"debug@npm:4.3.1":
version: 4.3.1
resolution: "debug@npm:4.3.1"
dependencies:
@@ -4275,21 +4257,7 @@ __metadata:
languageName: node
linkType: hard
"glob@npm:^7.0.0, glob@npm:^7.0.5, glob@npm:^7.1.2, glob@npm:^7.1.3, glob@npm:^7.1.6":
version: 7.2.0
resolution: "glob@npm:7.2.0"
dependencies:
fs.realpath: ^1.0.0
inflight: ^1.0.4
inherits: 2
minimatch: ^3.0.4
once: ^1.3.0
path-is-absolute: ^1.0.0
checksum: 78a8ea942331f08ed2e055cb5b9e40fe6f46f579d7fd3d694f3412fe5db23223d29b7fee1575440202e9a7ff9a72ab106a39fee39934c7bedafe5e5f8ae20134
languageName: node
linkType: hard
"glob@npm:^7.1.4":
"glob@npm:^7.0.0, glob@npm:^7.0.5, glob@npm:^7.1.2, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.6":
version: 7.2.3
resolution: "glob@npm:7.2.3"
dependencies:
@@ -4430,14 +4398,7 @@ __metadata:
languageName: node
linkType: hard
"graceful-fs@npm:^4.1.10, graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0":
version: 4.2.4
resolution: "graceful-fs@npm:4.2.4"
checksum: 9d58c444eb4f391ce30b451aae8a8af2bd675d9f6f624719e97306f571ab89b2bd2b5f9025199bc63a2edfe2e53e7701554012f32a708148d53aa689163728cc
languageName: node
linkType: hard
"graceful-fs@npm:^4.2.6":
"graceful-fs@npm:^4.1.10, graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.6":
version: 4.2.10
resolution: "graceful-fs@npm:4.2.10"
checksum: 3f109d70ae123951905d85032ebeae3c2a5a7a997430df00ea30df0e3a6c60cf6689b109654d6fdacd28810a053348c4d14642da1d075049e6be1ba5216218da
@@ -5056,15 +5017,6 @@ __metadata:
languageName: node
linkType: hard
"is-core-module@npm:^2.1.0":
version: 2.2.0
resolution: "is-core-module@npm:2.2.0"
dependencies:
has: ^1.0.3
checksum: 61e2aff4a7db4f8f7d5a97b484808af17290f4197b34a797cd3d3d27b6b448951064f8d3d6ceae4394fa9b7e6cf08aacd2ba7a17ef6352e922fe803580fbde56
languageName: node
linkType: hard
"is-core-module@npm:^2.8.0":
version: 2.8.1
resolution: "is-core-module@npm:2.8.1"
@@ -6196,7 +6148,7 @@ __metadata:
languageName: node
linkType: hard
"minimatch@npm:3.0.4, minimatch@npm:^3.0.4, minimatch@npm:~3.0.2":
"minimatch@npm:3.0.4, minimatch@npm:~3.0.2":
version: 3.0.4
resolution: "minimatch@npm:3.0.4"
dependencies:
@@ -6205,7 +6157,7 @@ __metadata:
languageName: node
linkType: hard
"minimatch@npm:^3.1.1":
"minimatch@npm:^3.0.4, minimatch@npm:^3.1.1":
version: 3.1.2
resolution: "minimatch@npm:3.1.2"
dependencies:
@@ -6941,7 +6893,7 @@ __metadata:
languageName: node
linkType: hard
"path-parse@npm:^1.0.6, path-parse@npm:^1.0.7":
"path-parse@npm:^1.0.7":
version: 1.0.7
resolution: "path-parse@npm:1.0.7"
checksum: 49abf3d81115642938a8700ec580da6e830dde670be21893c62f4e10bd7dd4c3742ddc603fe24f898cba7eb0c6bc1777f8d9ac14185d34540c6d4d80cd9cae8a
@@ -7441,11 +7393,11 @@ __metadata:
linkType: hard
"prettier@npm:^2.6.2":
version: 2.7.1
resolution: "prettier@npm:2.7.1"
version: 2.8.0
resolution: "prettier@npm:2.8.0"
bin:
prettier: bin-prettier.js
checksum: 55a4409182260866ab31284d929b3cb961e5fdb91fe0d2e099dac92eaecec890f36e524b4c19e6ceae839c99c6d7195817579cdffc8e2c80da0cb794463a748b
checksum: 72004ce0cc9bb097daf3e3833f62495768724392c1d5b178dd47372337616e9e50ecbb0804f236596223f7b5eb1bbe69cefc8957dca21112c5777e77ef73a564
languageName: node
linkType: hard
@@ -7967,7 +7919,7 @@ __metadata:
languageName: node
linkType: hard
"resolve@npm:^1.1.6":
"resolve@npm:^1.1.6, resolve@npm:^1.10.0":
version: 1.21.0
resolution: "resolve@npm:1.21.0"
dependencies:
@@ -7980,17 +7932,7 @@ __metadata:
languageName: node
linkType: hard
"resolve@npm:^1.10.0":
version: 1.19.0
resolution: "resolve@npm:1.19.0"
dependencies:
is-core-module: ^2.1.0
path-parse: ^1.0.6
checksum: a05b356e47b85ad3613d9e2a39a824f3c27f4fcad9c9ff6c7cc71a2e314c5904a90ab37481ad0069d03cab9eaaac6eb68aca1bc3355fdb05f1045cd50e2aacea
languageName: node
linkType: hard
"resolve@patch:resolve@^1.1.6#~builtin<compat/resolve>":
"resolve@patch:resolve@^1.1.6#~builtin<compat/resolve>, resolve@patch:resolve@^1.10.0#~builtin<compat/resolve>":
version: 1.21.0
resolution: "resolve@patch:resolve@npm%3A1.21.0#~builtin<compat/resolve>::version=1.21.0&hash=07638b"
dependencies:
@@ -8003,16 +7945,6 @@ __metadata:
languageName: node
linkType: hard
"resolve@patch:resolve@^1.10.0#~builtin<compat/resolve>":
version: 1.19.0
resolution: "resolve@patch:resolve@npm%3A1.19.0#~builtin<compat/resolve>::version=1.19.0&hash=07638b"
dependencies:
is-core-module: ^2.1.0
path-parse: ^1.0.6
checksum: 2443b94d347e6946c87c85faf13071f605e609e0b54784829b0ed2b917d050bfc1cbaf4ecc6453f224cfa7d0c5dcd97cbb273454cd210bee68e4af15c1a5abc9
languageName: node
linkType: hard
"responselike@npm:1.0.2":
version: 1.0.2
resolution: "responselike@npm:1.0.2"
@@ -8313,14 +8245,7 @@ __metadata:
languageName: node
linkType: hard
"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2":
version: 3.0.3
resolution: "signal-exit@npm:3.0.3"
checksum: f0169d3f1263d06df32ca072b0bf33b34c6f8f0341a7a1621558a2444dfbe8f5fec76b35537fcc6f0bc4944bdb5336fe0bdcf41a5422c4e45a1dba3f45475e6c
languageName: node
linkType: hard
"signal-exit@npm:^3.0.7":
"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.7":
version: 3.0.7
resolution: "signal-exit@npm:3.0.7"
checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318
+13 -8
View File
@@ -11,7 +11,7 @@
"build:backend": "yarn workspace backend build",
"build:all": "backstage-cli repo build --all",
"build:api-reports": "yarn build:api-reports:only --tsc",
"build:api-reports:only": "ts-node -T -P scripts/tsconfig.json scripts/api-extractor.ts",
"build:api-reports:only": "backstage-repo-tools api-reports",
"build:api-docs": "LANG=en_EN yarn build:api-reports --docs",
"tsc": "tsc",
"tsc:full": "backstage-cli repo clean && tsc --skipLibCheck false --incremental false",
@@ -33,7 +33,8 @@
"build-storybook": "yarn ./storybook run build-storybook",
"techdocs-cli": "node scripts/techdocs-cli.js",
"techdocs-cli:dev": "cross-env TECHDOCS_CLI_DEV_MODE=true node scripts/techdocs-cli.js",
"prepare": "husky install"
"prepare": "husky install",
"postinstall": "husky install"
},
"workspaces": {
"packages": [
@@ -45,19 +46,16 @@
"@types/react": "^17",
"@types/react-dom": "^17"
},
"version": "1.8.0",
"version": "1.9.0-next.0",
"dependencies": {
"@backstage/errors": "workspace:^",
"@manypkg/get-packages": "^1.1.3",
"@microsoft/api-documenter": "^7.17.11",
"@microsoft/api-extractor": "^7.23.0",
"@microsoft/api-extractor-model": "^7.17.2",
"@microsoft/tsdoc": "^0.14.1"
"@manypkg/get-packages": "^1.1.3"
},
"devDependencies": {
"@backstage/cli": "workspace:*",
"@backstage/codemods": "workspace:*",
"@backstage/create-app": "workspace:*",
"@backstage/repo-tools": "workspace:*",
"@changesets/cli": "^2.14.0",
"@octokit/rest": "^19.0.3",
"@spotify/prettier-config": "^14.0.0",
@@ -70,6 +68,7 @@
"e2e-test": "workspace:*",
"eslint": "^8.6.0",
"eslint-plugin-notice": "^0.9.10",
"eslint-plugin-testing-library": "^5.9.1",
"fs-extra": "10.1.0",
"husky": "^8.0.0",
"lint-staged": "^13.0.0",
@@ -92,6 +91,12 @@
],
"*.md": [
"node ./scripts/check-docs-quality"
],
"./yarn.lock": [
"node ./scripts/verify-lockfile-duplicates --fix"
],
"*/yarn.lock": [
"node ./scripts/verify-lockfile-duplicates --fix"
]
},
"packageManager": "yarn@3.2.3"
+11
View File
@@ -1,5 +1,16 @@
# @backstage/app-defaults
## 1.0.9-next.0
### Patch Changes
- Updated dependencies
- @backstage/core-components@0.12.1-next.0
- @backstage/core-app-api@1.2.1-next.0
- @backstage/core-plugin-api@1.1.1-next.0
- @backstage/theme@0.2.16
- @backstage/plugin-permission-react@0.4.8-next.0
## 1.0.8
### Patch Changes
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/app-defaults",
"description": "Provides the default wiring of a Backstage App",
"version": "1.0.8",
"version": "1.0.9-next.0",
"publishConfig": {
"access": "public",
"main": "dist/index.esm.js",
+63
View File
@@ -1,5 +1,68 @@
# example-app
## 0.2.78-next.0
### Patch Changes
- Updated dependencies
- @backstage/plugin-catalog-graph@0.2.24-next.0
- @backstage/plugin-pagerduty@0.5.5-next.0
- @backstage/plugin-techdocs-react@1.0.7-next.0
- @backstage/plugin-scaffolder@1.9.0-next.0
- @backstage/cli@0.21.2-next.0
- @backstage/plugin-cost-insights@0.12.1-next.0
- @backstage/core-components@0.12.1-next.0
- @backstage/plugin-user-settings@0.6.0-next.0
- @backstage/plugin-explore@0.3.43-next.0
- @backstage/core-app-api@1.2.1-next.0
- @backstage/core-plugin-api@1.1.1-next.0
- @backstage/integration-react@1.1.7-next.0
- @backstage/plugin-airbrake@0.3.12-next.0
- @backstage/plugin-apache-airflow@0.2.5-next.0
- @backstage/plugin-api-docs@0.8.12-next.0
- @backstage/plugin-azure-devops@0.2.3-next.0
- @backstage/plugin-azure-sites@0.1.1-next.0
- @backstage/plugin-badges@0.2.36-next.0
- @backstage/plugin-catalog-import@0.9.2-next.0
- @backstage/plugin-circleci@0.3.12-next.0
- @backstage/plugin-cloudbuild@0.3.12-next.0
- @backstage/plugin-code-coverage@0.2.5-next.0
- @backstage/plugin-dynatrace@1.0.2-next.0
- @backstage/plugin-gcalendar@0.3.8-next.0
- @backstage/plugin-gcp-projects@0.3.31-next.0
- @backstage/plugin-github-actions@0.5.12-next.0
- @backstage/plugin-gocd@0.1.18-next.0
- @backstage/plugin-graphiql@0.2.44-next.0
- @backstage/plugin-home@0.4.28-next.0
- @backstage/plugin-jenkins@0.7.11-next.0
- @backstage/plugin-kafka@0.3.12-next.0
- @backstage/plugin-kubernetes@0.7.5-next.0
- @backstage/plugin-lighthouse@0.3.12-next.0
- @backstage/plugin-newrelic@0.3.30-next.0
- @backstage/plugin-org@0.6.1-next.0
- @backstage/plugin-playlist@0.1.3-next.0
- @backstage/plugin-rollbar@0.4.12-next.0
- @backstage/plugin-search@1.0.5-next.0
- @backstage/plugin-sentry@0.4.5-next.0
- @backstage/plugin-shortcuts@0.3.4-next.0
- @backstage/plugin-stack-overflow@0.1.8-next.0
- @backstage/plugin-tech-insights@0.3.4-next.0
- @backstage/plugin-tech-radar@0.5.19-next.0
- @backstage/plugin-techdocs-module-addons-contrib@1.0.7-next.0
- @backstage/plugin-techdocs@1.4.1-next.0
- @backstage/plugin-todo@0.2.14-next.0
- @backstage/plugin-catalog-react@1.2.2-next.0
- @backstage/app-defaults@1.0.9-next.0
- @backstage/catalog-model@1.1.4-next.0
- @backstage/config@1.0.5-next.0
- @backstage/theme@0.2.16
- @backstage/plugin-catalog-common@1.0.9-next.0
- @backstage/plugin-newrelic-dashboard@0.2.5-next.0
- @backstage/plugin-permission-react@0.4.8-next.0
- @backstage/plugin-search-common@1.1.2-next.0
- @backstage/plugin-search-react@1.2.2-next.0
- @internal/plugin-catalog-customized@0.0.5-next.0
## 0.2.77
### Patch Changes
+4
View File
@@ -25,14 +25,17 @@ describe('App', () => {
it('should display support info when clicking the button', () => {
cy.visit('/');
// eslint-disable-next-line testing-library/await-async-query
cy.findByTestId('support-button').click({ force: true });
cy.contains('#backstage');
});
it('should display error message when triggering it', () => {
cy.visit('/');
// eslint-disable-next-line testing-library/await-async-query
cy.findByTestId('error-button').click({ force: true });
cy.contains('Error: Oh no!');
// eslint-disable-next-line testing-library/await-async-query
cy.findByTestId('error-button-close').click({ force: true });
});
@@ -55,6 +58,7 @@ describe('App', () => {
cy.contains('Token')
.get('input[name=github-auth-tf]')
.type('password', { force: true });
// eslint-disable-next-line testing-library/await-async-query
cy.findByTestId('github-auth-button').click({ force: true });
cy.contains(`Welcome, ${name}!`);
cy.contains('Logout').click({ force: true });
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "example-app",
"version": "0.2.77",
"version": "0.2.78-next.0",
"private": true,
"backstage": {
"role": "frontend"
+50 -1
View File
@@ -47,12 +47,21 @@ import {
SidebarSpace,
Link,
useSidebarOpenState,
SidebarSubmenu,
SidebarSubmenuItem,
} from '@backstage/core-components';
import { MyGroupsSidebarItem } from '@backstage/plugin-org';
import GroupIcon from '@material-ui/icons/People';
import { SearchModal } from '../search/SearchModal';
import Score from '@material-ui/icons/Score';
import ApiIcon from '@material-ui/icons/Extension';
import ComponentIcon from '@material-ui/icons/Memory';
import DomainIcon from '@material-ui/icons/Apartment';
import ResourceIcon from '@material-ui/icons/Work';
import SystemIcon from '@material-ui/icons/Category';
import UserIcon from '@material-ui/icons/Person';
const useSidebarLogoStyles = makeStyles({
root: {
width: sidebarConfig.drawerWidthClosed,
@@ -93,7 +102,47 @@ export const Root = ({ children }: PropsWithChildren<{}>) => (
<SidebarDivider />
<SidebarGroup label="Menu" icon={<MenuIcon />}>
{/* Global nav, not org-specific */}
<SidebarItem icon={HomeIcon} to="catalog" text="Home" />
<SidebarItem icon={HomeIcon} to="catalog" text="Home">
<SidebarSubmenu title="Catalog">
<SidebarSubmenuItem
title="Domains"
to="catalog?filters[kind]=domain"
icon={DomainIcon}
/>
<SidebarSubmenuItem
title="Systems"
to="catalog?filters[kind]=system"
icon={SystemIcon}
/>
<SidebarSubmenuItem
title="Components"
to="catalog?filters[kind]=component"
icon={ComponentIcon}
/>
<SidebarSubmenuItem
title="APIs"
to="catalog?filters[kind]=api"
icon={ApiIcon}
/>
<SidebarDivider />
<SidebarSubmenuItem
title="Resources"
to="catalog?filters[kind]=resource"
icon={ResourceIcon}
/>
<SidebarDivider />
<SidebarSubmenuItem
title="Groups"
to="catalog?filters[kind]=group"
icon={GroupIcon}
/>
<SidebarSubmenuItem
title="Users"
to="catalog?filters[kind]=user"
icon={UserIcon}
/>
</SidebarSubmenu>
</SidebarItem>
<MyGroupsSidebarItem
singularTitle="My Squad"
pluralTitle="My Squads"
@@ -19,7 +19,6 @@ import {
Content,
DocsIcon,
Header,
Lifecycle,
Page,
useSidebarPinState,
} from '@backstage/core-components';
@@ -66,7 +65,7 @@ const SearchPage = () => {
return (
<Page themeId="home">
{!isMobile && <Header title="Search" subtitle={<Lifecycle alpha />} />}
{!isMobile && <Header title="Search" />}
<Content>
<Grid container direction="row">
<Grid item xs={12}>
+12
View File
@@ -1,5 +1,17 @@
# @backstage/backend-app-api
## 0.2.4-next.0
### Patch Changes
- d6dbf1792b: Added `lifecycleFactory` implementation.
- Updated dependencies
- @backstage/backend-common@0.16.1-next.0
- @backstage/plugin-permission-node@0.7.2-next.0
- @backstage/backend-plugin-api@0.1.5-next.0
- @backstage/backend-tasks@0.3.8-next.0
- @backstage/errors@1.1.4-next.0
## 0.2.3
### Patch Changes
+6
View File
@@ -4,6 +4,7 @@
```ts
import { BackendFeature } from '@backstage/backend-plugin-api';
import { BackendLifecycle } from '@backstage/backend-plugin-api';
import { Config } from '@backstage/config';
import { ExtensionPoint } from '@backstage/backend-plugin-api';
import { HttpRouterService } from '@backstage/backend-plugin-api';
@@ -66,6 +67,11 @@ export type HttpRouterFactoryOptions = {
indexPlugin?: string;
};
// @public
export const lifecycleFactory: (
options?: undefined,
) => ServiceFactory<BackendLifecycle>;
// @public (undocumented)
export const loggerFactory: (options?: undefined) => ServiceFactory<Logger>;
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/backend-app-api",
"description": "Core API used by Backstage backend apps",
"version": "0.2.3",
"version": "0.2.4-next.0",
"main": "src/index.ts",
"types": "src/index.ts",
"publishConfig": {
@@ -25,4 +25,5 @@ export { schedulerFactory } from './schedulerService';
export { tokenManagerFactory } from './tokenManagerService';
export { urlReaderFactory } from './urlReaderService';
export { httpRouterFactory } from './httpRouterService';
export { lifecycleFactory } from './lifecycleService';
export type { HttpRouterFactoryOptions } from './httpRouterService';

Some files were not shown because too many files have changed in this diff Show More