Merge remote-tracking branch 'upstream/master' into fix-catalog-2

Signed-off-by: Gustaf Lundh <gustaf.lundh@axis.com>
This commit is contained in:
Gustaf Lundh
2022-11-29 01:06:32 +01:00
762 changed files with 17374 additions and 3652 deletions
+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/repo-tools': minor
---
Introducing repo-tools 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-catalog-backend': patch
---
Optimize `Stitcher` process to be more memory efficient
+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
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend-module-github': patch
---
Added the githubCredentialsProvider property to the GithubLocationAnalyzerOptions to be able to override the GithubCredentialsProvider.
+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
+6
View File
@@ -0,0 +1,6 @@
---
'@backstage/plugin-bazaar': patch
---
`HomePageBazaarInfoCard` is now displaying `title` instead of `name`. Title is a string that doesn't have to be URL friendly.
The BazaarOverviewCard have the new property `fullHeight`. Link in `BazaarOverviewCard`is moved to header in card.
+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': patch
---
Fixed deprecated use of `substr` into `substring`.
+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.
+9
View File
@@ -0,0 +1,9 @@
---
'@backstage/plugin-adr': patch
'@backstage/plugin-catalog': patch
'@backstage/plugin-search-react': patch
'@backstage/plugin-stack-overflow': patch
'@backstage/plugin-techdocs': patch
---
Update search links to only have header as linkable text
+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-bazaar-backend': patch
---
Column `title` has replaced column `name` for `BazaarProject` in database
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/cli': patch
---
JSX and React Fast Refresh transforms are no longer enabled when bundling backend code.
+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
---
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-events-backend-module-aws-sqs': patch
---
Upgrade to AWS SDK for Javascript v3
+8
View File
@@ -0,0 +1,8 @@
---
'@backstage/plugin-techdocs-node': patch
---
Upgrade to AWS SDK for Javascript v3
Techdocs support for AWS S3 now requires defining the AWS region to connect to.
If `techdocs.publisher.awsS3.region` is missing from the config, the AWS environment variable `AWS_REGION` will be used.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/backend-common': patch
---
Fixed `SingleHostDiscovery` so that it properly handles single-string `backend.listen` configurations such as `:80`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/repo-tools': patch
---
add the command type-deps to the repo tool package.
+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
---
added an optional config entry `costInsights.engineerThreshold` to allow users to control the threshold value for the 'negligible' change in costs.
+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`.
+186
View File
@@ -50,5 +50,191 @@ module.exports = {
'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,
},
],
}
+2
View File
@@ -126,6 +126,7 @@ github
Gitiles
gitlab
GitLab
globals
Gource
Grafana
graphql
@@ -409,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,
});
+1 -1
View File
@@ -8,7 +8,7 @@ jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v5
- uses: actions/stale@v6
id: stale
with:
stale-issue-message: >
+3 -3
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,7 +63,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 }}
@@ -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 }}
+3 -2
View File
@@ -12,6 +12,7 @@ jobs:
needs_release: ${{ steps.release_check.outputs.needs_release }}
strategy:
fail-fast: false
matrix:
node-version: [16.x, 18.x]
@@ -67,7 +68,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 +146,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
+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
+1
View File
@@ -373,6 +373,7 @@ auth:
development: {}
costInsights:
engineerCost: 200000
engineerThreshold: 0.5
products:
computeEngine:
name: Compute Engine
@@ -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
+4
View File
@@ -279,6 +279,8 @@ an example:
</SearchResult>
```
> For more advanced customization of the Search frontend, also see how to guides such as [How to implement your own Search API](./how-to-guides.md#how-to-implement-your-own-search-api) and [How to customize search results highlighting styling](./how-to-guides.md#how-to-customize-search-results-highlighting-styling)
### Backend
Backstage Search isn't a search engine itself, rather, it provides an interface
@@ -380,3 +382,5 @@ indexBuilder.addCollator({
}),
});
```
> For more advanced customization of the Search backend, also see how to guides such as [How to index TechDocs documents](./how-to-guides.md#how-to-index-techdocs-documents) and [How to limit what can be searched in the Software Catalog](./how-to-guides.md#how-to-limit-what-can-be-searched-in-the-software-catalog)
@@ -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
@@ -76,6 +76,9 @@ an entity to function. It can for example be used to express that a website
component needs a library component as part of its build, or that a service
component uses a persistent storage resource.
This relation is commonly generated based on `spec.dependsOn` of the component
or resource in question.
### `parentOf` and `childOf`
A parent/child relation to build up a tree, used for example to describe the
+1 -1
View File
@@ -235,7 +235,7 @@ details.
You need to make sure that your environment is able to authenticate with the
target cloud provider. `techdocs-cli` uses the official Node.js clients provided
by AWS (v2), Google Cloud and Azure. You can authenticate using environment
by AWS (v3), Google Cloud and Azure. You can authenticate using environment
variables and/or by other means (`~/.aws/credentials`, `~/.config/gcloud` etc.)
Refer to the Authentication section of the following documentation depending
+3 -3
View File
@@ -108,8 +108,8 @@ techdocs:
# (Optional) An API key is required to write to a storage bucket.
# If not set, environment variables or aws config file will be used to authenticate.
# https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/loading-node-credentials-environment.html
# https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/loading-node-credentials-shared.html
# https://www.npmjs.com/package/@aws-sdk/credential-provider-node
# https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/setting-credentials-node.html
credentials:
accessKeyId: ${TECHDOCS_AWSS3_ACCESS_KEY_ID_CREDENTIAL}
secretAccessKey: ${TECHDOCS_AWSS3_SECRET_ACCESS_KEY_CREDENTIAL}
@@ -121,7 +121,7 @@ techdocs:
# (Optional) Endpoint URI to send requests to.
# If not set, the default endpoint is built from the configured region.
# https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#constructor-property
# https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-s3/interfaces/s3clientconfig.html#endpoint
endpoint: ${AWS_ENDPOINT}
# (Optional) Whether to use path style URLs when communicating with S3.
+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'
+8 -11
View File
@@ -219,22 +219,19 @@ If the environment variables
- `AWS_REGION`
are set and can be used to access the bucket you created in step 2, they will be
used by the AWS SDK V2 Node.js client for authentication.
[Refer to the official documentation for loading credentials in Node.js from environment variables](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/loading-node-credentials-environment.html).
used by the AWS SDK V3 Node.js client for authentication.
[Refer to the official documentation for loading credentials in Node.js from environment variables](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/loading-node-credentials-environment.html).
If the environment variables are missing, the AWS SDK tries to read the
`~/.aws/credentials` file for credentials.
[Refer to the official documentation.](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/loading-node-credentials-shared.html)
[Refer to the official documentation.](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/loading-node-credentials-shared.html)
If you are using Amazon EC2 instance to deploy Backstage, you do not need to
obtain the access keys separately. They can be made available in the environment
automatically by defining appropriate IAM role with access to the bucket. Read
more in
If you are deploying Backstage to Amazon EC2, Amazon ECS, or Amazon EKS, you do
not need to obtain the access keys separately. They can be made available in the
environment automatically by defining appropriate IAM role with access to the
bucket. Read more in the
[official AWS documentation for using IAM roles.](https://docs.aws.amazon.com/general/latest/gr/aws-access-keys-best-practices.html#use-roles).
The AWS Region of the bucket is optional since TechDocs uses AWS SDK V2 and not
V3.
**4b. Authentication using app-config.yaml**
AWS credentials and region can be provided to the AWS SDK via `app-config.yaml`.
@@ -254,7 +251,7 @@ techdocs:
```
Refer to the
[official AWS documentation for obtaining the credentials](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/getting-your-credentials.html).
[official AWS documentation for obtaining the credentials](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/setting-credentials-node.html).
**4c. Authentication using an assumed role** Users with multiple AWS accounts
may want to use a role for S3 storage that is in a different AWS account. Using
+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
+2 -1
View File
@@ -29,8 +29,9 @@ After you have cloned the Backstage repository, you should run the following
commands once to set things up for development:
```bash
$ yarn install # fetch dependency packages - may take a while
$ cd backstage # change to root directory of project
$ yarn install # fetch dependency packages - may take a while
$ yarn tsc # does a first run of type generation and checks
```
+1 -1
View File
@@ -78,7 +78,7 @@ const routes = (
)
```
### 4. Update sidebar items
#### 4. Update sidebar items
Let's update the route for "Home" in the Backstage sidebar to point to the new homepage. We'll also add a Sidebar item to quickly open Catalog.
+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'
Binary file not shown.

After

Width:  |  Height:  |  Size: 142 KiB

+3 -3
View File
@@ -7393,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

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