Merge branch 'master' into feat/yarn-lock-parser

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
This commit is contained in:
Patrik Oldsberg
2022-05-18 16:28:42 +02:00
900 changed files with 27178 additions and 5301 deletions
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-cost-insights': patch
---
Add missing `export` in configuration schema.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder': minor
---
Add new bitbucket(Cloud/Server) integrations to ScaffolderClient.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-common': patch
---
Gerrit integration: Added optional `cloneUrl` string to config.
-6
View File
@@ -1,6 +0,0 @@
---
'@backstage/plugin-scaffolder-backend': minor
---
Update the `github:publish` action to allow passing required status check
contexts before merging to the main branch.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/backend-common': patch
---
Split BitbucketUrlReader into BitbucketCloudUrlReader and BitbucketServerUrlReader. Backwards compatible.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-kubernetes-backend': patch
---
Add filtering to GKE cluster locator
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/core-plugin-api': patch
---
The authentication APIs are no longer `@alpha`. Since the `@backstage/core-plugin-api` has no `/alpha` entrypoint, the only effect of marking the APIs as `@alpha` was to hide them in documentation. They are still expected to be widely used and there will be a migration path if they are changed in the future.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/integration': minor
---
Gerrit UrlReader: Implemented `readTree`
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog': patch
---
Updates the `isKind`, `ìsComponentType`, and `isNamespace` to allow an array of possible values
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/cli': patch
---
Add instructions to `create-github-app` command.
-30
View File
@@ -1,30 +0,0 @@
---
'@backstage/plugin-catalog-backend-module-msgraph': patch
---
Add annotation `microsoft.com/email` when using the `defaultUserTransformer`.
This will allow users of the Microsoft auth provider to utilize the predefined
SignIn resolver instead of maintaining their own.
```typescript
// backend/plugins/auth.ts
// [...]
export default async function createPlugin(
env: PluginEnvironment,
): Promise<Router> {
return await createRouter({
// [...]
providerFactories: {
microsoft: providers.microsoft.create({
signIn: {
resolver:
providers.microsoft.resolvers.emailMatchingUserEntityAnnotation(),
},
}),
},
});
}
```
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-backend': patch
---
Fixing broken types for `knex` when checking returned rows
-7
View File
@@ -1,7 +0,0 @@
---
'@backstage/create-app': patch
---
Optimized the command order in `packages/backend/Dockerfile` as well as added the `--no-install-recommends` to the `apt-get install` and tweaked the installed packages.
To apply this change to an existing app, update your `packages/backend/Dockerfile` to match the documented `Dockerfile` at https://backstage.io/docs/deployment/docker#host-build.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/cli': patch
---
Add package global-agent to support behind a proxy for backstage-cli commands like versions:bump.
-39
View File
@@ -1,39 +0,0 @@
---
'@backstage/create-app': patch
---
Added some instruction comments to the generated config files, to clarify the
usage of `backend.baseUrl` and `backend.listen.host`. Importantly, it also per
default now listens on all IPv4 interfaces, to make it easier to take the step
over to production. If you want to do the same, update your
`app-config.production.yaml` as follows:
```diff
backend:
listen:
port: 7007
+ host: 0.0.0.0
```
Also, updated the builtin backend Dockerfile to honor the
`app-config.production.yaml` file. If you want to do the same, change
`packages/backend/Dockerfile` as follows:
```diff
-COPY packages/backend/dist/bundle.tar.gz app-config.yaml ./
+COPY packages/backend/dist/bundle.tar.gz app-config*.yaml ./
RUN tar xzf bundle.tar.gz && rm bundle.tar.gz
-CMD ["node", "packages/backend", "--config", "app-config.yaml"]
+CMD ["node", "packages/backend", "--config", "app-config.yaml", "--config", "app-config.production.yaml"]
```
If you look carefully, this adds a glob match on app-config files. For those
that try out the build flows locally, you also want to make sure that the docker
daemon does NOT pick up any local/private config files that might contain
secrets. You should therefore also update your local `.dockerignore` file at the
same time:
```diff
+*.local.yaml
```
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-allure': patch
---
Add export for `isAllureReportAvailable` and `ALLURE_PROJECT_ID_ANNOTATION` so it can be used outside of plugin
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-scaffolder-backend': patch
---
Override default commit message and author details in GitHub, Azure, bitbucket
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-home': patch
---
star icons now have the same yellow color as the other star icons when a entity is favourite
-7
View File
@@ -1,7 +0,0 @@
---
'@backstage/plugin-api-docs': patch
'@backstage/plugin-catalog': minor
'@backstage/plugin-catalog-react': minor
---
Use InfoCardVariants on custom cards variant attribute
-37
View File
@@ -1,37 +0,0 @@
---
'@backstage/integration': minor
'@backstage/integration-react': minor
---
Split `bitbucket` integration into `bitbucketCloud` and `bitbucketServer`
(backwards compatible).
In order to migrate to the new integration configs,
move your configs from `integrations.bitbucket`
to `integrations.bitbucketCloud` or `integrations.bitbucketServer`.
Migration example:
**Before:**
```yaml
integrations:
bitbucket:
- host: bitbucket.org
username: bitbucket_user
appPassword: app-password
- host: bitbucket-server.company.com
token: my-token
```
**After:**
```yaml
integrations:
bitbucketCloud:
- username: bitbucket_user
appPassword: app-password
bitbucketServer:
- host: bitbucket-server.company.com
token: my-token
```
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog': minor
---
Added the prop `NotFoundComponent` to `EntityLayout` which can be used to include a custom component when an entity is not found in the catalog
+6
View File
@@ -0,0 +1,6 @@
---
'@backstage/plugin-catalog-backend-module-aws': patch
'@backstage/plugin-catalog-backend-module-gerrit': patch
---
Inline config interfaces
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-api-docs': patch
---
Bumped @asyncapi/react-component > openapi-sampler > json-pointer to resolve security vulnerability CVE-2021-23820
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/integration': minor
---
Gerrit Integration: Added the `getGerritProjectsApiUrl` function
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-catalog-backend-module-gerrit': minor
---
Initial version of the `plugin-catalog-backend-module-gerrit` plugin
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-newrelic-dashboard': patch
---
Add `FetchApi` and related `fetchApiRef` which implement fetch. in order to included the Authorization Token to New Relic Dashboard Plugin, so that frontend can send an authenticated proxy call to backend
+146 -184
View File
@@ -2,195 +2,157 @@
"mode": "pre",
"tag": "next",
"initialVersions": {
"example-app": "0.2.70",
"@backstage/app-defaults": "1.0.1",
"example-backend": "0.2.70",
"@backstage/backend-common": "0.13.2",
"@backstage/backend-tasks": "0.3.0",
"@backstage/backend-test-utils": "0.1.23",
"@backstage/catalog-client": "1.0.1",
"@backstage/catalog-model": "1.0.1",
"@backstage/cli": "0.17.0",
"@backstage/cli-common": "0.1.8",
"@backstage/codemods": "0.1.37",
"@backstage/config": "1.0.0",
"@backstage/config-loader": "1.1.0",
"@backstage/core-app-api": "1.0.1",
"@backstage/core-components": "0.9.3",
"@backstage/core-plugin-api": "1.0.1",
"@backstage/create-app": "0.4.26",
"@backstage/dev-utils": "1.0.1",
"example-app": "0.2.71",
"@backstage/app-defaults": "1.0.2",
"example-backend": "0.2.71",
"@backstage/backend-common": "0.13.3",
"@backstage/backend-tasks": "0.3.1",
"@backstage/backend-test-utils": "0.1.24",
"@backstage/catalog-client": "1.0.2",
"@backstage/catalog-model": "1.0.2",
"@backstage/cli": "0.17.1",
"@backstage/cli-common": "0.1.9",
"@backstage/codemods": "0.1.38",
"@backstage/config": "1.0.1",
"@backstage/config-loader": "1.1.1",
"@backstage/core-app-api": "1.0.2",
"@backstage/core-components": "0.9.4",
"@backstage/core-plugin-api": "1.0.2",
"@backstage/create-app": "0.4.27",
"@backstage/dev-utils": "1.0.2",
"e2e-test": "0.2.0",
"@backstage/errors": "1.0.0",
"@backstage/integration": "1.1.0",
"@backstage/integration-react": "1.0.1",
"@backstage/release-manifests": "0.0.2",
"@backstage/search-common": "0.3.3",
"@techdocs/cli": "1.1.0",
"techdocs-cli-embedded-app": "0.2.69",
"@backstage/techdocs-common": "0.11.14",
"@backstage/test-utils": "1.0.1",
"@backstage/integration": "1.2.0",
"@backstage/integration-react": "1.1.0",
"@backstage/release-manifests": "0.0.3",
"@backstage/search-common": "0.3.4",
"@techdocs/cli": "1.1.1",
"techdocs-cli-embedded-app": "0.2.70",
"@backstage/techdocs-common": "0.11.15",
"@backstage/test-utils": "1.1.0",
"@backstage/theme": "0.2.15",
"@backstage/types": "1.0.0",
"@backstage/version-bridge": "1.0.1",
"@backstage/plugin-airbrake": "0.3.4",
"@backstage/plugin-airbrake-backend": "0.2.4",
"@backstage/plugin-allure": "0.1.20",
"@backstage/plugin-analytics-module-ga": "0.1.15",
"@backstage/plugin-apache-airflow": "0.1.12",
"@backstage/plugin-api-docs": "0.8.4",
"@backstage/plugin-app-backend": "0.3.31",
"@backstage/plugin-auth-backend": "0.13.0",
"@backstage/plugin-auth-node": "0.2.0",
"@backstage/plugin-azure-devops": "0.1.20",
"@backstage/plugin-azure-devops-backend": "0.3.10",
"@backstage/plugin-azure-devops-common": "0.2.2",
"@backstage/plugin-badges": "0.2.28",
"@backstage/plugin-badges-backend": "0.1.25",
"@backstage/plugin-bazaar": "0.1.19",
"@backstage/plugin-bazaar-backend": "0.1.15",
"@backstage/plugin-bitrise": "0.1.31",
"@backstage/plugin-catalog": "1.1.0",
"@backstage/plugin-catalog-backend": "1.1.0",
"@backstage/plugin-catalog-backend-module-aws": "0.1.4",
"@backstage/plugin-catalog-backend-module-azure": "0.1.2",
"@backstage/plugin-catalog-backend-module-bitbucket": "0.1.2",
"@backstage/plugin-catalog-backend-module-github": "0.1.2",
"@backstage/plugin-catalog-backend-module-gitlab": "0.1.2",
"@backstage/plugin-catalog-backend-module-ldap": "0.4.2",
"@backstage/plugin-catalog-backend-module-msgraph": "0.3.1",
"@backstage/plugin-catalog-common": "1.0.1",
"@backstage/plugin-catalog-graph": "0.2.16",
"@backstage/plugin-catalog-graphql": "0.3.8",
"@backstage/plugin-catalog-import": "0.8.7",
"@backstage/plugin-catalog-react": "1.0.1",
"@backstage/plugin-cicd-statistics": "0.1.6",
"@backstage/plugin-cicd-statistics-module-gitlab": "0.1.0",
"@backstage/plugin-circleci": "0.3.4",
"@backstage/plugin-cloudbuild": "0.3.4",
"@backstage/plugin-code-climate": "0.1.4",
"@backstage/plugin-code-coverage": "0.1.31",
"@backstage/plugin-code-coverage-backend": "0.1.29",
"@backstage/plugin-config-schema": "0.1.27",
"@backstage/plugin-cost-insights": "0.11.26",
"@backstage/plugin-explore": "0.3.35",
"@backstage/plugin-explore-react": "0.0.16",
"@backstage/plugin-firehydrant": "0.1.21",
"@backstage/plugin-fossa": "0.2.36",
"@backstage/plugin-gcalendar": "0.3.0",
"@backstage/plugin-gcp-projects": "0.3.23",
"@backstage/plugin-git-release-manager": "0.3.17",
"@backstage/plugin-github-actions": "0.5.4",
"@backstage/plugin-github-deployments": "0.1.35",
"@backstage/plugin-gitops-profiles": "0.3.22",
"@backstage/plugin-gocd": "0.1.10",
"@backstage/plugin-graphiql": "0.2.36",
"@backstage/plugin-graphql-backend": "0.1.21",
"@backstage/plugin-home": "0.4.20",
"@backstage/plugin-ilert": "0.1.30",
"@backstage/plugin-jenkins": "0.7.3",
"@backstage/plugin-jenkins-backend": "0.1.20",
"@backstage/plugin-jenkins-common": "0.1.3",
"@backstage/plugin-kafka": "0.3.4",
"@backstage/plugin-kafka-backend": "0.2.24",
"@backstage/plugin-kubernetes": "0.6.4",
"@backstage/plugin-kubernetes-backend": "0.5.0",
"@backstage/plugin-kubernetes-common": "0.2.9",
"@backstage/plugin-lighthouse": "0.3.4",
"@backstage/plugin-newrelic": "0.3.22",
"@backstage/plugin-newrelic-dashboard": "0.1.12",
"@backstage/plugin-org": "0.5.4",
"@backstage/plugin-pagerduty": "0.3.31",
"@backstage/plugin-periskop": "0.1.2",
"@backstage/plugin-periskop-backend": "0.1.2",
"@backstage/plugin-permission-backend": "0.5.6",
"@backstage/plugin-permission-common": "0.6.0",
"@backstage/plugin-permission-node": "0.6.0",
"@backstage/plugin-permission-react": "0.4.0",
"@backstage/plugin-proxy-backend": "0.2.25",
"@backstage/plugin-rollbar": "0.4.4",
"@backstage/plugin-rollbar-backend": "0.1.28",
"@backstage/plugin-scaffolder": "1.1.0",
"@backstage/plugin-scaffolder-backend": "1.1.0",
"@backstage/plugin-scaffolder-backend-module-cookiecutter": "0.2.6",
"@backstage/plugin-scaffolder-backend-module-rails": "0.3.6",
"@backstage/plugin-scaffolder-backend-module-yeoman": "0.2.4",
"@backstage/plugin-scaffolder-common": "1.0.1",
"@backstage/plugin-search": "0.8.0",
"@backstage/plugin-search-backend": "0.5.0",
"@backstage/plugin-search-backend-module-elasticsearch": "0.1.3",
"@backstage/plugin-search-backend-module-pg": "0.3.2",
"@backstage/plugin-search-backend-node": "0.6.0",
"@backstage/plugin-search-common": "0.3.3",
"@backstage/plugin-search-react": "0.1.0",
"@backstage/plugin-sentry": "0.3.42",
"@backstage/plugin-shortcuts": "0.2.5",
"@backstage/plugin-sonarqube": "0.3.4",
"@backstage/plugin-splunk-on-call": "0.3.28",
"@backstage/plugin-stack-overflow": "0.1.0",
"@backstage/plugin-stack-overflow-backend": "0.1.0",
"@backstage/plugin-tech-insights": "0.2.0",
"@backstage/plugin-tech-insights-backend": "0.3.0",
"@backstage/plugin-tech-insights-backend-module-jsonfc": "0.1.15",
"@backstage/plugin-adr": "0.1.0",
"@backstage/plugin-adr-backend": "0.1.0",
"@backstage/plugin-adr-common": "0.1.0",
"@backstage/plugin-airbrake": "0.3.5",
"@backstage/plugin-airbrake-backend": "0.2.5",
"@backstage/plugin-allure": "0.1.21",
"@backstage/plugin-analytics-module-ga": "0.1.16",
"@backstage/plugin-apache-airflow": "0.1.13",
"@backstage/plugin-api-docs": "0.8.5",
"@backstage/plugin-app-backend": "0.3.32",
"@backstage/plugin-auth-backend": "0.14.0",
"@backstage/plugin-auth-node": "0.2.1",
"@backstage/plugin-azure-devops": "0.1.21",
"@backstage/plugin-azure-devops-backend": "0.3.11",
"@backstage/plugin-azure-devops-common": "0.2.3",
"@backstage/plugin-badges": "0.2.29",
"@backstage/plugin-badges-backend": "0.1.26",
"@backstage/plugin-bazaar": "0.1.20",
"@backstage/plugin-bazaar-backend": "0.1.16",
"@backstage/plugin-bitrise": "0.1.32",
"@backstage/plugin-catalog": "1.2.0",
"@backstage/plugin-catalog-backend": "1.1.2",
"@backstage/plugin-catalog-backend-module-aws": "0.1.5",
"@backstage/plugin-catalog-backend-module-azure": "0.1.3",
"@backstage/plugin-catalog-backend-module-bitbucket": "0.1.3",
"@backstage/plugin-catalog-backend-module-gerrit": "0.1.0",
"@backstage/plugin-catalog-backend-module-github": "0.1.3",
"@backstage/plugin-catalog-backend-module-gitlab": "0.1.3",
"@backstage/plugin-catalog-backend-module-ldap": "0.4.3",
"@backstage/plugin-catalog-backend-module-msgraph": "0.3.2",
"@backstage/plugin-catalog-common": "1.0.2",
"@backstage/plugin-catalog-graph": "0.2.17",
"@backstage/plugin-catalog-graphql": "0.3.9",
"@backstage/plugin-catalog-import": "0.8.8",
"@backstage/plugin-catalog-react": "1.1.0",
"@backstage/plugin-cicd-statistics": "0.1.7",
"@backstage/plugin-cicd-statistics-module-gitlab": "0.1.1",
"@backstage/plugin-circleci": "0.3.5",
"@backstage/plugin-cloudbuild": "0.3.5",
"@backstage/plugin-code-climate": "0.1.5",
"@backstage/plugin-code-coverage": "0.1.32",
"@backstage/plugin-code-coverage-backend": "0.1.30",
"@backstage/plugin-codescene": "0.1.0",
"@backstage/plugin-config-schema": "0.1.28",
"@backstage/plugin-cost-insights": "0.11.27",
"@internal/plugin-todo-list": "1.0.1",
"@internal/plugin-todo-list-backend": "1.0.1",
"@internal/plugin-todo-list-common": "1.0.1",
"@backstage/plugin-explore": "0.3.36",
"@backstage/plugin-explore-react": "0.0.17",
"@backstage/plugin-firehydrant": "0.1.22",
"@backstage/plugin-fossa": "0.2.37",
"@backstage/plugin-gcalendar": "0.3.1",
"@backstage/plugin-gcp-projects": "0.3.24",
"@backstage/plugin-git-release-manager": "0.3.18",
"@backstage/plugin-github-actions": "0.5.5",
"@backstage/plugin-github-deployments": "0.1.36",
"@backstage/plugin-gitops-profiles": "0.3.23",
"@backstage/plugin-gocd": "0.1.11",
"@backstage/plugin-graphiql": "0.2.37",
"@backstage/plugin-graphql-backend": "0.1.22",
"@backstage/plugin-home": "0.4.21",
"@backstage/plugin-ilert": "0.1.31",
"@backstage/plugin-jenkins": "0.7.4",
"@backstage/plugin-jenkins-backend": "0.1.22",
"@backstage/plugin-jenkins-common": "0.1.4",
"@backstage/plugin-kafka": "0.3.5",
"@backstage/plugin-kafka-backend": "0.2.25",
"@backstage/plugin-kubernetes": "0.6.5",
"@backstage/plugin-kubernetes-backend": "0.5.1",
"@backstage/plugin-kubernetes-common": "0.2.10",
"@backstage/plugin-lighthouse": "0.3.5",
"@backstage/plugin-newrelic": "0.3.23",
"@backstage/plugin-newrelic-dashboard": "0.1.13",
"@backstage/plugin-org": "0.5.5",
"@backstage/plugin-pagerduty": "0.3.32",
"@backstage/plugin-periskop": "0.1.3",
"@backstage/plugin-periskop-backend": "0.1.3",
"@backstage/plugin-permission-backend": "0.5.7",
"@backstage/plugin-permission-common": "0.6.1",
"@backstage/plugin-permission-node": "0.6.1",
"@backstage/plugin-permission-react": "0.4.1",
"@backstage/plugin-proxy-backend": "0.2.26",
"@backstage/plugin-rollbar": "0.4.5",
"@backstage/plugin-rollbar-backend": "0.1.29",
"@backstage/plugin-scaffolder": "1.2.0",
"@backstage/plugin-scaffolder-backend": "1.2.0",
"@backstage/plugin-scaffolder-backend-module-cookiecutter": "0.2.7",
"@backstage/plugin-scaffolder-backend-module-rails": "0.4.0",
"@backstage/plugin-scaffolder-backend-module-yeoman": "0.2.5",
"@backstage/plugin-scaffolder-common": "1.1.0",
"@backstage/plugin-search": "0.8.1",
"@backstage/plugin-search-backend": "0.5.2",
"@backstage/plugin-search-backend-module-elasticsearch": "0.1.4",
"@backstage/plugin-search-backend-module-pg": "0.3.3",
"@backstage/plugin-search-backend-node": "0.6.1",
"@backstage/plugin-search-common": "0.3.4",
"@backstage/plugin-search-react": "0.2.0",
"@backstage/plugin-sentry": "0.3.43",
"@backstage/plugin-shortcuts": "0.2.6",
"@backstage/plugin-sonarqube": "0.3.5",
"@backstage/plugin-splunk-on-call": "0.3.29",
"@backstage/plugin-stack-overflow": "0.1.1",
"@backstage/plugin-stack-overflow-backend": "0.1.1",
"@backstage/plugin-tech-insights": "0.2.1",
"@backstage/plugin-tech-insights-backend": "0.4.0",
"@backstage/plugin-tech-insights-backend-module-jsonfc": "0.1.16",
"@backstage/plugin-tech-insights-common": "0.2.4",
"@backstage/plugin-tech-insights-node": "0.2.9",
"@backstage/plugin-tech-radar": "0.5.11",
"@backstage/plugin-techdocs": "1.1.0",
"@backstage/plugin-techdocs-backend": "1.1.0",
"@backstage/plugin-techdocs-node": "1.1.0",
"@backstage/plugin-techdocs-react": "0.1.0",
"@backstage/plugin-todo": "0.2.6",
"@backstage/plugin-todo-backend": "0.1.28",
"@backstage/plugin-user-settings": "0.4.3",
"@backstage/plugin-xcmetrics": "0.2.24",
"@backstage/plugin-catalog-backend-module-gerrit": "0.0.0",
"@backstage/plugin-techdocs-module-addons-contrib": "0.0.0"
"@backstage/plugin-tech-insights-node": "0.3.0",
"@backstage/plugin-tech-radar": "0.5.12",
"@backstage/plugin-techdocs": "1.1.1",
"@backstage/plugin-techdocs-addons-test-utils": "1.0.0",
"@backstage/plugin-techdocs-backend": "1.1.1",
"@backstage/plugin-techdocs-module-addons-contrib": "1.0.0",
"@backstage/plugin-techdocs-node": "1.1.1",
"@backstage/plugin-techdocs-react": "1.0.0",
"@backstage/plugin-todo": "0.2.7",
"@backstage/plugin-todo-backend": "0.1.29",
"@backstage/plugin-user-settings": "0.4.4",
"@backstage/plugin-xcmetrics": "0.2.25"
},
"changesets": [
"breezy-days-prove",
"cool-ties-share",
"curly-parrots-applaud",
"dirty-eagles-hunt",
"eighty-chicken-retire",
"fair-kings-retire",
"fuzzy-seahorses-teach",
"giant-cheetahs-thank",
"hip-adults-collect",
"honest-kids-live",
"hot-peaches-give",
"lazy-zebras-pay",
"mean-flowers-change",
"metal-pants-fly",
"moody-laws-boil",
"moody-suns-smell",
"nasty-humans-give",
"new-beds-argue",
"old-bikes-study",
"perfect-penguins-rescue",
"pink-mayflies-rhyme",
"renovate-bf43c44",
"search-dry-wolves-join",
"search-heavy-llamas-worry",
"seven-deers-rule",
"shiny-students-approve",
"short-dodos-sparkle",
"short-flies-collect",
"silver-readers-deliver",
"sixty-llamas-change",
"spotty-plums-rule",
"stale-pigs-reply",
"strong-mangos-sell",
"swift-bugs-share",
"swift-parrots-hammer",
"tasty-drinks-teach",
"techdocs-changeset-not-found",
"techdocs-nice-boats-wonder",
"techdocs-quick-owls-smile",
"techdocs-touch-screen-wipes",
"thick-bees-brush",
"tough-forks-carry",
"violet-steaks-knock",
"wild-pigs-work",
"wise-emus-wait"
]
"changesets": []
}
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/search-backend-node': patch
---
propagate indexing errors so they don't appear successful to the task scheduler
+7
View File
@@ -0,0 +1,7 @@
---
'@backstage/core-components': patch
'@backstage/plugin-gcp-projects': patch
'@backstage/plugin-techdocs-module-addons-contrib': patch
---
Updated dependency `@react-hookz/web` to `^14.0.0`.
-18
View File
@@ -1,18 +0,0 @@
---
'@backstage/backend-common': patch
'@backstage/cli': patch
'@backstage/config-loader': patch
'@backstage/create-app': patch
'@backstage/plugin-app-backend': patch
'@backstage/plugin-auth-backend': patch
'@backstage/plugin-catalog-backend-module-gerrit': patch
'@backstage/plugin-catalog-backend': patch
'@backstage/plugin-kubernetes-backend': patch
'@backstage/plugin-rollbar-backend': patch
'@backstage/plugin-scaffolder-backend-module-cookiecutter': patch
'@backstage/plugin-scaffolder-backend': patch
'@backstage/plugin-techdocs-backend': patch
'@backstage/plugin-techdocs-node': patch
---
Updated dependency `fs-extra` to `10.1.0`.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-search': patch
---
Fix issue with `HomePageSearchBar` requiring `SearchContext`
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-search-react': patch
---
Export `useSearchContextCheck` hook to check if the search context is available
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-search-backend-module-elasticsearch': patch
---
Prevent orphaned stale indices by permanently marking them for deletion so removal can be re-attempted if it failed previously
-21
View File
@@ -1,21 +0,0 @@
---
'@backstage/plugin-scaffolder-backend': minor
---
Split `publish:bitbucket` into `publish:bitbucketCloud` and `publish:bitbucketServer`.
In order to migrate from the deprecated action, you need to replace the use of action
`publish:bitbucket` in your templates with the use of either `publish:bitbucketCloud`
or `publish:bitbucketServer` - depending on which destination SCM provider you use.
Additionally, these actions will not utilize `integrations.bitbucket` anymore,
but `integrations.bitbucketCloud` or `integrations.bitbucketServer` respectively.
You may or may not have migrated to these already.
As described in a previous changeset, using these two replacement integrations configs
will not compromise use cases which still rely on `integrations.bitbucket` as this was
set up in a backwards compatible way.
Additionally, please mind that the option `enableLFS` is only available (and always was)
for Bitbucket Server use cases and therefore, is not even part of the schema for
`publish:bitbucketCloud` anymore.
-10
View File
@@ -1,10 +0,0 @@
---
'@backstage/plugin-catalog-backend-module-aws': patch
---
Fix S3 object URL creation at AwsS3EntityProvider by
- handle absence of region config,
- handle regions with region-less URIs (us-east-1),
- apply URI encoding,
- and simplify the logic overall.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/config-loader': patch
---
Handle empty config files gracefully
-8
View File
@@ -1,8 +0,0 @@
---
'@backstage/cli': patch
'@backstage/codemods': patch
'@backstage/create-app': patch
'@techdocs/cli': patch
---
Bump `commander` to version 9.1.0
-7
View File
@@ -1,7 +0,0 @@
---
'@backstage/plugin-catalog-backend': patch
'@backstage/plugin-jenkins-backend': patch
'@backstage/plugin-search-backend': patch
---
Fixed issue in `PermissionEvaluator` instance check that would cause unexpected "invalid union" errors.
+15
View File
@@ -0,0 +1,15 @@
---
'@backstage/plugin-catalog-backend': minor
---
Allow array as non-spread arguments at the `CatalogBuilder`.
```typescript
builder.addEntityProvider(...getArrayOfProviders());
```
can be simplified to
```typescript
builder.addEntityProvider(getArrayOfProviders());
```
-6
View File
@@ -1,6 +0,0 @@
---
'@backstage/plugin-search-react': patch
'@backstage/plugin-techdocs': patch
---
Removed dependency on `@backstage/core-app-api`.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/create-app': patch
---
Added a link to the `${GITHUB_TOKEN}` to document how to generate a token
-16
View File
@@ -1,16 +0,0 @@
---
'@backstage/plugin-auth-backend': patch
---
Add more common predefined sign-in resolvers to auth providers.
Add the existing resolver to more providers (already available at `google`):
- `providers.microsoft.resolvers.emailLocalPartMatchingUserEntityName()`
- `providers.okta.resolvers.emailLocalPartMatchingUserEntityName()`
Add a new resolver for simple email-to-email matching:
- `providers.google.resolvers.emailMatchingUserEntityProfileEmail()`
- `providers.microsoft.resolvers.emailMatchingUserEntityProfileEmail()`
- `providers.okta.resolvers.emailMatchingUserEntityProfileEmail()`
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/cli': patch
---
Updated the `create-github-app` command to throw an error if the organization argument is a user or a non existing organization.
-9
View File
@@ -1,9 +0,0 @@
---
'@backstage/backend-tasks': patch
---
Scheduled tasks now have an optional `scope` field. If unset, or having the
value `'global'`, the old behavior with cross-worker locking is retained. If
having the value `'local'`, there is no coordination across workers and the
behavior is more like `setInterval`. This can be used to replace usages of
`runPeriodically` helpers.
-7
View File
@@ -1,7 +0,0 @@
---
'@backstage/backend-common': patch
'@backstage/plugin-auth-backend': patch
'@backstage/plugin-auth-node': patch
---
Update to `jose` 4.6.0
@@ -1,5 +0,0 @@
---
'@backstage/plugin-techdocs': patch
---
Fixed bugs that prevented a 404 error from being shown when it should have been.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-techdocs-node': patch
---
Allow usage of custom tags with sequence node type (such as the !ENV tag) in the techdocs mkdocs config.
-7
View File
@@ -1,7 +0,0 @@
---
'@backstage/plugin-techdocs-module-addons-contrib': minor
---
A package for contributed TechDocs addons.
In this release it will introduce the ReportIssue addon, which lets you select text and open a GitHub/Gitlab issue.
+9
View File
@@ -0,0 +1,9 @@
---
'@backstage/plugin-techdocs': patch
---
Packages a set of tweaks to the TechDocs addons rendering process:
- Prevents displaying sidebars until page styles are loaded and the sidebar position is updated;
- Prevents new sidebar locations from being created every time the reader page is rendered if these locations already exist;
- Centers the styles loaded event to avoid having multiple locations setting the opacity style in Shadow Dom causing the screen to flash multiple times.
@@ -1,6 +0,0 @@
---
'@backstage/plugin-techdocs-react': patch
'@backstage/plugin-techdocs-module-addons-contrib': patch
---
Updated the return type of `createTechDocsAddonExtension` to better reflect the fact that passing children to Addon components is not a valid use-case.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-techdocs': patch
---
Change the `EntityDocsPage` path to be more specific and also add integration tests for `sub-routes` on this page.
+8
View File
@@ -0,0 +1,8 @@
---
'@backstage/plugin-techdocs-react': patch
---
Creates a `TechDocsShadowDom` component that takes a tree of elements and an `onAppend` handler:
- Calls the `onAppend` handler when appending the element tree to the shadow root;
- Also dispatches an event when styles are loaded to let transformers know that the computed styles are ready to be consumed.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-gcalendar': patch
---
fixed google API types dependencies
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-org': patch
---
Fix ref to filtered catalog table view when using aggregated relations.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/test-utils': patch
---
Added missing `Routes` element to wrap the `Route` elements of the test app wrapping.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/plugin-api-docs': patch
---
Updated the rendering of AsyncApi definitions to be able to resolve absolute HTTP $ref references.
-5
View File
@@ -1,5 +0,0 @@
---
'@backstage/test-utils': patch
---
The internal elements created as part of the `mountedRoutes` implementation are now hidden during rendering.
+2 -2
View File
@@ -3,6 +3,6 @@ docs
cypress
microsite
node_modules
packages
!packages/backend/dist
packages/*/src
packages/*/node_modules
plugins
+2
View File
@@ -5,6 +5,8 @@
# https://help.github.com/articles/about-codeowners/
* @backstage/reviewers
yarn.lock @backstage/reviewers @backstage-service
*/yarn.lock @backstage/reviewers @backstage-service
/.changeset/cost-insights-* @backstage/reviewers @backstage/silver-lining
/.changeset/search-* @backstage/reviewers @backstage/techdocs-core
/.changeset/techdocs-* @backstage/reviewers @backstage/techdocs-core
+1 -1
View File
@@ -3,7 +3,7 @@
extends: ['config:base', ':disableDependencyDashboard', ':gitSignOff'],
rangeStrategy: 'update-lockfile',
// @elastic/elasticsearch is ignored due to licensing issues. See #10992
ignoreDeps: ['@elastic/elasticsearch'],
ignoreDeps: ['@elastic/elasticsearch', 'event-source-polyfill'],
packageRules: [
{
matchSourceUrlPrefixes: ['https://github.com/spotify/web-scripts'],
@@ -8,9 +8,6 @@ airbrake
Anddddd
Apdex
api
Api
apis
args
asciidoc
async
Atlassian
@@ -19,7 +16,6 @@ autoscaling
Autoscaling
autoselect
Avro
aws
backported
backporting
Bigtable
@@ -38,7 +34,6 @@ changesets
Changesets
chanwit
Chanwit
ci
CI/CD
classname
cli
@@ -50,6 +45,8 @@ codeblocks
Codecov
codehilite
Codehilite
codescene
CodeScene
codemod
codemods
codeowners
@@ -127,7 +124,6 @@ hoc
horizontalpodautoscalers
Hostname
hotspots
html
http
https
Iain
@@ -224,6 +220,8 @@ performant
Performant
periskop
Periskop
permissioned
permissioning
plantuml
Platformize
Podman
@@ -314,8 +312,8 @@ templaters
Templaters
theia
thumbsup
toc
todo
todos
tolerations
Tolerations
toolchain
@@ -339,7 +337,6 @@ unregistration
untracked
upsert
upvote
url
URIs
URLs
utils
+6
View File
@@ -0,0 +1,6 @@
StylesPath = .
Vocab = Backstage
[*.md]
BasedOnStyles = Vale
Vale.Terms = NO
+1 -1
View File
@@ -6,7 +6,7 @@ jobs:
triage:
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v3
- uses: actions/labeler@v4
with:
repo-token: '${{ secrets.GITHUB_TOKEN }}'
sync-labels: true
@@ -21,7 +21,7 @@ jobs:
if: github.repository == 'backstage/backstage' && github.event.pull_request.user.login != 'backstage-service'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
# Fetch the commit that's merged into the base rather than the target ref
# This will let us diff only the contents of the PR, without fetching more history
@@ -39,7 +39,7 @@ jobs:
node generate.js FETCH_HEAD > feedback.txt
- name: Post Feedback
uses: actions/github-script@v5
uses: actions/github-script@v6
env:
ISSUE_NUMBER: ${{ github.event.pull_request.number }}
with:
@@ -0,0 +1,85 @@
name: Automate Merge Renovate PRs
on:
workflow_dispatch:
schedule:
- cron: '*/10 * * * *'
jobs:
diff:
runs-on: ubuntu-latest
steps:
- uses: actions/github-script@v6
with:
script: |
const owner = "backstage";
const repo = "backstage";
const query = `{
repository(owner: "backstage", name: "backstage") {
pullRequests(labels: ["dependencies"], last: 10, states: [OPEN]) {
nodes {
title
author {
login
}
number
mergeable
files(first: 1) {
nodes {
path
}
}
changedFiles
commits(last: 1) {
nodes {
commit {
statusCheckRollup {
state
}
}
}
}
reviewDecision
reviews(first: 10) {
nodes {
author {
login
}
}
}
}
}
}
}`;
const date = new Date();
if (date.getDay() === 2) {
console.log("Skipping auto merge because Tuesday is release day");
return;
}
const r = await github.graphql(query);
const mergable = r.repository.pullRequests.nodes.filter(
(pr) =>
pr.author.login === "renovate" &&
pr.mergeable === "MERGEABLE" &&
pr.changedFiles === 1 &&
pr.files.nodes[0].path.split("/").slice(-1)[0] === "yarn.lock" &&
pr.commits.nodes[0].commit.statusCheckRollup.state === "SUCCESS" &&
pr.reviewDecision === "APPROVED"
);
if (mergable.length === 0) {
console.log("no mergable PRs");
return;
}
for (const pr of mergable) {
console.log(`Merging #${pr.number} - ${pr.title}`);
await github.rest.pulls.merge({
owner,
repo,
pull_number: pr.number,
});
await new Promise((r) => setTimeout(r, 2000));
}
@@ -16,13 +16,13 @@ jobs:
application_private_key: ${{ secrets.BACKSTAGE_GOALIE_PRIVATE_KEY }}
organization: backstage
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 14
- run: npm install codeowners
- uses: actions/github-script@v5
- uses: actions/github-script@v6
id: fix-labels
with:
github-token: ${{ steps.get_workflow_token.outputs.token }}
+39 -5
View File
@@ -16,14 +16,14 @@ jobs:
label:
runs-on: ubuntu-latest
steps:
- uses: actions/github-script@v5
# THESE SCRIPTS SHOULD BE INLINED AND NOT IN REPO
# DUE TO THE TOKEN PERMISSIONS THAT ARE GIVEN
# TO THE WORKFLOW. THIS SCRIPT WILL AND SHOULD
# RUN FROM THE BASE REPO ALL TIMES.
- uses: actions/github-script@v6
id: fix-labels
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
# THIS SCRIPT SHOULD BE INLINED AND NOT IN REPO
# DUE TO THE TOKEN PERMISSIONS THAT ARE GIVEN
# TO THE WORKFLOW. THIS SCRIPT WILL AND SHOULD
# RUN FROM THE BASE REPO ALL TIMES.
script: |
if (['opened', 'synchronize'].includes('${{ github.event.action }}')) {
// if it's the author, always add awaiting-review label
@@ -48,3 +48,37 @@ jobs:
console.log(e)
});
}
- name: Add PRs to review board
uses: actions/github-script@v6
if: github.event.action == 'opened' || github.event.action == 'reopened'
env:
PROJECT_ID: PN_kwDOBFKqdc02LQ
with:
github-token: ${{ secrets.GH_SERVICE_ACCOUNT_TOKEN }}
script: |
const prLookup = await github.graphql(`
query($owner: String!, $repo: String!, $number: Int!){
repository(owner: $owner, name: $repo) {
pullRequest(number: $number) {
id
}
}
}
`, context.issue);
await github.graphql(`
mutation($projectId: ID!, $contentId: ID!) {
addProjectNextItem(input: {
projectId: $projectId,
contentId: $contentId,
}) {
projectNextItem {
id
}
}
}
`, {
projectId: process.env.PROJECT_ID,
contentId: prLookup.repository.pullRequest.id
})
+4 -4
View File
@@ -60,14 +60,14 @@ jobs:
INTEGRATION_TEST_AZURE_TOKEN: ${{ secrets.INTEGRATION_TEST_AZURE_TOKEN }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: fetch branch master
run: git fetch origin master
# 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
@@ -75,7 +75,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
@@ -91,7 +91,7 @@ jobs:
run: echo "::set-output name=dir::$(yarn cache dir)"
- 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 }}
+5 -6
View File
@@ -17,10 +17,10 @@ jobs:
NODE_OPTIONS: --max-old-space-size=4096
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- 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
@@ -55,8 +55,7 @@ jobs:
run: ls microsite/build/backstage && ls microsite/build/backstage/storybook
- name: Deploy both microsite and storybook to gh-pages
uses: JamesIves/github-pages-deploy-action@3.7.1
uses: JamesIves/github-pages-deploy-action@v4.3.3
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BRANCH: gh-pages
FOLDER: microsite/build/backstage
branch: gh-pages
folder: microsite/build/backstage
+4 -4
View File
@@ -18,17 +18,17 @@ jobs:
NODE_OPTIONS: --max-old-space-size=4096
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
# Beginning of yarn setup, keep in sync between all workflows, see ci.yml
- 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
- name: cache all node_modules
id: cache-modules
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-v${{ matrix.node-version }}-node_modules-${{ hashFiles('yarn.lock', '**/package.json') }}
@@ -37,7 +37,7 @@ jobs:
if: steps.cache-modules.outputs.cache-hit != 'true'
run: echo "::set-output name=dir::$(yarn cache dir)"
- 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 }}
+8 -8
View File
@@ -59,17 +59,17 @@ jobs:
INTEGRATION_TEST_AZURE_TOKEN: ${{ secrets.INTEGRATION_TEST_AZURE_TOKEN }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
# Beginning of yarn setup, keep in sync between all workflows, see ci.yml
- 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
- name: cache all node_modules
id: cache-modules
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-v${{ matrix.node-version }}-node_modules-${{ hashFiles('yarn.lock', '**/package.json') }}
@@ -78,7 +78,7 @@ jobs:
if: steps.cache-modules.outputs.cache-hit != 'true'
run: echo "::set-output name=dir::$(yarn cache dir)"
- 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 }}
@@ -155,17 +155,17 @@ jobs:
NODE_OPTIONS: --max-old-space-size=4096
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
# Beginning of yarn setup, keep in sync between all workflows, see ci.yml
- 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
- name: cache all node_modules
id: cache-modules
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-v${{ matrix.node-version }}-node_modules-${{ hashFiles('yarn.lock', '**/package.json') }}
@@ -174,7 +174,7 @@ jobs:
if: steps.cache-modules.outputs.cache-hit != 'true'
run: echo "::set-output name=dir::$(yarn cache dir)"
- 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 }}
@@ -0,0 +1,37 @@
name: Approve renovate lock file changes
on:
pull_request_target:
paths:
- '.github/workflows/sync_renovate-changesets.yml'
- '**/yarn.lock'
jobs:
generate-changeset:
runs-on: ubuntu-latest
if: github.actor == 'renovate[bot]' && github.repository == 'backstage/backstage'
steps:
- name: Approve
uses: actions/github-script@v6
with:
github-token: ${{ secrets.GH_SERVICE_ACCOUNT_TOKEN }}
script: |
const owner = 'backstage';
const repo = 'backstage';
const r = await github.rest.pulls.listFiles({
owner,
repo,
pull_number: context.issue.number,
});
if (r.data.some((f) => f.filename.split('/').slice(-1)[0] !== 'yarn.lock')) {
console.log('skipping approval since some files are not yarn.lock');
return;
}
await github.rest.pulls.createReview({
owner,
repo,
pull_number: context.issue.number,
event: 'APPROVE'
})
+5 -5
View File
@@ -9,20 +9,20 @@ jobs:
name: Autofix Markdown files using Prettier
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
# Fetch changes to previous commit - required for 'only_changed' in Prettier action
fetch-depth: 0
# Beginning of yarn setup, keep in sync between all workflows, see ci.yml
- 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
- name: cache all node_modules
id: cache-modules
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-v${{ matrix.node-version }}-node_modules-${{ hashFiles('yarn.lock', '**/package.json') }}
@@ -31,7 +31,7 @@ jobs:
if: steps.cache-modules.outputs.cache-hit != 'true'
run: echo "::set-output name=dir::$(yarn cache dir)"
- 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 }}
@@ -43,7 +43,7 @@ jobs:
# End of yarn setup
- name: Run Prettier on ADOPTERS.md
uses: creyD/prettier_action@v3.3
uses: creyD/prettier_action@v4.2
with:
# Modifies commit only if prettier autofixed the ADOPTERS.md
prettier_options: --config docs/prettier.config.js --write ADOPTERS.md
@@ -11,7 +11,7 @@ jobs:
if: github.actor == 'dependabot[bot]' && github.repository == 'backstage/backstage'
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
fetch-depth: 2
ref: ${{ github.head_ref }}
@@ -21,7 +21,7 @@ jobs:
git config --global user.email noreply@backstage.io
git config --global user.name 'Github changeset workflow'
- name: Generate changeset
uses: actions/github-script@v5
uses: actions/github-script@v6
with:
script: |
const { promises: fs } = require('fs');
+4 -4
View File
@@ -11,7 +11,7 @@ jobs:
runs-on: ubuntu-latest
steps:
# Setup node & install deps before checkout, keeping install quick
- uses: actions/setup-node@v2
- uses: actions/setup-node@v3
with:
node-version: 16
- name: Install dependencies
@@ -19,7 +19,7 @@ jobs:
run: npm install semver@7.3.5 fs-extra@10.0.0 @manypkg/get-packages@1.1.1
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: backstage
# 'v' prefix is added here for the tag, we keep it out of the manifest logic
@@ -27,7 +27,7 @@ jobs:
# Checkout backstage/versions into /backstage/versions, which is where store the output
- name: Checkout versions
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
repository: backstage/versions
path: backstage/versions
@@ -51,7 +51,7 @@ jobs:
git push
- name: Dispatch update-helper update
uses: actions/github-script@v5
uses: actions/github-script@v6
with:
github-token: ${{ secrets.GH_SERVICE_ACCOUNT_TOKEN }}
# TODO(Rugvip): Remove the create-app dispatch once we've been on the release version for a while
@@ -11,7 +11,7 @@ jobs:
if: github.actor == 'renovate[bot]' && github.repository == 'backstage/backstage'
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
fetch-depth: 2
ref: ${{ github.head_ref }}
@@ -21,7 +21,7 @@ jobs:
git config --global user.email noreply@backstage.io
git config --global user.name 'Github changeset workflow'
- name: Generate changeset
uses: actions/github-script@v5
uses: actions/github-script@v6
with:
script: |
const { promises: fs } = require("fs");
@@ -14,17 +14,17 @@ jobs:
node-version: [14.x]
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
# Beginning of yarn setup, keep in sync between all workflows, see ci.yml
- 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
- name: cache all node_modules
id: cache-modules
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-v${{ matrix.node-version }}-node_modules-${{ hashFiles('yarn.lock', '**/package.json') }}
@@ -33,7 +33,7 @@ jobs:
if: steps.cache-modules.outputs.cache-hit != 'true'
run: echo "::set-output name=dir::$(yarn cache dir)"
- 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 }}
+2 -2
View File
@@ -18,7 +18,7 @@ jobs:
sync:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Monitor and Synchronize Snyk Policies
uses: snyk/actions/node@master
with:
@@ -45,6 +45,6 @@ jobs:
env:
SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }}
- name: Upload Snyk report
uses: github/codeql-action/upload-sarif@v1
uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: snyk.sarif
+1 -1
View File
@@ -9,7 +9,7 @@ jobs:
name: Create Changeset PR
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 0
token: ${{ secrets.GH_SERVICE_ACCOUNT_TOKEN }}
+4 -4
View File
@@ -35,7 +35,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
# We must fetch at least the immediate parents so that if this is
# a pull request then we can checkout the head.
@@ -43,7 +43,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@@ -54,7 +54,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v1
uses: github/codeql-action/autobuild@v2
# ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
@@ -68,4 +68,4 @@ jobs:
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
uses: github/codeql-action/analyze@v2
+2 -2
View File
@@ -8,7 +8,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Verify DCO status for open pull requests
uses: actions/github-script@v5
uses: actions/github-script@v6
with:
script: |
const owner = "backstage";
@@ -54,7 +54,7 @@ jobs:
console.log(`creating comment on PR #${pull.number}`);
const body = `
Thanks for the contribution!
All commits need to be DCO signed before merging. Please refer to the the [DCO section in CONTRIBUTING.md](https://github.com/backstage/backstage/blob/master/CONTRIBUTING.md#developer-certificate-of-origin) or the [DCO](${checks.data.check_runs[0].html_url}) status for more info.
All commits need to be DCO signed before they are reviewed. Please refer to the the [DCO section in CONTRIBUTING.md](https://github.com/backstage/backstage/blob/master/CONTRIBUTING.md#developer-certificate-of-origin) or the [DCO](${checks.data.check_runs[0].html_url}) status for more info.
<!-- dco -->`;
await github.rest.issues.createComment({
repo,
+12 -4
View File
@@ -11,11 +11,19 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
# Vale does not support file excludes, so we use the script to generate a list of files instead
# The action also does not allow args or a local config file to be passed in, so the files array
# 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)"
- name: documentation quality check
uses: errata-ai/vale-action@v1.4.0
# Whitelist excluding ADOPTERS, CHANGELOG and OWNERS (no exclude flag exists)
uses: errata-ai/vale-action@v1.5.0
with:
files: '[".changeset", ".github", "contrib", "docs", "microsite", "packages", "plugins", "CONTRIBUTING.md", "CODE_OF_CONDUCT.md", "GOVERNANCE.md", "README.md"]'
# This also contains --config=.github/vale/config.ini ... :/
files: '${{ steps.generate.outputs.args }}'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+8 -4
View File
@@ -38,17 +38,17 @@ jobs:
name: Node ${{ matrix.node-version }} on ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
# Beginning of yarn setup, keep in sync between all workflows, see ci.yml
- 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
- name: cache all node_modules
id: cache-modules
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-v${{ matrix.node-version }}-node_modules-${{ hashFiles('yarn.lock', '**/package.json') }}
@@ -59,7 +59,7 @@ jobs:
- name: setup chrome
uses: browser-actions/setup-chrome@latest
- 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 }}
@@ -78,3 +78,7 @@ jobs:
yarn e2e-test run
env:
BACKSTAGE_TEST_DISABLE_DOCKER: 1
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_HOST: localhost
POSTGRES_PORT: ${{ job.services.postgres.ports[5432] }}
+2 -2
View File
@@ -25,8 +25,8 @@ jobs:
NODE_OPTIONS: --max-old-space-size=4096
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
- uses: actions/checkout@v3
- uses: actions/setup-python@v3
- name: install dependencies
run: yarn install --frozen-lockfile
+13 -13
View File
@@ -10,12 +10,12 @@ jobs:
# Set an initial commit status message to indicate that the tests are
# running.
- name: set pending status
uses: actions/github-script@v3
uses: actions/github-script@v6
with:
github-token: ${{secrets.GH_SERVICE_ACCOUNT_TOKEN}}
debug: true
script: |
return github.repos.createCommitStatus({
return github.rest.repos.createCommitStatus({
owner: context.repo.owner,
repo: context.repo.repo,
sha: context.sha,
@@ -34,12 +34,12 @@ jobs:
# Set an initial commit status message to indicate that the tests are
# running.
- name: set pending status
uses: actions/github-script@v3
uses: actions/github-script@v6
with:
github-token: ${{secrets.GH_SERVICE_ACCOUNT_TOKEN}}
debug: true
script: |
return github.repos.createCommitStatus({
return github.rest.repos.createCommitStatus({
owner: context.repo.owner,
repo: context.repo.repo,
sha: context.sha,
@@ -49,8 +49,8 @@ jobs:
target_url: "https://github.com/${{github.repository}}/actions/runs/${{github.run_id}}"
});
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '14'
@@ -65,12 +65,12 @@ jobs:
# https://developer.github.com/changes/2016-04-06-deployment-and-deployment-status-enhancements/
- name: get deployment status
id: get-status-env
uses: actions/github-script@v3
uses: actions/github-script@v6
with:
github-token: ${{secrets.GH_SERVICE_ACCOUNT_TOKEN}}
result-encoding: string
script: |
const result = await github.repos.getDeploymentStatus({
const result = await github.rest.repos.getDeploymentStatus({
owner: context.repo.owner,
repo: context.repo.repo,
deployment_id: context.payload.deployment.id,
@@ -95,18 +95,18 @@ jobs:
- name: update artifact
if: ${{ always() }}
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@v3
with:
name: cypress-videos
path: ./cypress/cypress/videos
- name: set status
if: ${{ failure() }}
uses: actions/github-script@v3
uses: actions/github-script@v6
with:
github-token: ${{secrets.GH_SERVICE_ACCOUNT_TOKEN}}
script: |
return github.repos.createCommitStatus({
return github.rest.repos.createCommitStatus({
owner: context.repo.owner,
repo: context.repo.repo,
sha: context.sha,
@@ -117,11 +117,11 @@ jobs:
- name: set status
if: ${{ success() }}
uses: actions/github-script@v3
uses: actions/github-script@v6
with:
github-token: ${{secrets.GH_SERVICE_ACCOUNT_TOKEN}}
script: |
return github.repos.createCommitStatus({
return github.rest.repos.createCommitStatus({
owner: context.repo.owner,
repo: context.repo.repo,
sha: context.sha,
+2 -2
View File
@@ -37,10 +37,10 @@ jobs:
git config --global core.autocrlf false
git config --global core.eol lf
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: use node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Add msbuild to PATH
+1 -1
View File
@@ -11,7 +11,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Install Fossa
run: "curl -H 'Cache-Control: no-cache' https://raw.githubusercontent.com/fossas/fossa-cli/master/install.sh | bash"
+2 -2
View File
@@ -19,10 +19,10 @@ jobs:
NODE_OPTIONS: --max-old-space-size=4096
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: use node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
+4 -4
View File
@@ -19,19 +19,19 @@ jobs:
chromatic:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 0 # Required to retrieve git history
# Beginning of yarn setup, keep in sync between all workflows, see ci.yml
- 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
- name: cache all node_modules
id: cache-modules
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-v${{ matrix.node-version }}-node_modules-${{ hashFiles('yarn.lock', '**/package.json') }}
@@ -40,7 +40,7 @@ jobs:
if: steps.cache-modules.outputs.cache-hit != 'true'
run: echo "::set-output name=dir::$(yarn cache dir)"
- 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 }}
+3 -3
View File
@@ -24,11 +24,11 @@ jobs:
INTEGRATION_TEST_AZURE_TOKEN: ${{ secrets.INTEGRATION_TEST_AZURE_TOKEN }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
# Beginning of yarn setup, keep in sync between all workflows, see ci.yml
- 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
@@ -36,7 +36,7 @@ jobs:
id: yarn-cache
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: cache global yarn cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ${{ steps.yarn-cache.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('yarn.lock') }}
+1
View File
@@ -130,6 +130,7 @@ site
# Local configuration files
*.local.yaml
!packages/create-app/templates/default-app/app-config.local.yaml
# Sensitive credentials
*-credentials.yaml
+16 -7
View File
@@ -26,7 +26,7 @@ _If you're using Backstage in your organization, please try to add your company
| [Acast.com](https://acast.com) | [Olle Lundberg](https://github.com/lndbrg) | Developer portal with tech docs, service catalog and a bunch of other internal tooling |
| [Lunar](https://lunar.app) | [Jacob Valdemar](https://github.com/JacobValdemar) | Internal developer portal for service overview and insights, API documentation, technical guides, onboarding guides and RFC's. |
| [Trendyol](https://trendyol.com) | [Gamze Senturk](https://github.com/gmzsenturk), [Mert Can Bilgic](https://github.com/mertcb) | The Developer Portal has been called `Pandora`. Provides an overview of Trendyol tech ecosystem. TechDocs, Catalog, Custom Plugins and Theme. |
| [Peloton](https://www.onepeloton.com/) | [Matt Waldron](https://github.com/daftgopher) | Creating our first developer portal and tech-docs. Exploring Service Catalog, Tech Insights and Cost Insights as well. |
| [Peloton](https://www.onepeloton.com/) | [Matt Waldron](https://github.com/daftgopher) | Creating our first developer portal and tech-docs. Exploring Service Catalog, Tech Insights and Cost Insights as well. |
| [TELUS](https://telus.com) | [Seb Barre](https://github.com/sbarre) | The Go-to place to find answers about development and delivery at TELUS. |
| [Brex](https://www.brex.com/) | [Vamsi Chitters](https://github.com/vamsikc) | A centralized UI to understand how a service fits in the whole Brex architecture and manage a teams engineering dependencies. |
| [Oriflame](https://www.oriflame.com/) | [Oriflame](https://github.com/oriflame) | Internal developer portal for services, single page apps and packages overview, API documentation, technical guides, tech-radar and more. |
@@ -34,7 +34,7 @@ _If you're using Backstage in your organization, please try to add your company
| [Netflix](https://www.netflix.com/) | [bleathem](https://github.com/bleathem) | Our Backstage implementation will be the front door to a unified experience connecting our internal platform products across important workflows with integrated knowledge and support. |
| [b.well](https://www.icanbwell.com/) | [Jacob Rosales](https://github.com/jrosales) | Foundation for our engineering portal and cloud insights. |
| [PagerDuty](https://www.pagerduty.com/) | [Mark Shaw](https://github.com/markshawtoronto) | Developer portal, initially focused on software templates and tech-docs. |
| [MoonShiner](https://moonshiner.at) | [Fabian Hippmann](https://github.com/FabianHippmann) | Developer portal - helps us keep track of our customer projects, onboard new developers & improve our development process 🌕🚀🧑‍🚀 |
| [MoonShiner](https://moonshiner.at) | [Fabian Hippmann](https://github.com/FabianHippmann) | Developer portal - helps us keep track of our customer projects, onboard new developers & improve our development process 🌕🚀🧑‍🚀 |
| [FundApps](https://www.fundapps.co/) | [Elliot Greenwood](https://github.com/egnwd) | Developer Portal - A place for us to keep track of our projects and documentation for all services and processes |
| [DAZN](https://dazn.com/) | [Lou Bichard](https://twitter.com/loujaybee), [Marco Crivellaro](https://github.com/crivetechie), [Alex Hollerith](mailto:alex.hollerith@dazn.com) | Ingesting all of DAZN's repos for the catalog, migrating our internal platform apps (pull request boards, release information, inner source marketplace etc) to Backstage plugins (where applicable). |
| [HelloFresh](https://www.hellofresh.de/) | [@iammuho](https://github.com/iammuho), [@ElenaForester](https://github.com/ElenaForester), [@diegomarangoni](https://github.com/diegomarangoni) | Our developer portal at HelloFresh - Spread across an organisation of 500+ engineers globally. |
@@ -113,8 +113,17 @@ _If you're using Backstage in your organization, please try to add your company
| [SIX](https://www.six-group.com/) | [@jbadeau](https://github.com/jbadeau), [@tomassatka](https://github.com/tomassatka) | Internal DevOps portal hosting our software and dataset catalog, as well as custom plugins for observability, service virtualization, deployments, incident managment and quality metrics. |
| [Raiffeisen Bank International](https://www.rbinternational.com/) | [Daniel Baumgartner](https://github.com/dabarbi) | From developers for developers: software catalog, techdocs and heavy use of scaffolder to drive reuse on engineering level forward. Part of inner source initiative. Multi national setup coming. |
| [Spread Group](https://www.spreadgroup.com/) | [Luna Stadler](https://github.com/heyLu), [Iván González](https://github.com/ivangonzalezacuna) | Internal Developer Portal, an overview of all running software, architecture documentation and more; replacing and unifying a variety of internal tools. |
| [RD Station](https://rdstation.com) | [Rogerio Angeliski](https://github.com/angeliski), [Paula Assis](https://github.com/paulassis), [Guilherme Eric](https://github.com/guilhermeeric), [Daniela Adamatti](https://github.com/daniadamatti), [Luana Negreiros](https://github.com/luananegreiros) | Developer portal, scaffolding, services catalog. We are looking to centralize automations and information for the whole engineering team . | |
| [Resuelve Tu Deuda](https://resuelve.mx)| [Iván Álvarez](https://github.com/ivanhoe), [Jorge Medina](https://github.com/jorgearma1982) | Internal developer portal, service catalog, tech docs, api doc
| [Pachama](https://pachama.com/) | [Aron Gates](https://github.com/agates4) | Internal Developer Portal, a catalog of all microservices, architecture documentation, and templates to generate developer resources. |
| [SEEK](https://www.seek.com.au) | [Jahred Hope](https://github.com/jahredhope) | Developer portal for developer tooling and technical documentation. |
| [Marks & Spencer](https://www.marksandspencer.com/) | [Kamal Cheriyath](https://github.com/kcheriyath) | Centralised discovery, adoption and devops automation hub for Engineering & Architecture. |
| [RD Station](https://rdstation.com) | [Rogerio Angeliski](https://github.com/angeliski), [Paula Assis](https://github.com/paulassis), [Guilherme Eric](https://github.com/guilhermeeric), [Daniela Adamatti](https://github.com/daniadamatti), [Luana Negreiros](https://github.com/luananegreiros) | Developer portal, scaffolding, services catalog. We are looking to centralize automations and information for the whole engineering team . |
| [Resuelve Tu Deuda](https://resuelve.mx) | [Iván Álvarez](https://github.com/ivanhoe), [Jorge Medina](https://github.com/jorgearma1982) | Internal developer portal, service catalog, tech docs, api doc |
| [Pachama](https://pachama.com/) | [Aron Gates](https://github.com/agates4) | Internal Developer Portal, a catalog of all microservices, architecture documentation, and templates to generate developer resources. |
| [SEEK](https://www.seek.com.au) | [Jahred Hope](https://github.com/jahredhope) | Developer portal for developer tooling and technical documentation. |
| [Marks & Spencer](https://www.marksandspencer.com/) | [Kamal Cheriyath](https://github.com/kcheriyath) | Centralised discovery, adoption and devops automation hub for Engineering & Architecture. |
| [McKesson](https://www.mckesson.com/) | [Agnel Antony](https://github.com/aantony2) | Internal Developer Platform for developer gated CI/CD templates, technical documentation, cloud automation service catalog, etc. |
| [World Fuel Services](https://www.wfscorp.com/) | [Anirudh Kurapathi](https://github.com/anirudhkurapati), [Alex Kwon](https://github.com/alexkwon), [Lester Hernandez](https://github.com/lhernandez-wfscorp), [Avi Boru](https://github.com/aviboru), [Vardhan Annapureddy](https://github.com/harshaaws) | Internal Developer Portal, service catalog product, API's, Software Templates, tech docs and more. |
| [leboncoin](https://www.leboncoin.fr/) | [Andy Ladjadj](https://github.com/aladjadj) | Centralize our multiple UI in a single portal. Simplify onbording, new features and harmonize how people search information. Core features (catalog,api,docs,scafolder) are good to start the adoption. status: internal beta. |
| [Contentful](https://www.contentful.com) | [James Bourne](https://github.com/jamesmbourne) | Centralized documentation of service ownership, APIs, and documentation, and new service creation with a custom scaffolder - [full case study with Roadie](https://roadie.io/case-studies/maintaining-velocity-through-hypergrowth-contentful/). |
| [Back Market](https://www.backmarket.com) | [Sami Farhat](https://github.com/skfarhat) | Internal Developer Portal featuring catalog, tech-radar, ownership management, component creation (scaffolder) and centralized infrastructure management -- probably more to come. |
| [Avalia Systems](https://avalia.io) | [Olivier Liechti](https://github.com/wasadigi), [Fabio Velloso](https://github.com/fabiovelloso) | Innersource, software analytics, knowledge base for 360 software assessments, collaborative applications, hub for tracking and sharing IP assets. |
| [Albert Heijn](https://ah.technology) | [Joost Hofman](https://github.com/joosthofman), [Reindrich Geerman](https://github.com/reinst) | Single point of entry for all our engineers (Developer portal), Tech radar, catalog, templates (paved roads) and tech documentation. |
| [Wise, formerly TransferWise](https://wise.com) | [Andrew Beveridge](https://github.com/beveradb) | It's early days for us, we're trying to start small with catalog, tech docs and unified search. Future ambitious vision includes scaffolder for one-click component addition, building out integrations with CI/CD tooling, kubernetes clusters, monitoring/alerting tooling etc. and aiming for a frictionless "golden path" for engineers! 🚀 |
+2 -2
View File
@@ -16,7 +16,7 @@ No one likes bugs. Report bugs as an issue [here](https://github.com/backstage/b
### Fix bugs or build new features
Look through the GitHub issues for [bugs](https://github.com/backstage/backstage/labels/bugs), [good first issues](https://github.com/backstage/backstage/labels/good%20first%20issue) or [help wanted](https://github.com/backstage/backstage/labels/help%20wanted).
Look through the GitHub issues for [bugs](https://github.com/backstage/backstage/labels/bug), [good first issues](https://github.com/backstage/backstage/labels/good%20first%20issue) or [help wanted](https://github.com/backstage/backstage/labels/help%20wanted).
### Build a plugin
@@ -78,7 +78,7 @@ If you're contributing to the backend or CLI tooling, be mindful of cross-platfo
Also be sure to skim through our [ADRs](docs/architecture-decisions) to see if they cover what you're working on. In particular [ADR006: Avoid React.FC and React.SFC](docs/architecture-decisions/adr006-avoid-react-fc.md) is one to look out for.
If there are any updates in `markdown` file please make sure to run `yarn run lint:docs`. Though it is checked on `lint-staged`. It is required to install [vale](https://docs.errata.ai/vale/install) `1.4.0` separately and make sure it is accessed by global command.
If there are any updates in `markdown` file please make sure to run `yarn run lint:docs`. Though it is checked on `lint-staged`. It is required to install [vale](https://docs.errata.ai/vale/install) separately and make sure it is accessed by global command.
## Developer Certificate of Origin
+1 -1
View File
@@ -146,7 +146,7 @@ There are a few things to pay attention to, in order to make the documentation s
API documenter will not recognize arrow functions as functions, but rather as a constant that shows up in the list of exported variables. By declaring functions using the `function` keyword, they will show up in the list of functions. They will also get a much nicer documentation page for the individual function that shows information about parameters and return types.
This also extends to React components, since API documenter doesn't have any special handling of those. By always defining exported React components using the `function` keyword, we make them show up among the list of functions in the API reference, where they are then easily discoverable through the `(props)` args (which you should be sure to include!).
This also extends to React components, since API documenter doesn't have any special handling of those. By always defining exported React components using the `function` keyword, we make them show up among the list of functions in the API reference, where they are then easily discoverable through the `(props)` argument (which you should be sure to include!).
![image](https://user-images.githubusercontent.com/4984472/133120461-59d74c3e-ebd9-44f9-900d-cc30f54a3cd2.png)
+10 -20
View File
@@ -203,8 +203,6 @@ catalog:
- Component
- API
- Resource
- Group
- User
- Template
- System
- Domain
@@ -243,7 +241,7 @@ catalog:
# Add a location here to ingest it, for example from a URL:
#
# - type: url
# target: https://github.com/backstage/backstage/blob/master/packages/catalog-model/examples/all-components.yaml
# target: https://github.com/backstage/backstage/blob/master/packages/catalog-model/examples/all.yaml
#
# For local development you can use a file location instead:
#
@@ -253,33 +251,23 @@ catalog:
# File locations are relative to the current working directory of the
# backend, for example packages/backend/.
# Backstage example components
# Backstage example entities
- type: file
target: ../catalog-model/examples/all-components.yaml
target: ../catalog-model/examples/all.yaml
# Backstage example groups and users
- type: file
target: ../catalog-model/examples/acme-corp.yaml
rules:
- allow: [User, Group]
# Example component for github-actions and TechDocs
- type: file
target: ../../plugins/github-actions/examples/sample.yaml
# Example component for TechDocs
- type: file
target: ../../plugins/techdocs-backend/examples/documented-component/catalog-info.yaml
# Backstage example APIs
- type: file
target: ../catalog-model/examples/all-apis.yaml
# Backstage example resources
- type: file
target: ../catalog-model/examples/all-resources.yaml
# Backstage example systems
- type: file
target: ../catalog-model/examples/all-systems.yaml
# Backstage example domains
- type: file
target: ../catalog-model/examples/all-domains.yaml
# Backstage example templates
- type: file
target: ../../plugins/scaffolder-backend/sample-templates/all-templates.yaml
# Backstage example groups and users
- type: file
target: ../catalog-model/examples/acme-corp.yaml
# Backstage end-to-end tests of TechDocs
- type: file
target: ../../cypress/e2e-fixture.catalog.info.yaml
@@ -378,6 +366,8 @@ auth:
clientId: ${AUTH_ATLASSIAN_CLIENT_ID}
clientSecret: ${AUTH_ATLASSIAN_CLIENT_SECRET}
scopes: ${AUTH_ATLASSIAN_SCOPES}
myproxy:
development: {}
costInsights:
engineerCost: 200000
products:
+3 -3
View File
@@ -1,6 +1,6 @@
dependencies:
- name: postgresql
repository: https://charts.bitnami.com/bitnami
version: 9.8.12
digest: sha256:549b9a0cdf7b2e0ad949ebad853a467bf320928970a946fb0ef7e13e9bdb7a10
generated: "2022-04-21T07:02:48.301491565Z"
version: 11.1.28
digest: sha256:91deeef78a140252c1ec9fbdf011e5584fc26b67f5a5dc9b6c90be2eee838499
generated: "2022-05-06T14:02:33.227808666Z"
+1 -1
View File
@@ -18,7 +18,7 @@ sources:
dependencies:
- name: postgresql
condition: postgresql.enabled
version: 9.8.12
version: 11.1.28
repository: https://charts.bitnami.com/bitnami
maintainers:
@@ -64,8 +64,8 @@ if (process.env.HTTPS_PROXY) {
If your development environment is in the cloud (like with [AWS Cloud9](https://aws.amazon.com/cloud9/) or an instance of [Theia](https://theia-ide.org/)), you will need to update your configuration.
You will probably need to make some changes in `app-config.yaml` (or another config file like `app-config.local.yaml` if you've created it, see the [configuration doc](https://backstage.io/docs/conf/#supplying-configuration)).
The exact values will depend on your setup but for instance, if your public url is `https://your-public-url.com` and the port `3000` and `8080` are open:
You will probably need to make some changes in `app-config.yaml` (or another config file like `app-config.local.yaml` if you've created it, see the [configuration doc](https://backstage.io/docs/conf/#supplying-configuration)).
The exact values will depend on your setup but for instance, if your public URL is `https://your-public-url.com` and the port `3000` and `8080` are open:
```yaml
app:
+11
View File
@@ -18,6 +18,17 @@ yarn install
yarn cypress run
```
Note that the tests expect to run against a built application, so you'll want to
run a Docker image and either create an `app-config.cypress.yaml` or pass the
necessary environment variables:
```sh
yarn tsc
yarn build
yarn workspace example-backend build-image
docker run -p 7007:7007 example-backend
```
You can open up the `cypress` console by using `yarn cypress open`.
You can also run towards any Backstage installation by using the Cypress Environment Variable overrides.
@@ -25,5 +25,62 @@ describe('Catalog', () => {
cy.contains('Owned (10)').should('be.visible');
});
it('Should navigate to a docs tab', () => {
cy.loginAsGuest();
cy.visit('/catalog');
cy.contains('techdocs-e2e-fixture').click();
cy.location().should(loc => {
expect(loc.pathname).to.eq(
'/catalog/default/component/techdocs-e2e-fixture',
);
});
cy.getCatalogDocsTab().click();
cy.getTechDocsShadowRoot()
.find('h1')
.contains('Home page')
.should('be.visible');
});
it('Should navigate to a sub-route in docs tab', () => {
cy.loginAsGuest();
cy.visit('/catalog');
cy.contains('techdocs-e2e-fixture').click();
cy.location().should(loc => {
expect(loc.pathname).to.eq(
'/catalog/default/component/techdocs-e2e-fixture',
);
});
cy.getCatalogDocsTab().click();
cy.getTechDocsShadowRoot()
.find('h1')
.contains('Home page')
.should('be.visible');
cy.getTechDocsShadowRoot().within(() => {
cy.getTechDocsNavigation().find('a').contains('Sub-page 1').click();
});
cy.location().should(loc => {
expect(loc.pathname).to.eq(
'/catalog/default/component/techdocs-e2e-fixture/docs/sub-page-one/',
);
});
cy.getTechDocsShadowRoot()
.find('h1')
.contains('Sub-page 1')
.should('be.visible');
});
});
});

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