Merge remote-tracking branch 'origin/master' into marley/19264-circular-dependency-fix

This commit is contained in:
Marley Powell
2023-08-17 11:17:15 +01:00
842 changed files with 27212 additions and 6527 deletions
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/core-app-api': patch
---
Fixed a bug that could cause `navigate` analytics events to be misattributed to the plugin mounted on the root route (e.g. the `home` plugin at `/`) when the route that was navigated to wasn't associated with a routable extension.
-43
View File
@@ -1,43 +0,0 @@
---
'@backstage/plugin-catalog-backend-module-incremental-ingestion': patch
'@backstage/plugin-catalog-backend-module-bitbucket-server': patch
'@backstage/plugin-catalog-backend-module-bitbucket-cloud': patch
'@backstage/plugin-search-backend-module-elasticsearch': patch
'@backstage/plugin-catalog-backend-module-puppetdb': patch
'@backstage/plugin-catalog-backend-module-msgraph': patch
'@backstage/plugin-search-backend-module-techdocs': patch
'@backstage/plugin-catalog-backend-module-gerrit': patch
'@backstage/plugin-catalog-backend-module-github': patch
'@backstage/plugin-catalog-backend-module-gitlab': patch
'@backstage/plugin-events-backend-module-aws-sqs': patch
'@backstage/plugin-search-backend-module-catalog': patch
'@backstage/plugin-search-backend-module-explore': patch
'@backstage/plugin-catalog-backend-module-azure': patch
'@backstage/plugin-events-backend-module-github': patch
'@backstage/plugin-events-backend-module-gitlab': patch
'@backstage/plugin-catalog-backend-module-aws': patch
'@backstage/plugin-catalog-backend-module-gcp': patch
'@backstage/plugin-search-backend-module-pg': patch
'@backstage/plugin-azure-devops-backend': patch
'@backstage/plugin-kubernetes-backend': patch
'@backstage/plugin-lighthouse-backend': patch
'@backstage/plugin-permission-backend': patch
'@backstage/plugin-scaffolder-backend': patch
'@backstage/backend-defaults': patch
'@backstage/plugin-airbrake-backend': patch
'@backstage/plugin-devtools-backend': patch
'@backstage/plugin-periskop-backend': patch
'@backstage/plugin-techdocs-backend': patch
'@backstage/backend-common': patch
'@backstage/plugin-catalog-backend': patch
'@backstage/plugin-badges-backend': patch
'@backstage/plugin-bazaar-backend': patch
'@backstage/plugin-events-backend': patch
'@backstage/plugin-search-backend': patch
'@backstage/plugin-kafka-backend': patch
'@backstage/plugin-proxy-backend': patch
'@backstage/plugin-todo-backend': patch
'@backstage/plugin-app-backend': patch
---
Use `coreServices.rootConfig` instead of `coreService.config`
-7
View File
@@ -1,7 +0,0 @@
---
'@backstage/plugin-search-backend-module-techdocs': patch
'@backstage/plugin-search-backend-module-catalog': patch
'@backstage/plugin-search-backend-module-explore': patch
---
Ensure that all services are dependency injected into the module instead of taken from options
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-app-api': patch
---
Do not throw in backend.stop, if start failed
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-graph': patch
---
Propagate entity spec to EntityNode so that spec info such as type can be used for graph node customization
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-kubernetes-backend': patch
---
Fixed a bug where the proxy was not rewriting WebSocket request paths properly.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-playlist': patch
---
Displaying an alert popup each time the Playlist is created or deleted
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder': patch
---
Fix the get entities query in the `MyGroupsPicker` to query the `kind=Group` entities.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/create-app': patch
---
Bumped create-app version.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/create-app': patch
---
Bumped create-app version.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-graph': patch
---
Added maximum depth parameter to the catalogGraphParams in CatalogGraphCard.
-7
View File
@@ -1,7 +0,0 @@
---
'@backstage/config-loader': minor
---
Loading invalid TypeScript configuration schemas will now throw an error rather than silently being ignored.
In particular this includes defining any additional types other than `Config` in the schema file, or use of unsupported types such as `Record` or `Partial`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-auth-backend-module-gcp-iap-provider': minor
---
New module for `@backstage/plugin-auth-backend` that adds a GCP IAP auth provider.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder-backend': patch
---
Add examples for `publish:github` and `publish:gitlab` scaffolder actions.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-auth-backend': patch
---
Updated `frameHandler` to return `undefined` when using the redirect flow instead of returning `postMessageReponse` which was causing errors
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-backend': patch
---
Added examples for the fs:delete and fs:rename actions
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-graphql-voyager': patch
---
Fix typo in install instructions.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-openapi-utils': patch
---
Add a new `createRouter` method for generating an `express` router that validates against your spec. Also fixes a bug with the query parameters type resolution.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-auth-backend': patch
---
Deprecated several exports that are now available from `@backstage/plugin-auth-node` instead.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-explore-backend': patch
---
Moved the config example from the "Tools as Code" section to the "Tools as Config" section of the README
-91
View File
@@ -1,91 +0,0 @@
---
'@backstage/plugin-scaffolder-backend-module-confluence-to-markdown': patch
'@backstage/plugin-scaffolder-backend-module-cookiecutter': patch
'@backstage/plugin-events-backend-module-bitbucket-cloud': patch
'@backstage/plugin-search-backend-module-elasticsearch': patch
'@backstage/plugin-catalog-backend-module-unprocessed': patch
'@backstage/plugin-scaffolder-backend-module-sentry': patch
'@backstage/plugin-scaffolder-backend-module-yeoman': patch
'@backstage/plugin-scaffolder-backend-module-rails': patch
'@backstage/plugin-search-backend-module-techdocs': patch
'@backstage/plugin-cicd-statistics-module-gitlab': patch
'@backstage/plugin-events-backend-module-aws-sqs': patch
'@backstage/plugin-search-backend-module-catalog': patch
'@backstage/plugin-search-backend-module-explore': patch
'@backstage/plugin-events-backend-module-gerrit': patch
'@backstage/plugin-events-backend-module-github': patch
'@backstage/plugin-events-backend-module-gitlab': patch
'@backstage/plugin-events-backend-module-azure': patch
'@backstage/plugin-events-backend-test-utils': patch
'@backstage/plugin-search-backend-module-pg': patch
'@backstage/plugin-entity-feedback-backend': patch
'@backstage/backend-openapi-utils': patch
'@backstage/plugin-bitbucket-cloud-common': patch
'@backstage/plugin-entity-feedback-common': patch
'@backstage/plugin-code-coverage-backend': patch
'@backstage/plugin-user-settings-backend': patch
'@backstage/plugin-analytics-module-ga4': patch
'@backstage/plugin-azure-devops-backend': patch
'@backstage/plugin-analytics-module-ga': patch
'@backstage/plugin-git-release-manager': patch
'@backstage/plugin-search-backend-node': patch
'@backstage/integration-react': patch
'@backstage/plugin-github-deployments': patch
'@backstage/plugin-microsoft-calendar': patch
'@backstage/plugin-newrelic-dashboard': patch
'@backstage/plugin-permission-backend': patch
'@backstage/plugin-entity-validation': patch
'@backstage/plugin-sonarqube-backend': patch
'@backstage/plugin-airbrake-backend': patch
'@backstage/plugin-devtools-backend': patch
'@backstage/plugin-linguist-backend': patch
'@backstage/plugin-periskop-backend': patch
'@backstage/plugin-playlist-backend': patch
'@backstage/plugin-apollo-explorer': patch
'@backstage/plugin-devtools-common': patch
'@backstage/plugin-entity-feedback': patch
'@backstage/plugin-explore-backend': patch
'@backstage/plugin-graphql-voyager': patch
'@backstage/plugin-jenkins-backend': patch
'@backstage/plugin-linguist-common': patch
'@backstage/plugin-playlist-common': patch
'@backstage/plugin-scaffolder-node': patch
'@backstage/plugin-apache-airflow': patch
'@backstage/plugin-bazaar-backend': patch
'@backstage/plugin-events-backend': patch
'@backstage/plugin-jenkins-common': patch
'@backstage/plugin-octopus-deploy': patch
'@backstage/plugin-search-backend': patch
'@backstage/plugin-stack-overflow': patch
'@backstage/plugin-catalog-graph': patch
'@backstage/plugin-code-coverage': patch
'@backstage/plugin-config-schema': patch
'@backstage/plugin-github-issues': patch
'@backstage/plugin-nomad-backend': patch
'@backstage/plugin-tech-insights': patch
'@backstage/plugin-catalog-node': patch
'@backstage/plugin-code-climate': patch
'@backstage/plugin-events-node': patch
'@backstage/plugin-firehydrant': patch
'@backstage/cli-node': patch
'@backstage/plugin-auth-node': patch
'@backstage/plugin-codescene': patch
'@backstage/plugin-dynatrace': patch
'@backstage/plugin-gcalendar': patch
'@backstage/plugin-org-react': patch
'@backstage/plugin-shortcuts': patch
'@backstage/plugin-xcmetrics': patch
'@backstage/plugin-airbrake': patch
'@backstage/plugin-periskop': patch
'@backstage/plugin-playlist': patch
'@backstage/plugin-bitrise': patch
'@backstage/plugin-allure': patch
'@backstage/plugin-bazaar': patch
'@backstage/plugin-ilert': patch
'@backstage/plugin-kafka': patch
'@backstage/plugin-nomad': patch
'@backstage/plugin-adr': patch
'@backstage/plugin-org': patch
---
Add package repository and homepage metadata
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-backend-module-gitlab': patch
---
Added option to skip forked repos in GitlabDiscoveryEntityProvider
-14
View File
@@ -1,14 +0,0 @@
---
'@backstage/plugin-devtools-backend': patch
---
Add DevTools configuration to enable dependency listing to be filtered with custom prefixes. For instance, in your `app-config.yaml`:
```yaml
devTools:
info:
packagePrefixes:
- @backstage/
- @roadiehq/backstage-
- @spotify/backstage-
```
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-linguist-common': patch
---
Exported new LanguageType type alias
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-linguist-backend': patch
---
Fixed bug in LinguistBackendClient.ts file where if the linguistJsOptions is specified and sent over to the linguist-js package it would get changed (another attribute would be added) causing future entities of the batch to fail with an error
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-sonarqube': patch
---
Remove sonarQube card disable class
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-app-node': minor
---
Added the `app` plugin node library, initially providing an extension point that can be used to configure a static fallback handler.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-backend': minor
---
Support configuring applicable kinds for `AnnotateScmSlugEntityProcessor`
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/cli': patch
---
Reload the frontend when app config changes
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-home-react': patch
---
Make `title` optional when defining the `createCardExtension`
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-backend': patch
---
Adds examples to a few scaffolder actions.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-test-utils': minor
---
**BREAKING**: Renamed `mockServices.config` to `mockServices.rootConfig`.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-app-api': minor
---
**BREAKING**: Renamed `configServiceFactory` to `rootConfigServiceFactory`.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-plugin-api': minor
---
**BREAKING**: Renamed `coreServices.config` to `coreServices.rootConfig`.
-17
View File
@@ -1,17 +0,0 @@
---
'@backstage/plugin-catalog-backend-module-bitbucket-server': patch
'@backstage/plugin-catalog-backend-module-bitbucket-cloud': patch
'@backstage/plugin-catalog-backend-module-puppetdb': patch
'@backstage/plugin-catalog-backend-module-msgraph': patch
'@backstage/plugin-catalog-backend-module-gerrit': patch
'@backstage/plugin-catalog-backend-module-github': patch
'@backstage/plugin-catalog-backend-module-gitlab': patch
'@backstage/plugin-events-backend-module-aws-sqs': patch
'@backstage/plugin-catalog-backend-module-azure': patch
'@backstage/plugin-catalog-backend-module-aws': patch
'@backstage/backend-common': patch
'@backstage/plugin-jenkins-backend': patch
'@backstage/plugin-proxy-backend': patch
---
Fixed invalid configuration schema. The configuration schema may be more strict as a result.
-8
View File
@@ -1,8 +0,0 @@
---
'@backstage/core-components': patch
'@backstage/plugin-splunk-on-call': patch
'@backstage/plugin-xcmetrics': patch
'@backstage/plugin-catalog': patch
---
Prefer simple `theme.spacing` without string interpolation
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-backend-module-confluence-to-markdown': patch
---
Use `fetchContents` directly instead of a `fetchPlainAction`
+28
View File
@@ -0,0 +1,28 @@
---
'@backstage/plugin-auth-node': minor
---
Introduced a new system for building auth providers for `@backstage/plugin-auth-backend`, which both increases the amount of code re-use across providers, and also works better with the new backend system.
Many existing types have been moved from `@backstage/plugin-auth-backend` in order to avoid a direct dependency on the plugin from modules.
Auth provider integrations are now primarily implemented through a pattern of creating "authenticators", which are in turn specific to each kind of integrations. Initially there are two types: `createOAuthAuthenticator` and `createProxyAuthenticator`. These come paired with functions that let you create the corresponding route handlers, `createOAuthRouteHandlers` and `createProxyAuthRouteHandlers`, as well as provider factories, `createOAuthProviderFactory` and `createProxyAuthProviderFactory`. This new authenticator pattern allows the sign-in logic to be separated from the auth integration logic, allowing it to be completely re-used across all providers of the same kind.
The new provider factories also implement a new declarative way to configure sign-in resolvers, rather than configuration through code. Sign-in resolvers can now be configured through the `resolvers` configuration key, where the first resolver that provides an identity will be used, for example:
```yaml
auth:
providers:
google:
development:
clientId: ...
clientSecret: ...
signIn:
resolvers:
- resolver: emailMatchingUserEntityAnnotation
- resolver: emailLocalPartMatchingUserEntityName
```
These configurable resolvers are created with a new `createSignInResolverFactory` function, which creates a sign-in resolver factory, optionally with an options schema that will be used both when configuring the sign-in resolver through configuration and code.
The internal helpers from `@backstage/plugin-auth-backend` that were used to implement auth providers using passport strategies have now also been made available as public API, through `PassportHelpers` and `PassportOAuthAuthenticatorHelper`.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-backend-module-unprocessed': minor
---
**BREAKING**: Fixing typo in exported module. You will have to rename the import to the correct spelling. `UnprocessedEntites` -> `UnprocessedEntities`
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-auth-backend': patch
---
Updated config schema to match what was being used in code
+201 -245
View File
@@ -2,280 +2,236 @@
"mode": "pre",
"tag": "next",
"initialVersions": {
"example-app": "0.2.85",
"@backstage/app-defaults": "1.4.1",
"example-backend": "0.2.85",
"@backstage/backend-app-api": "0.4.5",
"@backstage/backend-common": "0.19.1",
"@backstage/backend-defaults": "0.1.12",
"example-app": "0.2.86",
"@backstage/app-defaults": "1.4.2",
"example-backend": "0.2.86",
"@backstage/backend-app-api": "0.5.0",
"@backstage/backend-common": "0.19.2",
"@backstage/backend-defaults": "0.2.0",
"@backstage/backend-dev-utils": "0.1.1",
"example-backend-next": "0.0.13",
"@backstage/backend-openapi-utils": "0.0.2",
"@backstage/backend-plugin-api": "0.5.4",
"@backstage/backend-tasks": "0.5.4",
"@backstage/backend-test-utils": "0.1.39",
"example-backend-next": "0.0.14",
"@backstage/backend-openapi-utils": "0.0.3",
"@backstage/backend-plugin-api": "0.6.0",
"@backstage/backend-tasks": "0.5.5",
"@backstage/backend-test-utils": "0.2.0",
"@backstage/catalog-client": "1.4.3",
"@backstage/catalog-model": "1.4.1",
"@backstage/cli": "0.22.9",
"@backstage/cli": "0.22.10",
"@backstage/cli-common": "0.1.12",
"@backstage/cli-node": "0.1.2",
"@backstage/cli-node": "0.1.3",
"@backstage/codemods": "0.1.45",
"@backstage/config": "1.0.8",
"@backstage/config-loader": "1.3.2",
"@backstage/core-app-api": "1.9.0",
"@backstage/core-components": "0.13.3",
"@backstage/config-loader": "1.4.0",
"@backstage/core-app-api": "1.9.1",
"@backstage/core-components": "0.13.4",
"@backstage/core-plugin-api": "1.5.3",
"@backstage/create-app": "0.5.3",
"@backstage/dev-utils": "1.0.17",
"e2e-test": "0.2.5",
"@backstage/create-app": "0.5.4",
"@backstage/dev-utils": "1.0.18",
"e2e-test": "0.2.6",
"@backstage/errors": "1.2.1",
"@backstage/eslint-plugin": "0.1.3",
"@backstage/integration": "1.5.1",
"@backstage/integration": "1.6.0",
"@backstage/integration-aws-node": "0.1.5",
"@backstage/integration-react": "1.1.15",
"@backstage/integration-react": "1.1.16",
"@backstage/release-manifests": "0.0.9",
"@backstage/repo-tools": "0.3.2",
"@techdocs/cli": "1.4.4",
"techdocs-cli-embedded-app": "0.2.84",
"@backstage/test-utils": "1.4.1",
"@backstage/repo-tools": "0.3.3",
"@techdocs/cli": "1.4.5",
"techdocs-cli-embedded-app": "0.2.85",
"@backstage/test-utils": "1.4.2",
"@backstage/theme": "0.4.1",
"@backstage/types": "1.1.0",
"@backstage/version-bridge": "1.0.4",
"@backstage/plugin-adr": "0.6.3",
"@backstage/plugin-adr-backend": "0.3.5",
"@backstage/plugin-adr-common": "0.2.11",
"@backstage/plugin-airbrake": "0.3.20",
"@backstage/plugin-airbrake-backend": "0.2.20",
"@backstage/plugin-allure": "0.1.36",
"@backstage/plugin-analytics-module-ga": "0.1.31",
"@backstage/plugin-analytics-module-ga4": "0.1.2",
"@backstage/plugin-apache-airflow": "0.2.13",
"@backstage/plugin-api-docs": "0.9.6",
"@backstage/plugin-adr": "0.6.4",
"@backstage/plugin-adr-backend": "0.3.6",
"@backstage/plugin-adr-common": "0.2.12",
"@backstage/plugin-airbrake": "0.3.21",
"@backstage/plugin-airbrake-backend": "0.2.21",
"@backstage/plugin-allure": "0.1.37",
"@backstage/plugin-analytics-module-ga": "0.1.32",
"@backstage/plugin-analytics-module-ga4": "0.1.3",
"@backstage/plugin-analytics-module-newrelic-browser": "0.0.1",
"@backstage/plugin-apache-airflow": "0.2.14",
"@backstage/plugin-api-docs": "0.9.7",
"@backstage/plugin-api-docs-module-protoc-gen-doc": "0.1.2",
"@backstage/plugin-apollo-explorer": "0.1.13",
"@backstage/plugin-app-backend": "0.3.47",
"@backstage/plugin-auth-backend": "0.18.5",
"@backstage/plugin-auth-node": "0.2.16",
"@backstage/plugin-azure-devops": "0.3.2",
"@backstage/plugin-azure-devops-backend": "0.3.26",
"@backstage/plugin-apollo-explorer": "0.1.14",
"@backstage/plugin-app-backend": "0.3.48",
"@backstage/plugin-app-node": "0.1.0",
"@backstage/plugin-auth-backend": "0.18.6",
"@backstage/plugin-auth-node": "0.2.17",
"@backstage/plugin-azure-devops": "0.3.3",
"@backstage/plugin-azure-devops-backend": "0.3.27",
"@backstage/plugin-azure-devops-common": "0.3.0",
"@backstage/plugin-azure-sites": "0.1.9",
"@backstage/plugin-azure-sites-backend": "0.1.9",
"@backstage/plugin-azure-sites": "0.1.10",
"@backstage/plugin-azure-sites-backend": "0.1.10",
"@backstage/plugin-azure-sites-common": "0.1.0",
"@backstage/plugin-badges": "0.2.44",
"@backstage/plugin-badges-backend": "0.2.2",
"@backstage/plugin-bazaar": "0.2.11",
"@backstage/plugin-bazaar-backend": "0.2.10",
"@backstage/plugin-bitbucket-cloud-common": "0.2.8",
"@backstage/plugin-bitrise": "0.1.47",
"@backstage/plugin-catalog": "1.12.0",
"@backstage/plugin-catalog-backend": "1.11.0",
"@backstage/plugin-catalog-backend-module-aws": "0.2.2",
"@backstage/plugin-catalog-backend-module-azure": "0.1.18",
"@backstage/plugin-catalog-backend-module-bitbucket": "0.2.14",
"@backstage/plugin-catalog-backend-module-bitbucket-cloud": "0.1.14",
"@backstage/plugin-catalog-backend-module-bitbucket-server": "0.1.12",
"@backstage/plugin-catalog-backend-module-gerrit": "0.1.15",
"@backstage/plugin-catalog-backend-module-github": "0.3.2",
"@backstage/plugin-catalog-backend-module-gitlab": "0.2.3",
"@backstage/plugin-catalog-backend-module-incremental-ingestion": "0.4.0",
"@backstage/plugin-catalog-backend-module-ldap": "0.5.14",
"@backstage/plugin-catalog-backend-module-msgraph": "0.5.6",
"@backstage/plugin-catalog-backend-module-openapi": "0.1.13",
"@backstage/plugin-catalog-backend-module-puppetdb": "0.1.4",
"@backstage/plugin-catalog-backend-module-unprocessed": "0.1.1",
"@backstage/plugin-badges": "0.2.45",
"@backstage/plugin-badges-backend": "0.2.3",
"@backstage/plugin-bazaar": "0.2.12",
"@backstage/plugin-bazaar-backend": "0.2.11",
"@backstage/plugin-bitbucket-cloud-common": "0.2.9",
"@backstage/plugin-bitrise": "0.1.48",
"@backstage/plugin-catalog": "1.12.1",
"@backstage/plugin-catalog-backend": "1.12.0",
"@backstage/plugin-catalog-backend-module-aws": "0.2.3",
"@backstage/plugin-catalog-backend-module-azure": "0.1.19",
"@backstage/plugin-catalog-backend-module-bitbucket": "0.2.15",
"@backstage/plugin-catalog-backend-module-bitbucket-cloud": "0.1.15",
"@backstage/plugin-catalog-backend-module-bitbucket-server": "0.1.13",
"@backstage/plugin-catalog-backend-module-gcp": "0.1.0",
"@backstage/plugin-catalog-backend-module-gerrit": "0.1.16",
"@backstage/plugin-catalog-backend-module-github": "0.3.3",
"@backstage/plugin-catalog-backend-module-gitlab": "0.2.4",
"@backstage/plugin-catalog-backend-module-incremental-ingestion": "0.4.1",
"@backstage/plugin-catalog-backend-module-ldap": "0.5.15",
"@backstage/plugin-catalog-backend-module-msgraph": "0.5.7",
"@backstage/plugin-catalog-backend-module-openapi": "0.1.14",
"@backstage/plugin-catalog-backend-module-puppetdb": "0.1.5",
"@backstage/plugin-catalog-backend-module-unprocessed": "0.2.0",
"@backstage/plugin-catalog-common": "1.0.15",
"@internal/plugin-catalog-customized": "0.0.12",
"@backstage/plugin-catalog-graph": "0.2.32",
"@internal/plugin-catalog-customized": "0.0.13",
"@backstage/plugin-catalog-graph": "0.2.33",
"@backstage/plugin-catalog-graphql": "0.3.22",
"@backstage/plugin-catalog-import": "0.9.10",
"@backstage/plugin-catalog-node": "1.4.0",
"@backstage/plugin-catalog-react": "1.8.0",
"@backstage/plugin-catalog-unprocessed-entities": "0.1.1",
"@backstage/plugin-cicd-statistics": "0.1.22",
"@backstage/plugin-cicd-statistics-module-gitlab": "0.1.16",
"@backstage/plugin-circleci": "0.3.20",
"@backstage/plugin-cloudbuild": "0.3.20",
"@backstage/plugin-code-climate": "0.1.20",
"@backstage/plugin-code-coverage": "0.2.13",
"@backstage/plugin-code-coverage-backend": "0.2.13",
"@backstage/plugin-codescene": "0.1.15",
"@backstage/plugin-config-schema": "0.1.43",
"@backstage/plugin-cost-insights": "0.12.9",
"@backstage/plugin-catalog-import": "0.9.11",
"@backstage/plugin-catalog-node": "1.4.1",
"@backstage/plugin-catalog-react": "1.8.1",
"@backstage/plugin-catalog-unprocessed-entities": "0.1.2",
"@backstage/plugin-cicd-statistics": "0.1.23",
"@backstage/plugin-cicd-statistics-module-gitlab": "0.1.17",
"@backstage/plugin-circleci": "0.3.21",
"@backstage/plugin-cloudbuild": "0.3.21",
"@backstage/plugin-code-climate": "0.1.21",
"@backstage/plugin-code-coverage": "0.2.14",
"@backstage/plugin-code-coverage-backend": "0.2.14",
"@backstage/plugin-codescene": "0.1.16",
"@backstage/plugin-config-schema": "0.1.44",
"@backstage/plugin-cost-insights": "0.12.10",
"@backstage/plugin-cost-insights-common": "0.1.1",
"@backstage/plugin-devtools": "0.1.2",
"@backstage/plugin-devtools-backend": "0.1.2",
"@backstage/plugin-devtools-common": "0.1.2",
"@backstage/plugin-dynatrace": "7.0.0",
"@backstage/plugin-entity-feedback": "0.2.3",
"@backstage/plugin-entity-feedback-backend": "0.1.5",
"@backstage/plugin-entity-feedback-common": "0.1.1",
"@backstage/plugin-entity-validation": "0.1.5",
"@backstage/plugin-events-backend": "0.2.8",
"@backstage/plugin-events-backend-module-aws-sqs": "0.2.2",
"@backstage/plugin-events-backend-module-azure": "0.1.9",
"@backstage/plugin-events-backend-module-bitbucket-cloud": "0.1.9",
"@backstage/plugin-events-backend-module-gerrit": "0.1.9",
"@backstage/plugin-events-backend-module-github": "0.1.9",
"@backstage/plugin-events-backend-module-gitlab": "0.1.9",
"@backstage/plugin-events-backend-test-utils": "0.1.9",
"@backstage/plugin-events-node": "0.2.8",
"@internal/plugin-todo-list": "1.0.15",
"@internal/plugin-todo-list-backend": "1.0.15",
"@backstage/plugin-devtools": "0.1.3",
"@backstage/plugin-devtools-backend": "0.1.3",
"@backstage/plugin-devtools-common": "0.1.3",
"@backstage/plugin-dynatrace": "7.0.1",
"@backstage/plugin-entity-feedback": "0.2.4",
"@backstage/plugin-entity-feedback-backend": "0.1.6",
"@backstage/plugin-entity-feedback-common": "0.1.2",
"@backstage/plugin-entity-validation": "0.1.6",
"@backstage/plugin-events-backend": "0.2.9",
"@backstage/plugin-events-backend-module-aws-sqs": "0.2.3",
"@backstage/plugin-events-backend-module-azure": "0.1.10",
"@backstage/plugin-events-backend-module-bitbucket-cloud": "0.1.10",
"@backstage/plugin-events-backend-module-gerrit": "0.1.10",
"@backstage/plugin-events-backend-module-github": "0.1.10",
"@backstage/plugin-events-backend-module-gitlab": "0.1.10",
"@backstage/plugin-events-backend-test-utils": "0.1.10",
"@backstage/plugin-events-node": "0.2.9",
"@internal/plugin-todo-list": "1.0.16",
"@internal/plugin-todo-list-backend": "1.0.16",
"@internal/plugin-todo-list-common": "1.0.12",
"@backstage/plugin-explore": "0.4.6",
"@backstage/plugin-explore-backend": "0.0.9",
"@backstage/plugin-explore": "0.4.7",
"@backstage/plugin-explore-backend": "0.0.10",
"@backstage/plugin-explore-common": "0.0.1",
"@backstage/plugin-explore-react": "0.0.30",
"@backstage/plugin-firehydrant": "0.2.4",
"@backstage/plugin-fossa": "0.2.52",
"@backstage/plugin-gcalendar": "0.3.16",
"@backstage/plugin-gcp-projects": "0.3.39",
"@backstage/plugin-git-release-manager": "0.3.33",
"@backstage/plugin-github-actions": "0.6.1",
"@backstage/plugin-github-deployments": "0.1.51",
"@backstage/plugin-github-issues": "0.2.9",
"@backstage/plugin-github-pull-requests-board": "0.1.14",
"@backstage/plugin-gitops-profiles": "0.3.38",
"@backstage/plugin-gocd": "0.1.26",
"@backstage/plugin-graphiql": "0.2.52",
"@backstage/plugin-graphql-backend": "0.1.37",
"@backstage/plugin-graphql-voyager": "0.1.5",
"@backstage/plugin-home": "0.5.4",
"@backstage/plugin-home-react": "0.1.1",
"@backstage/plugin-ilert": "0.2.9",
"@backstage/plugin-jenkins": "0.8.2",
"@backstage/plugin-jenkins-backend": "0.2.2",
"@backstage/plugin-jenkins-common": "0.1.17",
"@backstage/plugin-kafka": "0.3.20",
"@backstage/plugin-kafka-backend": "0.2.40",
"@backstage/plugin-kubernetes": "0.9.3",
"@backstage/plugin-kubernetes-backend": "0.11.2",
"@backstage/plugin-firehydrant": "0.2.5",
"@backstage/plugin-fossa": "0.2.53",
"@backstage/plugin-gcalendar": "0.3.17",
"@backstage/plugin-gcp-projects": "0.3.40",
"@backstage/plugin-git-release-manager": "0.3.34",
"@backstage/plugin-github-actions": "0.6.2",
"@backstage/plugin-github-deployments": "0.1.52",
"@backstage/plugin-github-issues": "0.2.10",
"@backstage/plugin-github-pull-requests-board": "0.1.15",
"@backstage/plugin-gitops-profiles": "0.3.39",
"@backstage/plugin-gocd": "0.1.27",
"@backstage/plugin-graphiql": "0.2.53",
"@backstage/plugin-graphql-backend": "0.1.38",
"@backstage/plugin-graphql-voyager": "0.1.6",
"@backstage/plugin-home": "0.5.5",
"@backstage/plugin-home-react": "0.1.2",
"@backstage/plugin-ilert": "0.2.10",
"@backstage/plugin-jenkins": "0.8.3",
"@backstage/plugin-jenkins-backend": "0.2.3",
"@backstage/plugin-jenkins-common": "0.1.18",
"@backstage/plugin-kafka": "0.3.21",
"@backstage/plugin-kafka-backend": "0.2.41",
"@backstage/plugin-kubernetes": "0.10.0",
"@backstage/plugin-kubernetes-backend": "0.11.3",
"@backstage/plugin-kubernetes-common": "0.6.5",
"@backstage/plugin-lighthouse": "0.4.5",
"@backstage/plugin-lighthouse-backend": "0.2.3",
"@backstage/plugin-lighthouse": "0.4.6",
"@backstage/plugin-lighthouse-backend": "0.2.4",
"@backstage/plugin-lighthouse-common": "0.1.2",
"@backstage/plugin-linguist": "0.1.5",
"@backstage/plugin-linguist-backend": "0.3.1",
"@backstage/plugin-linguist-common": "0.1.0",
"@backstage/plugin-microsoft-calendar": "0.1.5",
"@backstage/plugin-newrelic": "0.3.38",
"@backstage/plugin-newrelic-dashboard": "0.2.13",
"@backstage/plugin-nomad": "0.1.1",
"@backstage/plugin-nomad-backend": "0.1.1",
"@backstage/plugin-octopus-deploy": "0.2.2",
"@backstage/plugin-org": "0.6.10",
"@backstage/plugin-org-react": "0.1.9",
"@backstage/plugin-pagerduty": "0.6.1",
"@backstage/plugin-periskop": "0.1.18",
"@backstage/plugin-periskop-backend": "0.1.18",
"@backstage/plugin-permission-backend": "0.5.22",
"@backstage/plugin-linguist": "0.1.6",
"@backstage/plugin-linguist-backend": "0.4.0",
"@backstage/plugin-linguist-common": "0.1.1",
"@backstage/plugin-microsoft-calendar": "0.1.6",
"@backstage/plugin-newrelic": "0.3.39",
"@backstage/plugin-newrelic-dashboard": "0.2.14",
"@backstage/plugin-nomad": "0.1.2",
"@backstage/plugin-nomad-backend": "0.1.2",
"@backstage/plugin-octopus-deploy": "0.2.3",
"@backstage/plugin-org": "0.6.11",
"@backstage/plugin-org-react": "0.1.10",
"@backstage/plugin-pagerduty": "0.6.2",
"@backstage/plugin-periskop": "0.1.19",
"@backstage/plugin-periskop-backend": "0.1.19",
"@backstage/plugin-permission-backend": "0.5.23",
"@backstage/plugin-permission-common": "0.7.7",
"@backstage/plugin-permission-node": "0.7.10",
"@backstage/plugin-permission-node": "0.7.11",
"@backstage/plugin-permission-react": "0.4.14",
"@backstage/plugin-playlist": "0.1.12",
"@backstage/plugin-playlist-backend": "0.3.3",
"@backstage/plugin-playlist-common": "0.1.8",
"@backstage/plugin-proxy-backend": "0.2.41",
"@backstage/plugin-puppetdb": "0.1.3",
"@backstage/plugin-rollbar": "0.4.20",
"@backstage/plugin-rollbar-backend": "0.1.44",
"@backstage/plugin-scaffolder": "1.14.1",
"@backstage/plugin-scaffolder-backend": "1.15.1",
"@backstage/plugin-scaffolder-backend-module-confluence-to-markdown": "0.2.0",
"@backstage/plugin-scaffolder-backend-module-cookiecutter": "0.2.23",
"@backstage/plugin-scaffolder-backend-module-gitlab": "0.2.2",
"@backstage/plugin-scaffolder-backend-module-rails": "0.4.16",
"@backstage/plugin-scaffolder-backend-module-sentry": "0.1.7",
"@backstage/plugin-scaffolder-backend-module-yeoman": "0.2.20",
"@backstage/plugin-scaffolder-common": "1.3.2",
"@backstage/plugin-scaffolder-node": "0.1.5",
"@backstage/plugin-scaffolder-react": "1.5.1",
"@backstage/plugin-search": "1.3.3",
"@backstage/plugin-search-backend": "1.3.3",
"@backstage/plugin-search-backend-module-catalog": "0.1.3",
"@backstage/plugin-search-backend-module-elasticsearch": "1.3.2",
"@backstage/plugin-search-backend-module-explore": "0.1.3",
"@backstage/plugin-search-backend-module-pg": "0.5.8",
"@backstage/plugin-search-backend-module-techdocs": "0.1.3",
"@backstage/plugin-search-backend-node": "1.2.3",
"@backstage/plugin-playlist": "0.1.13",
"@backstage/plugin-playlist-backend": "0.3.4",
"@backstage/plugin-playlist-common": "0.1.9",
"@backstage/plugin-proxy-backend": "0.3.0",
"@backstage/plugin-puppetdb": "0.1.4",
"@backstage/plugin-rollbar": "0.4.21",
"@backstage/plugin-rollbar-backend": "0.1.45",
"@backstage/plugin-scaffolder": "1.14.2",
"@backstage/plugin-scaffolder-backend": "1.16.0",
"@backstage/plugin-scaffolder-backend-module-confluence-to-markdown": "0.2.1",
"@backstage/plugin-scaffolder-backend-module-cookiecutter": "0.2.24",
"@backstage/plugin-scaffolder-backend-module-gitlab": "0.2.3",
"@backstage/plugin-scaffolder-backend-module-rails": "0.4.17",
"@backstage/plugin-scaffolder-backend-module-sentry": "0.1.8",
"@backstage/plugin-scaffolder-backend-module-yeoman": "0.2.21",
"@backstage/plugin-scaffolder-common": "1.4.0",
"@backstage/plugin-scaffolder-node": "0.2.0",
"@backstage/plugin-scaffolder-react": "1.5.2",
"@backstage/plugin-search": "1.3.4",
"@backstage/plugin-search-backend": "1.4.0",
"@backstage/plugin-search-backend-module-catalog": "0.1.4",
"@backstage/plugin-search-backend-module-elasticsearch": "1.3.3",
"@backstage/plugin-search-backend-module-explore": "0.1.4",
"@backstage/plugin-search-backend-module-pg": "0.5.9",
"@backstage/plugin-search-backend-module-techdocs": "0.1.4",
"@backstage/plugin-search-backend-node": "1.2.4",
"@backstage/plugin-search-common": "1.2.5",
"@backstage/plugin-search-react": "1.6.3",
"@backstage/plugin-sentry": "0.5.5",
"@backstage/plugin-shortcuts": "0.3.12",
"@backstage/plugin-sonarqube": "0.7.1",
"@backstage/plugin-sonarqube-backend": "0.2.1",
"@backstage/plugin-search-react": "1.6.4",
"@backstage/plugin-sentry": "0.5.6",
"@backstage/plugin-shortcuts": "0.3.13",
"@backstage/plugin-sonarqube": "0.7.2",
"@backstage/plugin-sonarqube-backend": "0.2.2",
"@backstage/plugin-sonarqube-react": "0.1.7",
"@backstage/plugin-splunk-on-call": "0.4.9",
"@backstage/plugin-stack-overflow": "0.1.18",
"@backstage/plugin-stack-overflow-backend": "0.2.3",
"@backstage/plugin-stackstorm": "0.1.4",
"@backstage/plugin-tech-insights": "0.3.12",
"@backstage/plugin-tech-insights-backend": "0.5.13",
"@backstage/plugin-tech-insights-backend-module-jsonfc": "0.1.31",
"@backstage/plugin-splunk-on-call": "0.4.10",
"@backstage/plugin-stack-overflow": "0.1.19",
"@backstage/plugin-stack-overflow-backend": "0.2.4",
"@backstage/plugin-stackstorm": "0.1.5",
"@backstage/plugin-tech-insights": "0.3.13",
"@backstage/plugin-tech-insights-backend": "0.5.14",
"@backstage/plugin-tech-insights-backend-module-jsonfc": "0.1.32",
"@backstage/plugin-tech-insights-common": "0.2.11",
"@backstage/plugin-tech-insights-node": "0.4.5",
"@backstage/plugin-tech-radar": "0.6.6",
"@backstage/plugin-techdocs": "1.6.5",
"@backstage/plugin-techdocs-addons-test-utils": "1.0.16",
"@backstage/plugin-techdocs-backend": "1.6.4",
"@backstage/plugin-techdocs-module-addons-contrib": "1.0.15",
"@backstage/plugin-techdocs-node": "1.7.3",
"@backstage/plugin-techdocs-react": "1.1.8",
"@backstage/plugin-todo": "0.2.22",
"@backstage/plugin-todo-backend": "0.1.44",
"@backstage/plugin-user-settings": "0.7.5",
"@backstage/plugin-user-settings-backend": "0.1.11",
"@backstage/plugin-vault": "0.1.14",
"@backstage/plugin-vault-backend": "0.3.3",
"@backstage/plugin-xcmetrics": "0.2.40",
"@backstage/plugin-analytics-module-newrelic-browser": "0.0.0",
"@backstage/plugin-catalog-backend-module-gcp": "0.0.0"
"@backstage/plugin-tech-insights-node": "0.4.6",
"@backstage/plugin-tech-radar": "0.6.7",
"@backstage/plugin-techdocs": "1.6.6",
"@backstage/plugin-techdocs-addons-test-utils": "1.0.17",
"@backstage/plugin-techdocs-backend": "1.6.5",
"@backstage/plugin-techdocs-module-addons-contrib": "1.0.16",
"@backstage/plugin-techdocs-node": "1.7.4",
"@backstage/plugin-techdocs-react": "1.1.9",
"@backstage/plugin-todo": "0.2.23",
"@backstage/plugin-todo-backend": "0.2.0",
"@backstage/plugin-user-settings": "0.7.6",
"@backstage/plugin-user-settings-backend": "0.1.12",
"@backstage/plugin-vault": "0.1.15",
"@backstage/plugin-vault-backend": "0.3.4",
"@backstage/plugin-xcmetrics": "0.2.41"
},
"changesets": [
"analytics-millenial-whoop",
"angry-beers-relate",
"chatty-foxes-buy",
"chatty-seahorses-juggle",
"chilly-keys-count",
"cold-numbers-sleep",
"create-app-1690284535",
"create-app-1690892926",
"dirty-chefs-listen",
"gorgeous-months-doubt",
"hungry-shrimps-care",
"khaki-flies-draw",
"kind-cougars-allow",
"large-experts-poke",
"large-vans-cross",
"loud-garlics-press",
"mean-squids-relax",
"mighty-lions-search-2",
"mighty-lions-search-3",
"mighty-lions-search",
"neat-coins-raise",
"neat-lamps-press",
"odd-avocados-buy",
"pink-squids-nail",
"popular-fans-camp",
"quiet-starfishes-kick",
"rare-pens-exist",
"rich-zoos-occur",
"rude-feet-sparkle",
"search-donuts-wash",
"selfish-coats-shout",
"serious-bats-repair",
"slimy-kids-jam",
"smart-pandas-applaud",
"stale-wombats-talk",
"strong-bobcats-unite",
"stupid-berries-run",
"ten-otters-appear",
"tender-fireants-cheer",
"thin-yaks-hang",
"tidy-cobras-scream",
"tough-dolphins-care",
"tough-lies-float",
"wild-timers-sparkle"
]
"changesets": []
}
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-home': patch
---
Now, user can provide a language (optional) as input to receive a greeting in that specific language. Example: `<WelcomeTitle language={['English', 'Spanish']} />`
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/cli': patch
---
Enable to print the config schema not merged with the `--no-merge` flag
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-cost-insights': patch
---
Updated dependency `@types/pluralize` to `^0.0.30`.
-6
View File
@@ -1,6 +0,0 @@
---
'@backstage/backend-plugin-api': minor
'@backstage/backend-defaults': minor
---
**BREAKING**: Removing shared environments concept from the new experimental backend system.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-proxy-backend': minor
---
Defining proxy endpoints directly under the root `proxy` configuration key is deprecated. Endpoints should now be declared under `proxy.endpoints` instead. The `skipInvalidProxies` and `reviveConsumedRequestBodies` can now also be configured through static configuration.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-analytics-module-newrelic-browser': patch
---
Introduced the New Relic Browser analytics module. Check out the plugins [README.md](https://github.com/backstage/backstage/tree/master/plugins/analytics-module-newrelic-browser) for more details!
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-search-backend-node': patch
---
Fix Lunr search engine highlight by ignoring invalid metadata positions.
-55
View File
@@ -1,55 +0,0 @@
---
'@backstage/config-loader': minor
---
Adds a new `deepVisibility` schema keyword that sets child visibility recursively to the defined value, respecting preexisting values or child `deepVisibility`.
Example usage:
```ts
export interface Config {
/**
* Enforces a default of `secret` instead of `backend` for this object.
* @deepVisibility secret
*/
mySecretProperty: {
type: 'object';
properties: {
secretValue: {
type: 'string';
};
verySecretProperty: {
type: 'string';
};
};
};
}
```
Example of a schema that would not be allowed:
```ts
export interface Config {
/**
* Set the top level property to secret, enforcing a default of `secret` instead of `backend` for this object.
* @deepVisibility secret
*/
mySecretProperty: {
type: 'object';
properties: {
frontendUrl: {
/**
* We can NOT override the visibility to reveal a property to the front end.
* @visibility frontend
*/
type: 'string';
};
verySecretProperty: {
type: 'string';
};
};
};
}
```
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/repo-tools': patch
---
Update `schema openapi generate` command to now create a default router that can be imported and used directly.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-backend-module-gitlab': patch
---
Filter Gitlab archived projects through APIs
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-tasks': patch
---
Make `readTaskScheduleDefinitionFromConfig` properly handle bad inputs
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-app-backend': patch
---
Migrated the alpha `appBackend` export to use static configuration and extension points rather than accepting options.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-backend': minor
---
Added OpenTelemetry spans for catalog processing
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-opencost': minor
---
New OpenCost plugin provides an port of the latest OpenCost UI to Backstage with updated dependencies. The plugin's README covers installation and configuration
-7
View File
@@ -1,7 +0,0 @@
---
'@backstage/plugin-todo-backend': minor
'@backstage/plugin-catalog-backend': minor
'@backstage/plugin-search-backend': minor
---
Now performs request validation based on OpenAPI schema through `@backstage/backend-openapi-utils`. Error responses for invalid input, like `"a"` instead of a number, may have changed.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-react': patch
---
Allow specifying screen size when catalog filters are hidden in drawer
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-backend-module-aws': patch
---
Added option to configure AWS `accountId` in `AwsS3EntityProvider`
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-linguist-backend': minor
---
Adds a processor to the linguist backend which can automatically add language tags to entities
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-test-utils': patch
---
Add needed constants and constructs to support PostgreSQL version 14 as test database
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-home': patch
---
Make sure the widget name is never empty in the `AddWidgetDialog`. If the title was set to "", the entry would contain an empty string. Use the name as a fallback
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-auth-backend-module-google-provider': minor
---
New module for `@backstage/plugin-auth-backend` that adds a Google auth provider.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-node': patch
---
Export `TemplateExample` from the `createTemplateAction` type.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-react': patch
---
Fixed bug in Workflow component by passing a prop `templateName` down to Stepper component.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-devtools': patch
---
Fix readme typo
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-search-backend': patch
---
Add missing `configSchema` to package.json
-7
View File
@@ -1,7 +0,0 @@
---
'@backstage/plugin-scaffolder-backend-module-confluence-to-markdown': patch
'@backstage/plugin-scaffolder-backend-module-cookiecutter': patch
'@backstage/plugin-scaffolder-backend-module-rails': patch
---
Import helpers from the node package instead of the backend package
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-backend-module-gcp': minor
---
Added GCP catalog plugin with GKE provider
-6
View File
@@ -1,6 +0,0 @@
---
'@backstage/plugin-scaffolder-backend': patch
'@backstage/plugin-scaffolder-node': patch
---
Deprecated `executeShellCommand`, `RunCommandOptions`, and `fetchContents` from `@backstage/plugin-scaffolder-backend`, since they are useful for Scaffolder modules (who should not be importing from the plugin package itself). You should now import these from `@backstage/plugin-scaffolder-backend-node` instead. `RunCommandOptions` was renamed in the Node package as `ExecuteShellCommandOptions`, for consistency.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-auth-backend': patch
---
Add frontend visibility to provider objects in `auth` config.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-microsoft-calendar': patch
---
README update - example of apiRef definition and fixed component name
+9
View File
@@ -0,0 +1,9 @@
# CLOMonitor metadata file
# This file must be located at the root of the repository
# https://clomonitor.io/projects/cncf/backstage
# Checks exemptions
exemptions:
- check: trademark_disclaimer # Check identifier (see https://github.com/cncf/clomonitor/blob/main/docs/checks.md#exemptions)
# Justification of this exemption (mandatory, it will be displayed on the UI)
reason: 'The Linux Foundation trademark disclaimer and link are contained within the project web site at https://backstage.io in the copyright footer. However, because the site is delivered dynamically via React through JavaScript, the check cannot currently identify it.'
+2
View File
@@ -24,6 +24,8 @@ documentation:
- docs/**/*
microsite:
- microsite/**/*
storybook:
- storybook/**/*
auth:
- plugins/auth-backend/**/*
- packages/core-app-api/src/apis/implementations/auth/**/*
@@ -56,72 +56,73 @@ catalog:
- allow: [Template]
proxy:
'/circleci/api':
target: https://circleci.com/api/v1.1
headers:
Circle-Token: ${CIRCLECI_AUTH_TOKEN}
endpoints:
'/circleci/api':
target: https://circleci.com/api/v1.1
headers:
Circle-Token: ${CIRCLECI_AUTH_TOKEN}
'/jenkins/api':
target: http://localhost:8080
headers:
Authorization: ${JENKINS_BASIC_AUTH_HEADER}
'/jenkins/api':
target: http://localhost:8080
headers:
Authorization: ${JENKINS_BASIC_AUTH_HEADER}
'/travisci/api':
target: https://api.travis-ci.com
changeOrigin: true
headers:
Authorization: ${TRAVISCI_AUTH_TOKEN}
travis-api-version: '3'
'/travisci/api':
target: https://api.travis-ci.com
changeOrigin: true
headers:
Authorization: ${TRAVISCI_AUTH_TOKEN}
travis-api-version: '3'
'/newrelic/apm/api':
target: https://api.newrelic.com/v2
headers:
X-Api-Key: ${NEW_RELIC_REST_API_KEY}
'/newrelic/apm/api':
target: https://api.newrelic.com/v2
headers:
X-Api-Key: ${NEW_RELIC_REST_API_KEY}
'/newrelic/api':
target: https://api.newrelic.com
headers:
X-Api-Key: ${NEW_RELIC_USER_KEY}
'/newrelic/api':
target: https://api.newrelic.com
headers:
X-Api-Key: ${NEW_RELIC_USER_KEY}
'/pagerduty':
target: https://api.pagerduty.com
headers:
Authorization: Token token=${PAGERDUTY_TOKEN}
'/pagerduty':
target: https://api.pagerduty.com
headers:
Authorization: Token token=${PAGERDUTY_TOKEN}
'/buildkite/api':
target: https://api.buildkite.com/v2/
headers:
Authorization: ${BUILDKITE_TOKEN}
'/buildkite/api':
target: https://api.buildkite.com/v2/
headers:
Authorization: ${BUILDKITE_TOKEN}
'/sentry/api':
target: https://sentry.io/api/
allowedMethods: ['GET']
headers:
Authorization: ${SENTRY_TOKEN}
'/sentry/api':
target: https://sentry.io/api/
allowedMethods: ['GET']
headers:
Authorization: ${SENTRY_TOKEN}
'/ilert':
target: https://api.ilert.com
allowedMethods: ['GET', 'POST', 'PUT']
allowedHeaders: ['Authorization']
headers:
Authorization: ${ILERT_AUTH_HEADER}
'/ilert':
target: https://api.ilert.com
allowedMethods: ['GET', 'POST', 'PUT']
allowedHeaders: ['Authorization']
headers:
Authorization: ${ILERT_AUTH_HEADER}
'/airflow':
target: https://your.airflow.instance.com/api/v1
headers:
Authorization: ${AIRFLOW_BASIC_AUTH_HEADER}
'/airflow':
target: https://your.airflow.instance.com/api/v1
headers:
Authorization: ${AIRFLOW_BASIC_AUTH_HEADER}
'/gocd':
target: https://your.gocd.instance.com/go/api
allowedMethods: ['GET']
allowedHeaders: ['Authorization']
headers:
Authorization: Basic ${GOCD_AUTH_CREDENTIALS}
'/gocd':
target: https://your.gocd.instance.com/go/api
allowedMethods: ['GET']
allowedHeaders: ['Authorization']
headers:
Authorization: Basic ${GOCD_AUTH_CREDENTIALS}
'/dynatrace':
target: https://your.dynatrace.instance.com/api/v2
headers:
Authorization: 'Api-Token ${DYNATRACE_ACCESS_TOKEN}'
'/dynatrace':
target: https://your.dynatrace.instance.com/api/v2
headers:
Authorization: 'Api-Token ${DYNATRACE_ACCESS_TOKEN}'
techdocs:
builder: 'local' # Alternatives - 'external'
+4
View File
@@ -127,6 +127,7 @@ Flightcontrol
flightcontrol
Francesco
Frontside
Gaurav
gerrit
Gerrit
gitbeaker
@@ -166,6 +167,7 @@ inlined
inlinehilite
integrator's
interop
iterable
JaCoCo
JavaScript
jenkins
@@ -259,6 +261,7 @@ padding
paddings
pagerduty
pageview
Pandey
parallelization
parseable
Patrik
@@ -407,6 +410,7 @@ unbreak
Unconference
unicode
unmanaged
unmount
unregister
unregistering
unregistration
+66
View File
@@ -0,0 +1,66 @@
# This workflow uses actions that are not certified by GitHub. They are provided
# by a third-party and are governed by separate terms of service, privacy
# policy, and support documentation.
name: Scorecard supply-chain security
on:
# For Branch-Protection check. Only the default branch is supported. See
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection
# branch_protection_rule:
# To guarantee Maintained check is occasionally updated. See
# https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained
schedule:
- cron: '41 8 * * 6'
push:
branches: ['master']
# Declare default permissions as read only.
permissions: read-all
jobs:
analysis:
name: Scorecard analysis
runs-on: ubuntu-latest
permissions:
# Needed to upload the results to code-scanning dashboard.
security-events: write
# Needed to publish results and get a badge (see publish_results below).
id-token: write
steps:
- name: 'Checkout code'
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
with:
persist-credentials: false
- name: 'Run analysis'
uses: ossf/scorecard-action@08b4669551908b1024bb425080c797723083c031 # v2.2.0
with:
results_file: results.sarif
results_format: sarif
# (Optional) "write" PAT token. Uncomment the `repo_token` line below if:
# - you want to enable the Branch-Protection check on a *public* repository, or
# - you are installing Scorecard on a *private* repository
# To create the PAT, follow the steps in https://github.com/ossf/scorecard-action#authentication-with-pat.
# repo_token: ${{ secrets.SCORECARD_TOKEN }}
# Public repositories:
# - Publish results to OpenSSF REST API for easy access by consumers
# - Allows the repository to include the Scorecard badge.
# - See https://github.com/ossf/scorecard-action#publishing-results.
publish_results: true
# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
# format to the repository Actions tab.
- name: 'Upload artifact'
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2
with:
name: SARIF file
path: results.sarif
retention-days: 5
# Upload the results to GitHub's code scanning dashboard.
- name: 'Upload to code-scanning'
uses: github/codeql-action/upload-sarif@17573ee1cc1b9d061760f3a006fc4aac4f944fd5 # v2.2.4
with:
sarif_file: results.sarif
@@ -6,7 +6,7 @@ on:
pull_request:
paths-ignore:
- 'yarn.lock'
- '.github/workflows/verify_kubernetes.yml'
- '.github/workflows/verify_e2e-kubernetes.yml'
- 'packages/backend-common/src/**'
jobs:
+2 -2
View File
@@ -4,7 +4,7 @@ on:
pull_request:
paths:
- 'yarn.lock'
- '.github/workflows/verify_kubernetes.yml'
- '.github/workflows/verify_e2e-kubernetes.yml'
- 'packages/backend-common/src/**'
jobs:
@@ -35,7 +35,7 @@ jobs:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
- name: bootstrap kind
uses: helm/kind-action@v1.7.0
uses: helm/kind-action@v1.8.0
- name: kubernetes test
working-directory: packages/backend-common
+1 -1
View File
@@ -43,7 +43,7 @@ _You can do this by using the [Adopter form](https://info.backstage.spotify.com/
| [MavTek](https://www.mavtek.com/) | [@fgascon](https://github.com/fgascon) | Developer portal focused on standardizing practices, centralizing documentation and streamlining developer practices. |
| [QuintoAndar](https://www.quintoandar.com.br/) | [@quintoandar](https://github.com/quintoandar) | Developer portal, services catalog and centralization of service metrics. |
| [empathy.co](https://empathy.co/) | [@guillermotti](https://github.com/guillermotti) | Developer portal for tech docs, service catalog, plugin discovery and much more. |
| [creditas.com](https://creditas.com/) | [@aureliosaraiva](https://github.com/aureliosaraiva) [@Creditas](https://github.com/creditas) | Centralization of all services, standards, documentation, etc. We started the deployment process. |
| [creditas.com](https://creditas.com/) | [@rebender](https://github.com/rebender) [@Creditas](https://github.com/creditas) | Centralization of all services, standards, documentation, etc. We started the deployment process. |
| [Prisjakt](https://www.prisjakt.nu) / [PriceSpy](https://pricespy.co.uk) | [@kennylindahl](https://github.com/kennylindahl) | Internal developer portal - Documentation, scaffolding, software catalog, TechRadar, Gitlab org data integration |
| [Powerspike](https://powerspike.tv/) | [@trelore](https://github.com/trelore) | Developer portal for documentation of core libraries and repositories. |
| [2U](https://2u.com) | [@danielleEriksen](https://github.com/danielleEriksen), [@sbhatia](https://github.com/sbhatia) | Development team home-base, promoting service discoverability, resource dependencies, and tech radar |
-2
View File
@@ -13,8 +13,6 @@
[![OpenSSF Best Practices](https://bestpractices.coreinfrastructure.org/projects/7678/badge)](https://bestpractices.coreinfrastructure.org/projects/7678)
[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/backstage/backstage/badge)](https://securityscorecards.dev/viewer/?uri=github.com/backstage/backstage)
> 🏖️ The week beginning the 26th of June, some of the maintainers will be taking a well earned Summer Holiday break. We will be slower to respond to issues and PRs during this time. Releases will continue to be shipped weekly. Normal service will resume on the 24th of July. 🏝️
## What is Backstage?
[Backstage](https://backstage.io/) is an open platform for building developer portals. Powered by a centralized software catalog, Backstage restores order to your microservices and infrastructure and enables your product teams to ship high-quality code quickly without compromising autonomy.
+2
View File
@@ -73,6 +73,8 @@ proxy:
target: https://api.newrelic.com/v2
headers:
X-Api-Key: ${NEW_RELIC_REST_API_KEY}
allowedHeaders:
- link
'/newrelic/api':
target: https://api.newrelic.com
+18 -18
View File
@@ -15,35 +15,35 @@ There are multiple ways to contribute to making Backstage more accessible, you'l
If your plugin lives in the [Backstage main repository](https://github.com/backstage/backstage/) you can modify the [urls in the Lighthouse config](https://github.com/backstage/backstage/blob/39ba2284d73885b7ca8290cb38e2b1e4d983c8d6/lighthouserc.js#L19-L34) to run the Lighthouse checks on urls where your plugin exists as well. E.g.
```diff
ci: {
collect: {
url: [
ci: {
collect: {
url: [
/** Software Catalog */
'http://localhost:3000/catalog',
'http://localhost:3000/catalog-import',
'http://localhost:3000/catalog/default/component/backstage',
...
+ /** Your plugin paths */
+ 'http://localhost:3000/your-plugin-path,
/** Software Catalog */
'http://localhost:3000/catalog',
'http://localhost:3000/catalog-import',
'http://localhost:3000/catalog/default/component/backstage',
],
settings: {
...
],
settings: {
...
},
...
},
assert: {
},
...
},
},
},
assert: {
...
},
},
```
To make sure the [Accessibility Github workflow](https://github.com/backstage/backstage/blob/master/.github/workflows/verify_accessibility.yml) is running when changes are made to your plugin folders, modify the [list of paths](https://github.com/backstage/backstage/blob/10759b6ad2561bd86183ad940256f9a309c7a6b0/.github/workflows/verify_accessibility.yml#L7-L16).
To make sure the [Accessibility GitHub workflow](https://github.com/backstage/backstage/blob/master/.github/workflows/verify_accessibility.yml) is running when changes are made to your plugin folders, modify the [list of paths](https://github.com/backstage/backstage/blob/10759b6ad2561bd86183ad940256f9a309c7a6b0/.github/workflows/verify_accessibility.yml#L7-L16).
### Run the Lighthouse CLI locally when developing new features
If you want to use the Lighthouse CLI and run the checks based on the config you can use the following command:
```
```shell
yarn dlx @lhci/cli@0.11.x autorun
```
@@ -978,9 +978,9 @@ way.
The entries of this array are
[entity references](https://backstage.io/docs/features/software-catalog/references).
| [`kind`](#apiversion-and-kind-required) | Default [`namespace`](#namespace-optional) | Generated [relation](well-known-relations.md) type |
| --------------------------------------- | ------------------------------------------ | ------------------------------------------------------------------------------------- |
| [`Group`](#kind-group) (default) | Same as this entity, typically `default` | [`hasMember`, and reverse `memberOf`](well-known-relations.md#memberof-and-hasmember) |
| [`kind`](#apiversion-and-kind-required) | Default [`namespace`](#namespace-optional) | Generated [relation](well-known-relations.md) type |
| --------------------------------------- | ------------------------------------------ | --------------------------------------------------------------------------------- |
| [`Group`](#kind-group) (default) | Same as this entity, typically `default` | [`parentOf`, and reverse `childOf`](well-known-relations.md#parentof-and-childof) |
### `spec.members` [optional]
@@ -210,5 +210,6 @@ scaffolder backend:
| JSON Merge Actions | [plugin-scaffolder-json-merge-actions](https://www.npmjs.com/package/@mdude2314/backstage-plugin-scaffolder-json-merge-actions) | [Drew Hill](https://github.com/arhill05) |
| NPM Actions | [plugin-scaffolder-npm-actions](https://www.npmjs.com/package/@mdude2314/backstage-plugin-scaffolder-npm-actions) | [Drew Hill](https://github.com/arhill05) |
| Slack Actions | [plugin-scaffolder-backend-module-slack](https://www.npmjs.com/package/@mdude2314/backstage-plugin-scaffolder-backend-module-slack) | [Drew Hill](https://github.com/arhill05) |
| Microsoft Teams Actions | [plugin-scaffolder-backend-module-ms-teams](https://www.npmjs.com/package/@grvpandey11/backstage-plugin-scaffolder-backend-module-ms-teams) | [Gaurav Pandey](https://github.com/grvpandey11) |
Have fun! 🚀
@@ -89,10 +89,8 @@ export const validateKebabCaseValidation = (
then please use `scaffolderPlugin.provide` from there instead and export it part of your `plugin.ts` rather than re-using the `scaffolder.plugin`.
*/
import {
scaffolderPlugin,
createScaffolderFieldExtension,
} from '@backstage/plugin-scaffolder';
import { scaffolderPlugin } from '@backstage/plugin-scaffolder';
import { createScaffolderFieldExtension } from '@backstage/plugin-scaffolder-react';
import {
ValidateKebabCase,
validateKebabCaseValidation,
@@ -133,7 +131,7 @@ Should look something like this instead:
```tsx
import { ValidateKebabCaseFieldExtension } from './scaffolder/ValidateKebabCase';
import { ScaffolderFieldExtensions } from '@backstage/plugin-scaffolder';
import { ScaffolderFieldExtensions } from '@backstage/plugin-scaffolder-react';
const routes = (
<FlatRoutes>
@@ -4,7 +4,7 @@ title: Writing custom step layouts
description: How to override the default step form layout
---
Every form in each step rendered in the frontend uses the default form layout from [react-json-schema-form](https://react-jsonschema-form.readthedocs.io/). It is possible to override this behaviour by supplying a `ui:ObjectFieldTemplate` property for a particular step:
Every form in each step rendered in the frontend uses the default form layout from [react-jsonschema-form](https://rjsf-team.github.io/react-jsonschema-form/docs/). It is possible to override this behaviour by supplying a `ui:ObjectFieldTemplate` property for a particular step:
```yaml
parameters:
@@ -12,7 +12,7 @@ parameters:
ui:ObjectFieldTemplate: TwoColumn
```
This is the same [field](https://react-jsonschema-form.readthedocs.io/en/latest/advanced-customization/custom-templates/#objectfieldtemplate) used by [react-json-schema-form](https://react-jsonschema-form.readthedocs.io/) but we need to add a couple of steps to ensure that the string value of `TwoColumn` above is resolved to a react component.
This is the same [field](https://rjsf-team.github.io/react-jsonschema-form/docs/advanced-customization/custom-templates#objectfieldtemplate) used by [react-jsonschema-form](https://rjsf-team.github.io/react-jsonschema-form/docs/) but we need to add a couple of steps to ensure that the string value of `TwoColumn` above is resolved to a react component.
## Registering a React component as a custom step layout
@@ -499,6 +499,7 @@ template. These follow the same standard format:
- id: fetch-base # A unique id for the step
name: Fetch Base # A title displayed in the frontend
if: ${{ parameters.name }} # Optional condition, skip the step if not truthy
each: ${{ parameters.iterable }} # Optional iterable, run the same step multiple times
action: fetch:template # An action to call
input: # Input that is passed as arguments to the action handler
url: ./template
@@ -510,6 +511,27 @@ By default we ship some [built in actions](./builtin-actions.md) that you can
take a look at, or you can
[create your own custom actions](./writing-custom-actions.md).
When `each` is provided, the current iteration value is available in the `${{ each }}` input.
Examples:
```yaml
each: ['apples', 'oranges']
input:
values:
fruit: ${{ each.value }}
```
```yaml
each: [{ name: 'apple', count: 3 }, { name: 'orange', count: 1 }]
input:
values:
fruit: ${{ each.value.name }}
count: ${{ each.value.count }}
```
When `each` is used, the outputs of a repeated step are returned as an array of outputs from each iteration.
## Outputs
Each individual step can output some variables that can be used in the
+2 -5
View File
@@ -188,15 +188,12 @@ import {
} from '@backstage/plugin-techdocs';
import { Entity } from '@backstage/catalog-model';
import {
EntityListDocsGrid,
DocsGroupConfig,
} from '@backstage/plugin-techdocs';
import { EntityListDocsGrid } from '@backstage/plugin-techdocs';
export type CustomTechDocsHomeProps = {
groups?: Array<{
title: React.ReactNode;
filterPredicate: (entity: Entity) => boolean;
filterPredicate: ((entity: Entity) => boolean) | string;
}>;
};
+12 -12
View File
@@ -2,25 +2,25 @@
id: glossary
title: Backstage Glossary
# prettier-ignore
description: List of all the terms, abbreviations, and phrases used in Backstage, together with their explanations.
description: List of terms, abbreviations, and phrases used in Backstage, together with their explanations.
---
The Backstage Glossary lists all the terms, abbreviations, and phrases used in
The Backstage Glossary lists terms, abbreviations, and phrases used in
Backstage, together with their explanations. We encourage you to use the
terminology below for clarity and consistency when discussing Backstage.
### Authentication Glossary
This [page](../auth/glossary.md) directs to the terms and phrases related to
authentication and identity section of Backstage.
See also [Authentication Glossary](../auth/glossary.md), a separate glossary of terms and phrases
specifically related to the authentication and identity section of Backstage.
### Backstage User Profiles
There are three main user profiles for Backstage: the integrator, the
contributor, and the software engineer.
contributor, and the end user (typically a software engineer).
| Term | Explanation |
| ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Integrator | The **integrator** hosts the Backstage app and configures which plugins are available to use in the app. |
| Contributor | The **contributor** adds functionality to the app by writing plugins. |
| Software Engineer | The **software engineer** uses the app's functionality and interacts with its plugins. In practice, this profile covers the various roles that help deliver software, from the Software Engineer themselves, to Designers, Data Scientists, Product Owners, Engineering Managers, etc. |
| Term | Explanation |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Integrator | The **integrator** hosts the Backstage app and configures which plugins are available to use in the app. |
| Contributor | The **contributor** adds functionality to the app by writing plugins. |
| End user | The **end user** uses the app's functionality and interacts with its plugins. This profile covers the various roles that help deliver software. The typical end user is a **software engineer**, but users might also consider themselves _designers_, _data scientists_, _product owners_, _engineering managers_, _technical writers_, and so on. |
| Software engineer | The **software engineer** is an **end user** who uses the app's functionality and interacts with its plugins in the course of writing and documenting code. This user is more likely to embed documentation in the code files they produce, and create rough drafts of conceptual pages in collaboration with a **technical writer** or _technical editor_. |
| Technical writer | The **technical writer** is an **end user** who uses the app's functionality and interacts with its plugins in the course of writing and editing documentation. This user is more likely to produce and customize templates and produce conceptual pages to supplement documentation embedded in code files. |
+1 -1
View File
@@ -84,4 +84,4 @@ Below you can find a list of links and references to help you learn about and st
- [Changelog](https://github.com/backstage/backstage/tree/master/docs/releases/v1.16.0-changelog.md)
- Backstage [Demos](https://backstage.io/demos), [Blog](https://backstage.io/blog), [Roadmap](https://backstage.io/docs/overview/roadmap) and [Plugins](https://backstage.io/plugins)
Sign up for our [newsletter](https://mailchi.mp/spotify/backstage-community) if you want to be informed about what is happening in the world of Backstage.
Sign up for our [newsletter](https://info.backstage.spotify.com/newsletter_subscribe) if you want to be informed about what is happening in the world of Backstage.
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+72
View File
@@ -0,0 +1,72 @@
---
id: v1.17.0
title: v1.17.0
description: Backstage Release v1.17.0
---
These are the release notes for the v1.17.0 release of [Backstage](https://backstage.io/).
A huge thanks to the whole team of maintainers and contributors as well as the amazing Backstage Community for the hard work in getting this release developed and done.
## Highlights
### Changes to the New Backend System
For this release we had another look at the new backend system, in particular how well it fits together with the concept of plugin installation without code modification, and we identified a number of breaking changes that we wanted to make.
We have removed the ability to define options for plugins and modules, and force them to be optional for services. Options have been moved either to static configuration or extension points, and modules now also have the ability to register extension points.
Service factories are now considered `BackendFeature`s and are installed via `backend.add(...)` rather than via the `services` option, which has been removed.
The configuration service has also been renamed to `rootConfig` in order to match other root-scoped services and make space for a potential plugin-scoped configuration service in the future.
The shared environments concept has been removed. We are still interested in having some way to define reusable presets in the new system, but shared environments were too limited.
We expect these to be the last broad breaking changes to the new backend system, and are likely to start encouraging use of it in the next release.
### Catalog Telemetry with Processing Tracing
The Catalog has been instrumented with some simple OpenTelemetry Spans so you can now dig into the processing loop and see it in action using tracing.
Contributed by [@mikebryant](https://github.com/mikebryant) in [#17534](https://github.com/backstage/backstage/pull/17534)
### New `each` property for Scaffolder Actions
You can now define an `each` iterable in the `steps` for a template, which will run a given action for each entry in the iterable.
Contributed by [@alexef](https://github.com/alexef) in [#18157](https://github.com/backstage/backstage/pull/18157)
### Updated proxy configuration
The shape of the proxy plugin configuration has been changed in order to make space for additional keys. Rather than defining the proxy endpoints directly under `proxy`, they should now be defined at `proxy.endpoints` instead.
### OpenAPI Support for Backend Plugins
You can now use OpenAPI specs to generate typed routers for your backend plugins with request validation using `createOpenApiRouter()`. Theres been some movement to support this for some of the plugins in the monorepo like `todo`, `search` and `catalog`.
Contributed by [@sennyeya](https://github.com/sennyeya) in [#17875](https://github.com/backstage/backstage/pull/17875)
### New plugin: `@backstage/plugin-catalog-backend-module-gcp`
Allows ingestion of GKE Clusters as Resources into the Catalog. Contributed by [@mclarke47](https://github.com/mclarke47) in [#18759](https://github.com/backstage/backstage/pull/18759)
## Security Fixes
This release does not contain any security fixes.
## Upgrade path
We recommend that you keep your Backstage project up to date with this latest release. For more guidance on how to upgrade, check out the documentation for [keeping Backstage updated](https://backstage.io/docs/getting-started/keeping-backstage-updated).
## Links and References
Below you can find a list of links and references to help you learn about and start using this new release.
- [Backstage official website](https://backstage.io/), [documentation](https://backstage.io/docs/), and [getting started guide](https://backstage.io/docs/getting-started/)
- [GitHub repository](https://github.com/backstage/backstage)
- Backstage's [versioning and support policy](https://backstage.io/docs/overview/versioning-policy)
- [Community Discord](https://discord.gg/backstage-687207715902193673) for discussions and support
- [Changelog](https://github.com/backstage/backstage/tree/master/docs/releases/v1.17.0-changelog.md)
- Backstage [Demos](https://backstage.io/demos), [Blog](https://backstage.io/blog), [Roadmap](https://backstage.io/docs/overview/roadmap) and [Plugins](https://backstage.io/plugins)
Sign up for our [newsletter](https://info.backstage.spotify.com/newsletter_subscribe) if you want to be informed about what is happening in the world of Backstage.
+11
View File
@@ -32,6 +32,17 @@ module.exports = {
'http://localhost:3000/create/templates/default/react-ssr-template',
/** Search */
'http://localhost:3000/search',
/** Miscellaneous */
'http://localhost:3000/settings',
/** plugin-devtools */
'http://localhost:3000/devtools',
'http://localhost:3000/devtools/config',
/** plugin-explore */
'http://localhost:3000/explore',
'http://localhost:3000/explore/groups',
'http://localhost:3000/explore/tools',
/** plugin-tech-radar */
'http://localhost:3000/tech-radar',
],
settings: {
onlyCategories: ['accessibility'],
@@ -0,0 +1,10 @@
---
title: API SDK Generator
author: Konfig
authorUrl: https://konfigthis.com/
category: Development
description: Generate SDKs for your REST API to accelerate integration
documentation: https://github.com/konfig-dev/backstage-plugin-konfig/tree/main/plugins/backstage-plugin-konfig
iconUrl: https://raw.githubusercontent.com/konfig-dev/backstage-plugin-konfig/main/plugins/backstage-plugin-konfig/docs/logo.png
npmPackageName: 'backstage-plugin-konfig'
addedDate: '2023-08-07'
@@ -0,0 +1,13 @@
---
title: JFrog Artifactory Libs plugin
author: Vity
authorUrl: https://github.com/Vity01
category: Discovery
description:
frontend plugin provides a simple way to display generated artifact (library) details like
- group, artifact, repository, what is the latest version, and it simply
allows to copy library definition for the package managers.
documentation: https://github.com/Vity01/backstage-jfrog-artifactory-libs
iconUrl: https://raw.githubusercontent.com/Vity01/backstage-jfrog-artifactory-libs/main/doc/artifactory.svg
npmPackageName: 'backstage-plugin-jfrog-artifactory-libs'
addedDate: '2023-08-14'
@@ -0,0 +1,9 @@
---
title: Microsoft Teams Scaffolder Actions
author: Gaurav Pandey
authorUrl: https://github.com/grvpandey11
category: Scaffolder
description: Interact with Microsoft Teams from Scaffolder templates
documentation: https://github.com/grvpandey11/backstage-plugin-scaffolder-backend-module-ms-teams/tree/main#readme
npmPackageName: '@grvpandey11/backstage-plugin-scaffolder-backend-module-ms-teams'
addedDate: '2023-08-11'
@@ -4,7 +4,7 @@ author: Solo.io
authorUrl: https://solo.io
category: Infrastructure
description: View, test, and manage your Gloo Platform Portal APIs through our Backstage plugin.
documentation: https://github.com/solo-io/dev-portal-backstage-public#readme
documentation: https://github.com/solo-io/backstage-plugins-overview#readme
iconUrl: /img/solo-io-glooy-circle.png.webp
npmPackageName: '@solo.io/dev-portal-backstage-plugin'
addedDate: '2023-05-19'
+1 -1
View File
@@ -177,7 +177,7 @@ module.exports = {
position: 'left',
},
{
to: 'docs/releases/v1.16.0',
to: 'docs/releases/v1.17.0',
label: 'Releases',
position: 'left',
},
+1
View File
@@ -1,6 +1,7 @@
{
"releases": {
"Release Notes": [
"releases/v1.17.0",
"releases/v1.16.0",
"releases/v1.15.0",
"releases/v1.14.0",

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