Merge branch 'backstage:master' into master

This commit is contained in:
Hasan Ozdemir
2022-07-05 16:11:24 +02:00
committed by GitHub
292 changed files with 5254 additions and 1589 deletions
+91
View File
@@ -0,0 +1,91 @@
---
'@backstage/plugin-catalog-backend-module-msgraph': minor
---
Align `msgraph` plugin's entity provider config with other providers. **Deprecated** entity processor as well as previous config.
You will see warning at the log output until you migrate to the new setup.
All deprecated parts will be removed eventually after giving some time to migrate.
Please find information on how to migrate your current setup to the new one below.
**Migration Guide:**
There were two different way on how to use the msgraph plugin: processor or provider.
Previous registration for the processor:
```typescript
// packages/backend/src/plugins/catalog.ts
builder.addProcessor(
MicrosoftGraphOrgReaderProcessor.fromConfig(env.config, {
logger: env.logger,
// [...]
}),
);
```
Previous registration when using the provider:
```typescript
// packages/backend/src/plugins/catalog.ts
builder.addEntityProvider(
MicrosoftGraphOrgEntityProvider.fromConfig(env.config, {
id: 'https://graph.microsoft.com/v1.0',
target: 'https://graph.microsoft.com/v1.0',
logger: env.logger,
schedule: env.scheduler.createScheduledTaskRunner({
frequency: { minutes: 30 },
timeout: { minutes: 3 },
}),
// [...]
}),
);
```
Previous configuration as used for both:
```yaml
# app-config.yaml
catalog:
processors:
microsoftGraphOrg:
providers:
- target: https://graph.microsoft.com/v1.0
# [...]
```
**Replacement:**
Please check https://github.com/backstage/backstage/blob/master/plugins/catalog-backend-module-msgraph/README.md for the complete documentation of all configuration options (config as well as registration of the provider).
```yaml
# app-config.yaml
catalog:
providers:
microsoftGraphOrg:
# In case you used the deprecated configuration with the entity provider
# using the value of `target` will keep the same location key for all
providerId: # some stable ID which will be used as part of the location key for all ingested data
target: https://graph.microsoft.com/v1.0
# [...]
```
```typescript
// packages/backend/src/plugins/catalog.ts
builder.addEntityProvider(
MicrosoftGraphOrgEntityProvider.fromConfig(env.config, {
logger: env.logger,
schedule: env.scheduler.createScheduledTaskRunner({
frequency: { minutes: 30 },
timeout: { minutes: 3 },
}),
// [...]
}),
);
```
In case you've used multiple entity providers before
**and** you had different transformers for each of them
you can provide these directly at the one `fromConfig` call
by passing a Record with the provider ID as key.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/core-components': patch
---
Fix relative `sub-paths` by concatenating the app's base path with them.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-auth-backend': patch
---
Auth provider now also export createAuthProviderIntegration
+34 -2
View File
@@ -158,50 +158,76 @@
"@backstage/plugin-vault-backend": "0.1.0",
"@backstage/plugin-xcmetrics": "0.2.26",
"@backstage/plugin-api-docs-module-protoc-gen-doc": "0.0.0",
"@backstage/plugin-catalog-backend-module-openapi": "0.0.0"
"@backstage/plugin-catalog-backend-module-openapi": "0.0.0",
"@backstage/plugin-cost-insights-common": "0.0.0"
},
"changesets": [
"afraid-flies-try",
"beige-horses-scream",
"blue-monkeys-explain",
"breezy-poems-grab",
"breezy-seas-exist",
"bright-balloons-hide",
"calm-experts-buy",
"chilled-mirrors-grab",
"cool-toys-flow",
"create-app-1656408352",
"curly-candles-battle",
"curvy-weeks-matter",
"eight-suits-fail",
"eighty-windows-brush",
"eleven-mice-collect",
"five-fireants-run",
"forty-seals-complain",
"great-roses-pump",
"green-actors-argue",
"happy-boxes-melt",
"hot-rice-sin",
"large-kangaroos-poke",
"lemon-goats-obey",
"light-hornets-eat",
"long-bananas-rescue",
"many-vans-thank",
"metal-singers-matter",
"metal-windows-share",
"modern-ducks-lay",
"moody-crabs-march",
"nasty-zoos-cross",
"nervous-humans-sip",
"old-onions-hear",
"plenty-clouds-guess",
"polite-eagles-invite",
"polite-lions-sell",
"popular-pots-yell",
"pretty-masks-live",
"proud-toys-return",
"purple-beans-march",
"quiet-pens-notice",
"red-games-decide",
"renovate-149779d",
"renovate-2ae4dda",
"renovate-4b5ff24",
"renovate-7438bff",
"renovate-833a91b",
"renovate-9454dab",
"rude-llamas-lie",
"search-boats-double",
"search-lightning-cult",
"search-turtles-itch",
"serious-houses-watch",
"serious-zebras-joke",
"shaggy-melons-drive",
"sharp-numbers-taste",
"sharp-planes-turn",
"shiny-seahorses-do",
"shiny-turkeys-doubt",
"short-deers-remember",
"short-olives-train",
"shy-cameras-develop",
"silent-coats-brake",
"silly-geese-design",
"silver-needles-unite",
"smart-elephants-knock",
"smooth-sheep-hide",
"strange-tables-flash",
"strange-trains-collect",
@@ -211,14 +237,20 @@
"techdocs-eyes-sit",
"techdocs-gorgeous-plants-sniff",
"techdocs-sheep-talk",
"techdocs-sixty-mugs-hug",
"techdocs-the-whole-pulse",
"thick-cats-kiss",
"thick-radios-drive",
"thirty-rivers-watch",
"tricky-ravens-visit",
"twelve-candles-jump",
"two-crews-accept",
"unlucky-stingrays-juggle",
"weak-bananas-deliver",
"weak-jeans-cry",
"weak-llamas-repeat",
"wet-dolphins-act",
"wicked-icons-grin"
"wicked-icons-grin",
"wicked-ladybugs-argue"
]
}
+103
View File
@@ -0,0 +1,103 @@
---
'@backstage/backend-common': patch
'@backstage/backend-test-utils': patch
'@backstage/catalog-client': patch
'@backstage/cli': patch
'@backstage/config-loader': patch
'@backstage/core-app-api': patch
'@backstage/core-components': patch
'@backstage/core-plugin-api': patch
'@backstage/integration-react': patch
'@backstage/integration': patch
'@backstage/release-manifests': patch
'@backstage/test-utils': patch
'@backstage/plugin-adr-backend': patch
'@backstage/plugin-adr': patch
'@backstage/plugin-airbrake-backend': patch
'@backstage/plugin-airbrake': patch
'@backstage/plugin-allure': patch
'@backstage/plugin-analytics-module-ga': patch
'@backstage/plugin-apache-airflow': patch
'@backstage/plugin-api-docs': patch
'@backstage/plugin-app-backend': patch
'@backstage/plugin-auth-backend': patch
'@backstage/plugin-auth-node': patch
'@backstage/plugin-azure-devops-backend': patch
'@backstage/plugin-azure-devops': patch
'@backstage/plugin-badges': patch
'@backstage/plugin-bitbucket-cloud-common': patch
'@backstage/plugin-bitrise': patch
'@backstage/plugin-catalog-backend-module-azure': patch
'@backstage/plugin-catalog-backend-module-bitbucket-cloud': patch
'@backstage/plugin-catalog-backend-module-bitbucket': patch
'@backstage/plugin-catalog-backend-module-gerrit': patch
'@backstage/plugin-catalog-backend-module-github': patch
'@backstage/plugin-catalog-backend-module-gitlab': patch
'@backstage/plugin-catalog-backend-module-msgraph': patch
'@backstage/plugin-catalog-backend': patch
'@backstage/plugin-catalog-graphql': patch
'@backstage/plugin-catalog-import': patch
'@backstage/plugin-circleci': patch
'@backstage/plugin-cloudbuild': patch
'@backstage/plugin-code-climate': patch
'@backstage/plugin-code-coverage-backend': patch
'@backstage/plugin-code-coverage': patch
'@backstage/plugin-codescene': patch
'@backstage/plugin-config-schema': patch
'@backstage/plugin-cost-insights': patch
'@backstage/plugin-dynatrace': patch
'@backstage/plugin-explore-react': patch
'@backstage/plugin-explore': patch
'@backstage/plugin-firehydrant': patch
'@backstage/plugin-fossa': patch
'@backstage/plugin-gcalendar': patch
'@backstage/plugin-gcp-projects': patch
'@backstage/plugin-git-release-manager': patch
'@backstage/plugin-github-actions': patch
'@backstage/plugin-github-deployments': patch
'@backstage/plugin-github-pull-requests-board': patch
'@backstage/plugin-gitops-profiles': patch
'@backstage/plugin-gocd': patch
'@backstage/plugin-graphiql': patch
'@backstage/plugin-graphql-backend': patch
'@backstage/plugin-home': patch
'@backstage/plugin-ilert': patch
'@backstage/plugin-jenkins-backend': patch
'@backstage/plugin-jenkins': patch
'@backstage/plugin-kafka': patch
'@backstage/plugin-kubernetes': patch
'@backstage/plugin-lighthouse': patch
'@backstage/plugin-newrelic': patch
'@backstage/plugin-org': patch
'@backstage/plugin-pagerduty': patch
'@backstage/plugin-periskop-backend': patch
'@backstage/plugin-periskop': patch
'@backstage/plugin-permission-backend': patch
'@backstage/plugin-permission-common': patch
'@backstage/plugin-permission-node': patch
'@backstage/plugin-rollbar-backend': patch
'@backstage/plugin-rollbar': patch
'@backstage/plugin-scaffolder-backend-module-cookiecutter': patch
'@backstage/plugin-scaffolder-backend': patch
'@backstage/plugin-scaffolder': patch
'@backstage/plugin-search': patch
'@backstage/plugin-sentry': patch
'@backstage/plugin-shortcuts': patch
'@backstage/plugin-sonarqube': patch
'@backstage/plugin-splunk-on-call': patch
'@backstage/plugin-stack-overflow': patch
'@backstage/plugin-tech-insights': patch
'@backstage/plugin-tech-radar': patch
'@backstage/plugin-techdocs-addons-test-utils': patch
'@backstage/plugin-techdocs-backend': patch
'@backstage/plugin-techdocs-module-addons-contrib': patch
'@backstage/plugin-techdocs': patch
'@backstage/plugin-todo-backend': patch
'@backstage/plugin-todo': patch
'@backstage/plugin-user-settings': patch
'@backstage/plugin-vault-backend': patch
'@backstage/plugin-vault': patch
'@backstage/plugin-xcmetrics': patch
---
Updated dependency `msw` to `^0.43.0`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend-module-openapi': patch
---
Updated dependency `openapi-types` to `^12.0.0`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-api-docs': patch
---
Updated dependency `@asyncapi/react-component` to `1.0.0-next.39`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-badges-backend': patch
---
Add missing installation instructions
+21
View File
@@ -0,0 +1,21 @@
---
'@backstage/backend-common': patch
'@backstage/integration': patch
'@backstage/plugin-adr': patch
'@backstage/plugin-catalog-backend': patch
'@backstage/plugin-catalog-import': patch
'@backstage/plugin-scaffolder': patch
'@backstage/plugin-scaffolder-backend': patch
'@backstage/plugin-techdocs': patch
'@backstage/plugin-techdocs-module-addons-contrib': patch
'@backstage/plugin-techdocs-node': patch
---
Upgrade git-url-parse to 12.0.0.
Motivation for upgrade is transitively upgrading parse-url which is vulnerable
to several CVEs detected by Snyk.
- SNYK-JS-PARSEURL-2935944
- SNYK-JS-PARSEURL-2935947
- SNYK-JS-PARSEURL-2936249
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-search-backend-node': patch
---
Exports `MissingIndexError` that can be used by the search engines for better error handling when missing index.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-search-backend': patch
---
If error is `MissingIndexError` we return a 400 response with a more clear error message.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/integration': patch
---
Avoid double encoding of the file path in `getBitbucketServerDownloadUrl`
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-search-backend-module-elasticsearch': patch
---
Throws `MissingIndexError` when no index of type exist.
@@ -1,31 +0,0 @@
# on a review from someone in the reviewers group, remove the awaiting-review label and add the awaiting-author label
name: Automate review labels - scheduled
on:
schedule:
- cron: '* * * * *'
jobs:
label:
runs-on: ubuntu-latest
steps:
- name: Get Token
id: get_workflow_token
uses: peter-murray/workflow-application-token-action@v1
with:
application_id: ${{ secrets.BACKSTAGE_GOALIE_APPLICATION_ID }}
application_private_key: ${{ secrets.BACKSTAGE_GOALIE_PRIVATE_KEY }}
organization: backstage
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 14
- run: npm install codeowners
- uses: actions/github-script@v6
id: fix-labels
with:
github-token: ${{ steps.get_workflow_token.outputs.token }}
script: |
const script = require('./scripts/goalie-labels.js')
await script({github, context, core})
@@ -1,84 +0,0 @@
# When the target of the PR changes, open, re-open or sync, then re-add the label.
name: Automate review labels
on:
pull_request_target:
types:
- opened
- closed
- synchronize
permissions:
issues: write
pull-requests: write
jobs:
label:
runs-on: ubuntu-latest
steps:
# 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 }}
script: |
if (['opened', 'synchronize'].includes('${{ github.event.action }}')) {
// if it's the author, always add awaiting-review label
const isAuthor = context.payload.pull_request.user.login === context.actor
if (isAuthor) {
await github.rest.issues.addLabels({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
labels: ['awaiting-review']
});
}
}
if ('${{ github.event.action}}' === 'closed') {
await github.rest.issues.removeLabel({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
labels: 'awaiting-review'
}).catch((e) => {
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
})
+1 -1
View File
@@ -25,6 +25,6 @@ jobs:
If you are the author and the PR has been closed, feel free to re-open the PR and continue the contribution!
days-before-pr-stale: 7
days-before-pr-close: 5
exempt-pr-labels: reviewer-approved,awaiting-review,will-fix
exempt-pr-labels: reviewer-approved,will-fix
stale-pr-label: stale
operations-per-run: 100
+108 -40
View File
@@ -9,9 +9,116 @@ concurrency:
cancel-in-progress: true
jobs:
# This step only runs yarn install to make sure that an exact match is available
# in the cache. The two following verify and tests jobs then always install from cache.
install:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [14.x, 16.x]
env:
CI: true
NODE_OPTIONS: --max-old-space-size=4096
steps:
- uses: actions/checkout@v3
- name: use node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.0
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
# The verify jobs runs all the verification that doesn't require a
# diff towards master, since it takes some time to fetch that.
verify:
runs-on: ubuntu-latest
needs: install
strategy:
matrix:
node-version: [14.x, 16.x]
env:
CI: true
NODE_OPTIONS: --max-old-space-size=4096
steps:
- uses: actions/checkout@v3
- name: use node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.5.0
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
- name: verify changesets
run: node scripts/verify-changesets.js
- name: verify local dependency ranges
run: node scripts/verify-local-dependencies.js
- name: validate config
run: yarn backstage-cli config:check --lax
- name: type checking and declarations
run: yarn tsc:full
- name: prettier
run: yarn prettier:check
# We need to generate the API references as well, so that we can verify the doc links
- name: check api reports and generate API reference
run: yarn build:api-reports:only --ci --docs
- name: verify api reference
run: node scripts/verify-api-reference.js
- name: verify doc links
run: node scripts/verify-links.js
- name: build all packages
run: yarn backstage-cli repo build --all
- name: verify type dependencies
run: yarn lint:type-deps
- name: verify plugin template
run: yarn lerna -- run diff -- --check
- name: ensure clean working directory
run: |
if files=$(git ls-files --exclude-standard --others --modified) && [[ -z "$files" ]]; then
exit 0
else
echo ""
echo "Working directory has been modified:"
echo ""
git status --short
echo ""
exit 1
fi
# The test job runs all tests as well as any verification step that
# requires a diff towards master.
test:
runs-on: ubuntu-latest
needs: install
strategy:
matrix:
node-version: [14.x, 16.x]
@@ -71,7 +178,7 @@ jobs:
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.2.2
uses: backstage/actions/yarn-install@v0.5.0
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
@@ -80,48 +187,12 @@ jobs:
run: git diff --quiet origin/master HEAD -- yarn.lock
continue-on-error: true
- name: prettier
run: yarn prettier:check
- name: lock
run: yarn lock:check
- name: validate config
run: yarn backstage-cli config:check --lax
- name: lint
run: yarn backstage-cli repo lint --since origin/master
- name: type checking and declarations
run: yarn tsc:full
# We need to generate the API references as well, so that we can verify the doc links
- name: check api reports and generate API reference
run: yarn build:api-reports:only --ci --docs
- name: verify api reference
run: node scripts/verify-api-reference.js
- name: verify changesets
run: node scripts/verify-changesets.js
- name: verify doc links
run: node scripts/verify-links.js
- name: verify local dependency ranges
run: node scripts/verify-local-dependencies.js
- name: build changed packages
if: ${{ steps.yarn-lock.outcome == 'success' }}
run: yarn backstage-cli repo build --all --since origin/master
- name: build all packages
if: ${{ steps.yarn-lock.outcome == 'failure' }}
run: yarn backstage-cli repo build --all
- name: verify type dependencies
run: yarn lint:type-deps
- name: test changed packages
if: ${{ steps.yarn-lock.outcome == 'success' }}
run: yarn lerna -- run test --since origin/master -- --coverage --runInBand
@@ -144,9 +215,6 @@ jobs:
BACKSTAGE_TEST_DATABASE_POSTGRES9_CONNECTION_STRING: postgresql://postgres:postgres@localhost:${{ job.services.postgres9.ports[5432] }}
BACKSTAGE_TEST_DATABASE_MYSQL8_CONNECTION_STRING: mysql://root:root@localhost:${{ job.services.mysql8.ports[3306] }}/ignored
- name: verify plugin template
run: yarn lerna -- run diff -- --check
- name: ensure clean working directory
run: |
if files=$(git ls-files --exclude-standard --others --modified) && [[ -z "$files" ]]; then
+1 -1
View File
@@ -8,7 +8,7 @@ jobs:
cron:
runs-on: ubuntu-latest
steps:
- uses: backstage/actions/cron@v0.2.2
- uses: backstage/actions/cron@v0.5.0
with:
app-id: ${{ secrets.BACKSTAGE_GOALIE_APPLICATION_ID }}
private-key: ${{ secrets.BACKSTAGE_GOALIE_PRIVATE_KEY }}
+1 -1
View File
@@ -26,7 +26,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.2.2
uses: backstage/actions/yarn-install@v0.5.0
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
+2 -2
View File
@@ -67,7 +67,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.2.2
uses: backstage/actions/yarn-install@v0.5.0
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
@@ -145,7 +145,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.2.2
uses: backstage/actions/yarn-install@v0.5.0
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
+1 -1
View File
@@ -10,4 +10,4 @@ jobs:
if: github.repository == 'backstage/backstage'
steps:
- name: Issue sync
uses: backstage/actions/issue-sync@v0.2.2
uses: backstage/actions/issue-sync@v0.5.0
+21 -3
View File
@@ -1,14 +1,32 @@
name: PR
on:
pull_request_target:
types:
- opened
- synchronize
- reopened
- closed
issue_comment:
types:
- created
pull_request_review_comment:
types:
- created
jobs:
sync:
runs-on: ubuntu-latest
if: github.repository == 'backstage/backstage'
# Avoid running on issue comments
if: github.repository == 'backstage/backstage' && ( github.event.pull_request || github.event.issue.pull_request )
steps:
- name: PR sync
uses: backstage/actions/pr-sync@v0.2.2
uses: backstage/actions/pr-sync@v0.5.0
with:
github-token: ${{ secrets.GH_SERVICE_ACCOUNT_TOKEN }}
github-token: ${{ secrets.GH_SERVICE_ACCOUNT_TOKEN }}
app-id: ${{ secrets.BACKSTAGE_GOALIE_APPLICATION_ID }}
private-key: ${{ secrets.BACKSTAGE_GOALIE_PRIVATE_KEY }}
installation-id: ${{ secrets.BACKSTAGE_GOALIE_INSTALLATION_ID }}
project-id: PVT_kwDOBFKqdc02LQ
excluded-users: ${{ secrets.OOO_USERS }}
owning-teams: '@backstage/techdocs'
+1 -1
View File
@@ -20,7 +20,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.2.2
uses: backstage/actions/yarn-install@v0.5.0
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
@@ -22,7 +22,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.2.2
uses: backstage/actions/yarn-install@v0.5.0
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
+1 -1
View File
@@ -46,7 +46,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.2.2
uses: backstage/actions/yarn-install@v0.5.0
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
+1 -1
View File
@@ -35,7 +35,7 @@ jobs:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/ # Needed for auth
- name: yarn install
uses: backstage/actions/yarn-install@v0.2.2
uses: backstage/actions/yarn-install@v0.5.0
with:
cache-prefix: ${{ runner.os }}-v${{ matrix.node-version }}
- name: storybook yarn install
+1 -1
View File
@@ -178,7 +178,7 @@ _You can do this by using the [Adopter form](https://form.typeform.com/to/zcOaKi
| [idwall](https://idwall.co) | [Rodrigo Catão Araujo](mailto:rodrigo@idwall.co) | Developer Portal for internal engineers to access service catalog, documentation, observability, infrastructure and internal tooling. |
| [Jaguar Land Rover](https://www.jaguarlandrover.com) | [Josh Walker](mailto:jwalke18@jaguarlandrover.com) | Users can request a Gitlab user, which creates a commit with the Terraform code. |
| [Glovo](http://glovoapp.com/) | [Yaser Toutah](mailto:yaser.toutah@glovoapp.com) | Developer Portal to improve our Developer Experience, identify ownership and track metadata for our services and tools. It's our Service Catalog. In addition to that, we use it for Service Creation, and much more. |
| [Dixa](https://dixa.com) | [Jens Møller](mailto:jsc@dixa.com) | We are in early stages, but using it to get overview of our repositories and ownership of these. We want among many things to use it for compliance and easier access to key metrics for our repos. |
| [Dixa](https://dixa.com) | [Jens Møller](https://github.com/jensamoller) | We are in early stages, but using it to get overview of our repositories and ownership of these. We want among many things to use it for compliance and easier access to key metrics for our repos. |
| [Notino](https://notino.com) | [Jan Remunda](mailto:jan.remunda@notino.com) | Backstage is our developer portal. We use it as service catalog and for technical documentation. |
| [Polarpoint](https://polarpoint.io/) | [Surj Bains](https://github.com/polarpoint-io) | We are using Backstage as our Developer portal as well as for hosting our DevOps portal for software catalog. |
| [Niche](https://niche.com) | [Zach Romitz](mailto:zach.romitz@niche.com) | We are using the Software Catalog, Software Templates, API documentation, and Techdocs to try and centralize service information. |
-10
View File
@@ -234,16 +234,6 @@ catalog:
# dn: ou=access,ou=groups,ou=example,dc=example,dc=net
# options:
# filter: (&(objectClass=some-group-class)(!(groupType=email)))
microsoftGraphOrg:
### Example for how to add your Microsoft Graph tenant
#providers:
# - target: https://graph.microsoft.com/v1.0
# authority: https://login.microsoftonline.com
# tenantId: ${MICROSOFT_GRAPH_TENANT_ID}
# clientId: ${MICROSOFT_GRAPH_CLIENT_ID}
# clientSecret: ${MICROSOFT_GRAPH_CLIENT_SECRET_TOKEN}
# userFilter: accountEnabled eq true and userType eq 'member'
# groupFilter: securityEnabled eq false and mailEnabled eq true and groupTypes/any(c:c+eq+'Unified')
locations:
# Add a location here to ingest it, for example from a URL:
@@ -160,12 +160,12 @@ Create a new `plugins/todo-list-backend/src/conditionExports.ts` file and add th
```typescript
import { TODO_LIST_RESOURCE_TYPE } from '@internal/plugin-todo-list-common';
import { createConditionExports } from '@backstage/plugin-permission-node';
import { permissionRules } from './service/rules';
import { rules } from './service/rules';
const { conditions, createConditionalDecision } = createConditionExports({
pluginId: 'catalog',
resourceType: RESOURCE_TYPE_CATALOG_ENTITY,
rules: permissionRules,
pluginId: 'todolist',
resourceType: TODO_LIST_RESOURCE_TYPE,
rules,
});
export const todoListConditions = conditions;
@@ -173,7 +173,12 @@ export const todoListConditions = conditions;
export const createTodoListConditionalDecision = createConditionalDecision;
```
Make sure `todoListConditions` and `createTodoListConditionalDecision` are exported from the `todo-list-backend` package.
Make sure `todoListConditions` and `createTodoListConditionalDecision` are exported from the `todo-list-backend` package by editing `plugins/todo-list-backend/src/index.ts`:
```diff
export * from './service/router';
+ export * from './conditionExports';
```
## Test the authorized update endpoint
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -49,7 +49,7 @@
"@types/react": "^17",
"@types/react-dom": "^17"
},
"version": "1.4.0-next.1",
"version": "1.4.0-next.2",
"dependencies": {
"@manypkg/get-packages": "^1.1.3",
"@microsoft/api-documenter": "^7.17.11",
+8
View File
@@ -1,5 +1,13 @@
# @backstage/app-defaults
## 1.0.4-next.2
### Patch Changes
- Updated dependencies
- @backstage/core-components@0.10.0-next.2
- @backstage/theme@0.2.16-next.1
## 1.0.4-next.1
### Patch Changes
+4 -4
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/app-defaults",
"description": "Provides the default wiring of a Backstage App",
"version": "1.0.4-next.1",
"version": "1.0.4-next.2",
"private": false,
"publishConfig": {
"access": "public",
@@ -33,11 +33,11 @@
"start": "backstage-cli package start"
},
"dependencies": {
"@backstage/core-components": "^0.9.6-next.1",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-app-api": "^1.0.4-next.0",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/plugin-permission-react": "^0.4.3-next.0",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/theme": "^0.2.16-next.1",
"@material-ui/core": "^4.12.2",
"@material-ui/icons": "^4.9.1",
"react-router-dom": "6.0.0-beta.0"
@@ -46,7 +46,7 @@
"react": "^16.13.1 || ^17.0.0"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@testing-library/jest-dom": "^5.10.1",
"@testing-library/react": "^12.1.3",
+55
View File
@@ -1,5 +1,60 @@
# example-app
## 0.2.73-next.2
### Patch Changes
- Updated dependencies
- @backstage/plugin-cost-insights@0.11.29-next.2
- @backstage/core-components@0.10.0-next.2
- @backstage/plugin-scaffolder@1.4.0-next.2
- @backstage/plugin-jenkins@0.7.6-next.2
- @backstage/catalog-model@1.1.0-next.2
- @backstage/plugin-search-react@0.2.2-next.2
- @backstage/theme@0.2.16-next.1
- @backstage/plugin-catalog-import@0.8.10-next.2
- @backstage/plugin-techdocs@1.2.1-next.2
- @backstage/plugin-techdocs-module-addons-contrib@1.0.2-next.2
- @backstage/plugin-api-docs@0.8.7-next.2
- @backstage/plugin-catalog@1.4.0-next.2
- @backstage/cli@0.18.0-next.2
- @backstage/plugin-catalog-react@1.1.2-next.2
- @backstage/app-defaults@1.0.4-next.2
- @backstage/integration-react@1.1.2-next.2
- @backstage/plugin-airbrake@0.3.7-next.2
- @backstage/plugin-apache-airflow@0.2.0-next.2
- @backstage/plugin-azure-devops@0.1.23-next.2
- @backstage/plugin-badges@0.2.31-next.2
- @backstage/plugin-catalog-graph@0.2.19-next.2
- @backstage/plugin-circleci@0.3.7-next.2
- @backstage/plugin-cloudbuild@0.3.7-next.2
- @backstage/plugin-code-coverage@0.1.34-next.2
- @backstage/plugin-dynatrace@0.1.1-next.2
- @backstage/plugin-explore@0.3.38-next.2
- @backstage/plugin-gcalendar@0.3.3-next.2
- @backstage/plugin-gcp-projects@0.3.26-next.2
- @backstage/plugin-github-actions@0.5.7-next.2
- @backstage/plugin-gocd@0.1.13-next.2
- @backstage/plugin-graphiql@0.2.39-next.2
- @backstage/plugin-home@0.4.23-next.2
- @backstage/plugin-kafka@0.3.7-next.2
- @backstage/plugin-kubernetes@0.6.7-next.2
- @backstage/plugin-lighthouse@0.3.7-next.2
- @backstage/plugin-newrelic@0.3.25-next.2
- @backstage/plugin-newrelic-dashboard@0.1.15-next.2
- @backstage/plugin-org@0.5.7-next.2
- @backstage/plugin-pagerduty@0.5.0-next.2
- @backstage/plugin-rollbar@0.4.7-next.2
- @backstage/plugin-search@0.9.1-next.2
- @backstage/plugin-sentry@0.3.45-next.2
- @backstage/plugin-shortcuts@0.2.8-next.2
- @backstage/plugin-stack-overflow@0.1.3-next.2
- @backstage/plugin-tech-insights@0.2.3-next.2
- @backstage/plugin-tech-radar@0.5.14-next.2
- @backstage/plugin-techdocs-react@1.0.2-next.1
- @backstage/plugin-todo@0.2.9-next.2
- @backstage/plugin-user-settings@0.4.6-next.2
## 0.2.73-next.1
### Patch Changes
+50 -50
View File
@@ -1,67 +1,67 @@
{
"name": "example-app",
"version": "0.2.73-next.1",
"version": "0.2.73-next.2",
"private": true,
"backstage": {
"role": "frontend"
},
"bundled": true,
"dependencies": {
"@backstage/app-defaults": "^1.0.4-next.1",
"@backstage/catalog-model": "^1.1.0-next.1",
"@backstage/cli": "^0.18.0-next.1",
"@backstage/app-defaults": "^1.0.4-next.2",
"@backstage/catalog-model": "^1.1.0-next.2",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/config": "^1.0.1",
"@backstage/core-app-api": "^1.0.4-next.0",
"@backstage/core-components": "^0.9.6-next.1",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/integration-react": "^1.1.2-next.1",
"@backstage/plugin-airbrake": "^0.3.7-next.1",
"@backstage/plugin-api-docs": "^0.8.7-next.1",
"@backstage/plugin-azure-devops": "^0.1.23-next.1",
"@backstage/plugin-apache-airflow": "^0.2.0-next.1",
"@backstage/plugin-badges": "^0.2.31-next.1",
"@backstage/plugin-catalog": "^1.3.1-next.1",
"@backstage/integration-react": "^1.1.2-next.2",
"@backstage/plugin-airbrake": "^0.3.7-next.2",
"@backstage/plugin-api-docs": "^0.8.7-next.2",
"@backstage/plugin-azure-devops": "^0.1.23-next.2",
"@backstage/plugin-apache-airflow": "^0.2.0-next.2",
"@backstage/plugin-badges": "^0.2.31-next.2",
"@backstage/plugin-catalog": "^1.4.0-next.2",
"@backstage/plugin-catalog-common": "^1.0.4-next.0",
"@backstage/plugin-catalog-graph": "^0.2.19-next.1",
"@backstage/plugin-catalog-import": "^0.8.10-next.1",
"@backstage/plugin-catalog-react": "^1.1.2-next.1",
"@backstage/plugin-circleci": "^0.3.7-next.1",
"@backstage/plugin-cloudbuild": "^0.3.7-next.1",
"@backstage/plugin-code-coverage": "^0.1.34-next.1",
"@backstage/plugin-cost-insights": "^0.11.29-next.1",
"@backstage/plugin-dynatrace": "^0.1.1-next.1",
"@backstage/plugin-explore": "^0.3.38-next.1",
"@backstage/plugin-gcalendar": "^0.3.3-next.1",
"@backstage/plugin-gcp-projects": "^0.3.26-next.1",
"@backstage/plugin-github-actions": "^0.5.7-next.1",
"@backstage/plugin-gocd": "^0.1.13-next.1",
"@backstage/plugin-graphiql": "^0.2.39-next.1",
"@backstage/plugin-home": "^0.4.23-next.1",
"@backstage/plugin-jenkins": "^0.7.6-next.1",
"@backstage/plugin-kafka": "^0.3.7-next.1",
"@backstage/plugin-kubernetes": "^0.6.7-next.1",
"@backstage/plugin-lighthouse": "^0.3.7-next.1",
"@backstage/plugin-newrelic": "^0.3.25-next.1",
"@backstage/plugin-newrelic-dashboard": "^0.1.15-next.1",
"@backstage/plugin-org": "^0.5.7-next.1",
"@backstage/plugin-pagerduty": "0.5.0-next.1",
"@backstage/plugin-catalog-graph": "^0.2.19-next.2",
"@backstage/plugin-catalog-import": "^0.8.10-next.2",
"@backstage/plugin-catalog-react": "^1.1.2-next.2",
"@backstage/plugin-circleci": "^0.3.7-next.2",
"@backstage/plugin-cloudbuild": "^0.3.7-next.2",
"@backstage/plugin-code-coverage": "^0.1.34-next.2",
"@backstage/plugin-cost-insights": "^0.11.29-next.2",
"@backstage/plugin-dynatrace": "^0.1.1-next.2",
"@backstage/plugin-explore": "^0.3.38-next.2",
"@backstage/plugin-gcalendar": "^0.3.3-next.2",
"@backstage/plugin-gcp-projects": "^0.3.26-next.2",
"@backstage/plugin-github-actions": "^0.5.7-next.2",
"@backstage/plugin-gocd": "^0.1.13-next.2",
"@backstage/plugin-graphiql": "^0.2.39-next.2",
"@backstage/plugin-home": "^0.4.23-next.2",
"@backstage/plugin-jenkins": "^0.7.6-next.2",
"@backstage/plugin-kafka": "^0.3.7-next.2",
"@backstage/plugin-kubernetes": "^0.6.7-next.2",
"@backstage/plugin-lighthouse": "^0.3.7-next.2",
"@backstage/plugin-newrelic": "^0.3.25-next.2",
"@backstage/plugin-newrelic-dashboard": "^0.1.15-next.2",
"@backstage/plugin-org": "^0.5.7-next.2",
"@backstage/plugin-pagerduty": "0.5.0-next.2",
"@backstage/plugin-permission-react": "^0.4.3-next.0",
"@backstage/plugin-rollbar": "^0.4.7-next.1",
"@backstage/plugin-scaffolder": "^1.4.0-next.1",
"@backstage/plugin-search": "^0.9.1-next.1",
"@backstage/plugin-search-react": "^0.2.2-next.1",
"@backstage/plugin-rollbar": "^0.4.7-next.2",
"@backstage/plugin-scaffolder": "^1.4.0-next.2",
"@backstage/plugin-search": "^0.9.1-next.2",
"@backstage/plugin-search-react": "^0.2.2-next.2",
"@backstage/plugin-search-common": "^0.3.6-next.0",
"@backstage/plugin-sentry": "^0.3.45-next.1",
"@backstage/plugin-shortcuts": "^0.2.8-next.1",
"@backstage/plugin-stack-overflow": "^0.1.3-next.1",
"@backstage/plugin-tech-radar": "^0.5.14-next.1",
"@backstage/plugin-techdocs": "^1.2.1-next.1",
"@backstage/plugin-techdocs-react": "^1.0.2-next.0",
"@backstage/plugin-techdocs-module-addons-contrib": "^1.0.2-next.1",
"@backstage/plugin-todo": "^0.2.9-next.1",
"@backstage/plugin-user-settings": "^0.4.6-next.1",
"@backstage/plugin-tech-insights": "^0.2.3-next.1",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/plugin-sentry": "^0.3.45-next.2",
"@backstage/plugin-shortcuts": "^0.2.8-next.2",
"@backstage/plugin-stack-overflow": "^0.1.3-next.2",
"@backstage/plugin-tech-radar": "^0.5.14-next.2",
"@backstage/plugin-techdocs": "^1.2.1-next.2",
"@backstage/plugin-techdocs-react": "^1.0.2-next.1",
"@backstage/plugin-techdocs-module-addons-contrib": "^1.0.2-next.2",
"@backstage/plugin-todo": "^0.2.9-next.2",
"@backstage/plugin-user-settings": "^0.4.6-next.2",
"@backstage/plugin-tech-insights": "^0.2.3-next.2",
"@backstage/theme": "^0.2.16-next.1",
"@material-ui/core": "^4.12.2",
"@material-ui/icons": "^4.9.1",
"@material-ui/lab": "4.0.0-alpha.57",
+17
View File
@@ -1,5 +1,22 @@
# @backstage/backend-common
## 0.14.1-next.2
### Patch Changes
- 679b32172e: Updated dependency `knex` to `^2.0.0`.
- e2d7b76f43: Upgrade git-url-parse to 12.0.0.
Motivation for upgrade is transitively upgrading parse-url which is vulnerable
to several CVEs detected by Snyk.
- SNYK-JS-PARSEURL-2935944
- SNYK-JS-PARSEURL-2935947
- SNYK-JS-PARSEURL-2936249
- Updated dependencies
- @backstage/integration@1.2.2-next.2
## 0.14.1-next.1
### Patch Changes
+6 -6
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/backend-common",
"description": "Common functionality library for Backstage backends",
"version": "0.14.1-next.1",
"version": "0.14.1-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"private": false,
@@ -38,7 +38,7 @@
"@backstage/config": "^1.0.1",
"@backstage/config-loader": "^1.1.3-next.0",
"@backstage/errors": "^1.1.0-next.0",
"@backstage/integration": "^1.2.2-next.1",
"@backstage/integration": "^1.2.2-next.2",
"@backstage/types": "^1.0.0",
"@google-cloud/storage": "^6.0.0",
"@manypkg/get-packages": "^1.1.3",
@@ -58,7 +58,7 @@
"express": "^4.17.1",
"express-promise-router": "^4.1.0",
"fs-extra": "10.1.0",
"git-url-parse": "^11.6.0",
"git-url-parse": "^12.0.0",
"helmet": "^5.0.2",
"isomorphic-git": "^1.8.0",
"jose": "^4.6.0",
@@ -91,8 +91,8 @@
}
},
"devDependencies": {
"@backstage/backend-test-utils": "^0.1.26-next.1",
"@backstage/cli": "^0.18.0-next.1",
"@backstage/backend-test-utils": "^0.1.26-next.2",
"@backstage/cli": "^0.18.0-next.2",
"@types/archiver": "^5.1.0",
"@types/base64-stream": "^1.0.2",
"@types/compression": "^1.7.0",
@@ -112,7 +112,7 @@
"better-sqlite3": "^7.5.0",
"http-errors": "^2.0.0",
"mock-fs": "^5.1.0",
"msw": "^0.42.0",
"msw": "^0.43.0",
"mysql2": "^2.2.5",
"recursive-readdir": "^2.2.2",
"supertest": "^6.1.3"
+8
View File
@@ -1,5 +1,13 @@
# @backstage/backend-tasks
## 0.3.3-next.2
### Patch Changes
- 679b32172e: Updated dependency `knex` to `^2.0.0`.
- Updated dependencies
- @backstage/backend-common@0.14.1-next.2
## 0.3.3-next.1
### Patch Changes
+4 -4
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/backend-tasks",
"description": "Common distributed task management library for Backstage backends",
"version": "0.3.3-next.1",
"version": "0.3.3-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"private": false,
@@ -33,7 +33,7 @@
"start": "backstage-cli package start"
},
"dependencies": {
"@backstage/backend-common": "^0.14.1-next.1",
"@backstage/backend-common": "^0.14.1-next.2",
"@backstage/config": "^1.0.1",
"@backstage/errors": "^1.1.0-next.0",
"@backstage/types": "^1.0.0",
@@ -48,8 +48,8 @@
"zod": "^3.9.5"
},
"devDependencies": {
"@backstage/backend-test-utils": "^0.1.26-next.1",
"@backstage/cli": "^0.18.0-next.1",
"@backstage/backend-test-utils": "^0.1.26-next.2",
"@backstage/cli": "^0.18.0-next.2",
"@types/cron": "^2.0.0",
"wait-for-expect": "^3.0.2"
},
+9
View File
@@ -1,5 +1,14 @@
# @backstage/backend-test-utils
## 0.1.26-next.2
### Patch Changes
- 679b32172e: Updated dependency `knex` to `^2.0.0`.
- Updated dependencies
- @backstage/backend-common@0.14.1-next.2
- @backstage/cli@0.18.0-next.2
## 0.1.26-next.1
### Patch Changes
+5 -5
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/backend-test-utils",
"description": "Test helpers library for Backstage backends",
"version": "0.1.26-next.1",
"version": "0.1.26-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"private": false,
@@ -34,19 +34,19 @@
"start": "backstage-cli package start"
},
"dependencies": {
"@backstage/backend-common": "^0.14.1-next.1",
"@backstage/cli": "^0.18.0-next.1",
"@backstage/backend-common": "^0.14.1-next.2",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/config": "^1.0.1",
"better-sqlite3": "^7.5.0",
"knex": "^2.0.0",
"msw": "^0.42.0",
"msw": "^0.43.0",
"mysql2": "^2.2.5",
"pg": "^8.3.0",
"testcontainers": "^8.1.2",
"uuid": "^8.0.0"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1"
"@backstage/cli": "^0.18.0-next.2"
},
"files": [
"dist"
+23
View File
@@ -1,5 +1,28 @@
# example-backend
## 0.2.73-next.2
### Patch Changes
- Updated dependencies
- @backstage/plugin-kubernetes-backend@0.7.0-next.2
- @backstage/plugin-tech-insights-backend@0.5.0-next.2
- @backstage/plugin-jenkins-backend@0.1.24-next.2
- @backstage/plugin-search-backend-module-pg@0.3.5-next.2
- @backstage/plugin-scaffolder-backend@1.4.0-next.2
- @backstage/plugin-auth-backend@0.15.0-next.2
- @backstage/catalog-model@1.1.0-next.2
- @backstage/plugin-kafka-backend@0.2.27-next.2
- @backstage/backend-common@0.14.1-next.2
- @backstage/backend-tasks@0.3.3-next.2
- @backstage/plugin-app-backend@0.3.34-next.2
- @backstage/plugin-catalog-backend@1.2.1-next.2
- @backstage/plugin-code-coverage-backend@0.1.32-next.2
- @backstage/plugin-techdocs-backend@1.2.0-next.2
- @backstage/plugin-badges-backend@0.1.28-next.2
- @backstage/integration@1.2.2-next.2
- example-app@0.2.73-next.2
## 0.2.73-next.1
### Patch Changes
+18 -18
View File
@@ -1,6 +1,6 @@
{
"name": "example-backend",
"version": "0.2.73-next.1",
"version": "0.2.73-next.2",
"main": "dist/index.cjs.js",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -26,36 +26,36 @@
"build-image": "docker build ../.. -f Dockerfile --tag example-backend"
},
"dependencies": {
"@backstage/backend-common": "^0.14.1-next.1",
"@backstage/backend-tasks": "^0.3.3-next.1",
"@backstage/backend-common": "^0.14.1-next.2",
"@backstage/backend-tasks": "^0.3.3-next.2",
"@backstage/catalog-client": "^1.0.4-next.1",
"@backstage/catalog-model": "^1.1.0-next.1",
"@backstage/catalog-model": "^1.1.0-next.2",
"@backstage/config": "^1.0.1",
"@backstage/integration": "^1.2.2-next.1",
"@backstage/plugin-app-backend": "^0.3.34-next.1",
"@backstage/plugin-auth-backend": "^0.15.0-next.1",
"@backstage/integration": "^1.2.2-next.2",
"@backstage/plugin-app-backend": "^0.3.34-next.2",
"@backstage/plugin-auth-backend": "^0.15.0-next.2",
"@backstage/plugin-auth-node": "^0.2.3-next.1",
"@backstage/plugin-azure-devops-backend": "^0.3.13-next.0",
"@backstage/plugin-badges-backend": "^0.1.28-next.1",
"@backstage/plugin-catalog-backend": "^1.2.1-next.1",
"@backstage/plugin-code-coverage-backend": "^0.1.32-next.1",
"@backstage/plugin-badges-backend": "^0.1.28-next.2",
"@backstage/plugin-catalog-backend": "^1.2.1-next.2",
"@backstage/plugin-code-coverage-backend": "^0.1.32-next.2",
"@backstage/plugin-graphql-backend": "^0.1.24-next.0",
"@backstage/plugin-jenkins-backend": "^0.1.24-next.1",
"@backstage/plugin-kubernetes-backend": "^0.7.0-next.1",
"@backstage/plugin-kafka-backend": "^0.2.27-next.1",
"@backstage/plugin-jenkins-backend": "^0.1.24-next.2",
"@backstage/plugin-kubernetes-backend": "^0.7.0-next.2",
"@backstage/plugin-kafka-backend": "^0.2.27-next.2",
"@backstage/plugin-permission-backend": "^0.5.9-next.1",
"@backstage/plugin-permission-common": "^0.6.3-next.0",
"@backstage/plugin-permission-node": "^0.6.3-next.1",
"@backstage/plugin-proxy-backend": "^0.2.28-next.0",
"@backstage/plugin-rollbar-backend": "^0.1.31-next.0",
"@backstage/plugin-scaffolder-backend": "^1.4.0-next.1",
"@backstage/plugin-scaffolder-backend": "^1.4.0-next.2",
"@backstage/plugin-scaffolder-backend-module-rails": "^0.4.2-next.1",
"@backstage/plugin-search-backend": "^0.5.4-next.1",
"@backstage/plugin-search-backend-node": "^0.6.3-next.1",
"@backstage/plugin-search-backend-module-elasticsearch": "^0.2.0-next.1",
"@backstage/plugin-search-backend-module-pg": "^0.3.5-next.1",
"@backstage/plugin-techdocs-backend": "^1.2.0-next.1",
"@backstage/plugin-tech-insights-backend": "^0.4.2-next.1",
"@backstage/plugin-search-backend-module-pg": "^0.3.5-next.2",
"@backstage/plugin-techdocs-backend": "^1.2.0-next.2",
"@backstage/plugin-tech-insights-backend": "^0.5.0-next.2",
"@backstage/plugin-tech-insights-node": "^0.3.2-next.0",
"@backstage/plugin-tech-insights-backend-module-jsonfc": "^0.1.18-next.1",
"@backstage/plugin-todo-backend": "^0.1.31-next.1",
@@ -75,7 +75,7 @@
"winston": "^3.2.1"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@types/dockerode": "^3.3.0",
"@types/express": "^4.17.6",
"@types/express-serve-static-core": "^4.17.5",
+1 -1
View File
@@ -40,7 +40,7 @@
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@types/jest": "^26.0.7",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist"
+6
View File
@@ -1,5 +1,11 @@
# @backstage/catalog-model
## 1.1.0-next.2
### Minor Changes
- 4cc81372f8: Introduced `GroupDefaultParentEntityPolicy` to set a default group entity parent.
## 1.1.0-next.1
### Patch Changes
+2 -2
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/catalog-model",
"description": "Types and validators that help describe the model of a Backstage Catalog",
"version": "1.1.0-next.1",
"version": "1.1.0-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -43,7 +43,7 @@
"uuid": "^8.0.0"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@types/jest": "^26.0.7",
"@types/json-schema": "^7.0.5",
"@types/lodash": "^4.14.151",
+6
View File
@@ -1,5 +1,11 @@
# @backstage/cli
## 0.18.0-next.2
### Patch Changes
- f6b6fb7165: The `test` command now ensures that all IO is flushed before exiting when printing `--help`.
## 0.18.0-next.1
### Minor Changes
+6 -6
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/cli",
"description": "CLI for developing Backstage plugins and apps",
"version": "0.18.0-next.1",
"version": "0.18.0-next.2",
"private": false,
"publishConfig": {
"access": "public"
@@ -126,14 +126,14 @@
"zod": "^3.11.6"
},
"devDependencies": {
"@backstage/backend-common": "^0.14.1-next.1",
"@backstage/backend-common": "^0.14.1-next.2",
"@backstage/config": "^1.0.1",
"@backstage/core-app-api": "^1.0.4-next.0",
"@backstage/core-components": "^0.9.6-next.1",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/dev-utils": "^1.0.4-next.1",
"@backstage/dev-utils": "^1.0.4-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/theme": "^0.2.16-next.1",
"@types/diff": "^5.0.0",
"@types/express": "^4.17.6",
"@types/fs-extra": "^9.0.1",
@@ -152,7 +152,7 @@
"@types/yarnpkg__lockfile": "^1.1.4",
"del": "^6.0.0",
"mock-fs": "^5.1.0",
"msw": "^0.42.0",
"msw": "^0.43.0",
"nodemon": "^2.0.2",
"ts-node": "^10.0.0"
},
@@ -41,7 +41,7 @@
"@backstage/cli": "{{versionQuery '@backstage/cli'}}",
"@types/supertest": "{{versionQuery '@types/supertest' '2.0.8'}}",
"supertest": "{{versionQuery 'supertest' '4.0.2'}}",
"msw": "{{versionQuery 'msw' '0.42.0'}}"
"msw": "{{versionQuery 'msw' '0.43.0'}}"
},
"files": [
"dist"
@@ -49,7 +49,7 @@
"@testing-library/user-event": "{{versionQuery '@testing-library/user-event' '14.0.0'}}",
"@types/jest": "{{versionQuery '@types/jest' '26.0.7'}}",
"@types/node": "{{versionQuery '@types/node' '16.11.26'}}",
"msw": "{{versionQuery 'msw' '0.42.0'}}",
"msw": "{{versionQuery 'msw' '0.43.0'}}",
"cross-fetch": "{{versionQuery 'cross-fetch' '3.1.5'}}"
},
"files": [
+1 -1
View File
@@ -57,7 +57,7 @@
"@types/node": "^16.11.26",
"@types/yup": "^0.29.13",
"mock-fs": "^5.1.0",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist"
+1 -1
View File
@@ -59,7 +59,7 @@
"@types/node": "^16.11.26",
"@types/zen-observable": "^0.8.0",
"cross-fetch": "^3.1.5",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist",
+14
View File
@@ -1,5 +1,19 @@
# @backstage/core-components
## 0.10.0-next.2
### Minor Changes
- 32204fa794: Add `transformLinkUri` and `transformImageUri` to `MarkdownContent`
### Patch Changes
- b4b711bcc2: Fix the EntityLayout header style so that EntityContextMenu button can display in correct shape when user hover on it
- 15201b1032: Updated dependency `rc-progress` to `3.4.0`.
- 385389d23c: Updated to remove usage of the `bursts` object in the theme palette
- Updated dependencies
- @backstage/theme@0.2.16-next.1
## 0.9.6-next.1
### Patch Changes
+4 -4
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/core-components",
"description": "Core components used by Backstage plugins and apps",
"version": "0.9.6-next.1",
"version": "0.10.0-next.2",
"private": false,
"publishConfig": {
"access": "public",
@@ -36,7 +36,7 @@
"@backstage/config": "^1.0.1",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/errors": "^1.1.0-next.0",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/theme": "^0.2.16-next.1",
"@backstage/version-bridge": "^1.0.1",
"@material-table/core": "^3.1.0",
"@material-ui/core": "^4.12.2",
@@ -80,7 +80,7 @@
},
"devDependencies": {
"@backstage/core-app-api": "^1.0.4-next.0",
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@testing-library/jest-dom": "^5.10.1",
"@testing-library/react": "^12.1.3",
@@ -101,7 +101,7 @@
"@types/react-window": "^1.8.5",
"@types/zen-observable": "^0.8.0",
"cross-fetch": "^3.1.5",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist"
@@ -21,9 +21,11 @@ import {
TestApiProvider,
wrapInTestApp,
} from '@backstage/test-utils';
import { analyticsApiRef } from '@backstage/core-plugin-api';
import { isExternalUri, Link } from './Link';
import { analyticsApiRef, configApiRef } from '@backstage/core-plugin-api';
import { isExternalUri, Link, useResolvedPath } from './Link';
import { Route, Routes } from 'react-router';
import { renderHook, WrapperComponent } from '@testing-library/react-hooks';
import { ConfigReader } from '@backstage/config';
describe('<Link />', () => {
it('navigates using react-router', async () => {
@@ -103,6 +105,58 @@ describe('<Link />', () => {
});
});
describe('resolves a sub-path correctly', () => {
it('when it starts with base path', async () => {
const testString = 'This is test string';
const linkText = 'Navigate!';
const configApi = new ConfigReader({
app: { baseUrl: 'http://localhost:3000/example' },
});
const { getByText } = render(
wrapInTestApp(
<TestApiProvider apis={[[configApiRef, configApi]]}>
<Routes>
<Link to="/example/test">{linkText}</Link>
<Route path="/example/test" element={<p>{testString}</p>} />
</Routes>
</TestApiProvider>,
),
);
expect(() => getByText(testString)).toThrow();
fireEvent.click(getByText(linkText));
await waitFor(() => {
expect(getByText(testString)).toBeInTheDocument();
});
});
it('when it does not start with base path', async () => {
const testString = 'This is test string';
const linkText = 'Navigate!';
const configApi = new ConfigReader({
app: { baseUrl: 'http://localhost:3000/example' },
});
const { getByText } = render(
wrapInTestApp(
<TestApiProvider apis={[[configApiRef, configApi]]}>
<Routes>
<Link to="/test">{linkText}</Link>
<Route path="/example/test" element={<p>{testString}</p>} />
</Routes>
</TestApiProvider>,
),
);
expect(() => getByText(testString)).toThrow();
fireEvent.click(getByText(linkText));
await waitFor(() => {
expect(getByText(testString)).toBeInTheDocument();
});
});
});
describe('isExternalUri', () => {
it.each([
[true, 'http://'],
@@ -128,4 +182,45 @@ describe('<Link />', () => {
expect(isExternalUri(uri)).toBe(expected);
});
});
describe('useResolvedPath', () => {
const wrapper: WrapperComponent<{}> = ({ children }) => {
const configApi = new ConfigReader({
app: { baseUrl: 'http://localhost:3000/example' },
});
return (
<TestApiProvider apis={[[configApiRef, configApi]]}>
{children}
</TestApiProvider>
);
};
describe('concatenate base path', () => {
it('when uri is internal and does not start with base path', () => {
const path = '/catalog/default/component/artist-lookup';
const { result } = renderHook(() => useResolvedPath(path), {
wrapper,
});
expect(result.current).toBe('/example'.concat(path));
});
});
describe('does not concatenate base path', () => {
it('when uri is external', () => {
const path = 'https://stackoverflow.com/questions/1/example';
const { result } = renderHook(() => useResolvedPath(path), {
wrapper,
});
expect(result.current).toBe(path);
});
it('when uri already starts with base path', () => {
const path = '/example/catalog/default/component/artist-lookup';
const { result } = renderHook(() => useResolvedPath(path), {
wrapper,
});
expect(result.current).toBe(path);
});
});
});
});
@@ -14,7 +14,7 @@
* limitations under the License.
*/
import { useAnalytics } from '@backstage/core-plugin-api';
import { configApiRef, useAnalytics, useApi } from '@backstage/core-plugin-api';
import classnames from 'classnames';
import MaterialLink, {
LinkProps as MaterialLinkProps,
@@ -25,6 +25,7 @@ import {
Link as RouterLink,
LinkProps as RouterLinkProps,
} from 'react-router-dom';
import { trimEnd } from 'lodash';
const useStyles = makeStyles(
{
@@ -52,6 +53,45 @@ export type LinkProps = MaterialLinkProps &
noTrack?: boolean;
};
/**
* Returns the app base url that could be empty if the Config API is not properly implemented.
* The only cases there would be no Config API are in tests and in storybook stories, and in those cases, it's unlikely that callers would rely on this subpath behavior.
*/
const useBaseUrl = () => {
try {
const config = useApi(configApiRef);
return config.getOptionalString('app.baseUrl');
} catch {
return undefined;
}
};
/**
* Get the app base path from the configured app baseUrl.
* The returned path does not have a trailing slash.
*/
const useBasePath = () => {
// baseUrl can be specified as just a path
const base = 'http://dummy.dev';
const url = useBaseUrl() ?? '/';
const { pathname } = new URL(url, base);
return trimEnd(pathname, '/');
};
export const useResolvedPath = (uri: LinkProps['to']) => {
let resolvedPath = String(uri);
const basePath = useBasePath();
const external = isExternalUri(resolvedPath);
const startsWithBasePath = resolvedPath.startsWith(basePath);
if (!external && !startsWithBasePath) {
resolvedPath = basePath.concat(resolvedPath);
}
return resolvedPath;
};
/**
* Given a react node, try to retrieve its text content.
*/
@@ -84,7 +124,7 @@ export const Link = React.forwardRef<any, LinkProps>(
({ onClick, noTrack, ...props }, ref) => {
const classes = useStyles();
const analytics = useAnalytics();
const to = String(props.to);
const to = useResolvedPath(props.to);
const linkText = getNodeText(props.children) || to;
const external = isExternalUri(to);
const newWindow = external && !!/^https?:/.exec(to);
@@ -99,11 +139,11 @@ export const Link = React.forwardRef<any, LinkProps>(
return external ? (
// External links
<MaterialLink
{...(newWindow ? { target: '_blank', rel: 'noopener' } : {})}
{...props}
ref={ref}
href={to}
onClick={handleClick}
{...(newWindow ? { target: '_blank', rel: 'noopener' } : {})}
{...props}
className={classnames(classes.externalLink, props.className)}
>
{props.children}
@@ -112,10 +152,11 @@ export const Link = React.forwardRef<any, LinkProps>(
) : (
// Interact with React Router for internal links
<MaterialLink
{...props}
ref={ref}
component={RouterLink}
to={to}
onClick={handleClick}
{...props}
/>
);
},
+1 -1
View File
@@ -58,7 +58,7 @@
"@types/prop-types": "^15.7.3",
"@types/zen-observable": "^0.8.0",
"cross-fetch": "^3.1.5",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist"
+7
View File
@@ -1,5 +1,12 @@
# @backstage/create-app
## 0.4.29-next.2
### Patch Changes
- f281ad17c0: Adds the ability to define the Backstage app name using a `BACKSTAGE_APP_NAME`
environment variable when running `create-app`.
## 0.4.29-next.1
### Patch Changes
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/create-app",
"description": "A CLI that helps you create your own Backstage app",
"version": "0.4.29-next.1",
"version": "0.4.29-next.2",
"private": false,
"publishConfig": {
"access": "public"
+12
View File
@@ -1,5 +1,17 @@
# @backstage/dev-utils
## 1.0.4-next.2
### Patch Changes
- Updated dependencies
- @backstage/core-components@0.10.0-next.2
- @backstage/catalog-model@1.1.0-next.2
- @backstage/theme@0.2.16-next.1
- @backstage/plugin-catalog-react@1.1.2-next.2
- @backstage/app-defaults@1.0.4-next.2
- @backstage/integration-react@1.1.2-next.2
## 1.0.4-next.1
### Patch Changes
+8 -8
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/dev-utils",
"description": "Utilities for developing Backstage plugins.",
"version": "1.0.4-next.1",
"version": "1.0.4-next.2",
"private": false,
"publishConfig": {
"access": "public",
@@ -33,15 +33,15 @@
"start": "backstage-cli package start"
},
"dependencies": {
"@backstage/app-defaults": "^1.0.4-next.1",
"@backstage/app-defaults": "^1.0.4-next.2",
"@backstage/core-app-api": "^1.0.4-next.0",
"@backstage/core-components": "^0.9.6-next.1",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/catalog-model": "^1.1.0-next.1",
"@backstage/integration-react": "^1.1.2-next.1",
"@backstage/plugin-catalog-react": "^1.1.2-next.1",
"@backstage/catalog-model": "^1.1.0-next.2",
"@backstage/integration-react": "^1.1.2-next.2",
"@backstage/plugin-catalog-react": "^1.1.2-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/theme": "^0.2.16-next.1",
"@material-ui/core": "^4.12.2",
"@material-ui/icons": "^4.9.1",
"@testing-library/jest-dom": "^5.10.1",
@@ -59,7 +59,7 @@
"react-dom": "^16.13.1 || ^17.0.0"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@types/jest": "^26.0.7",
"@types/node": "^16.0.0"
},
+1 -1
View File
@@ -40,7 +40,7 @@
"fs-extra": "10.1.0",
"handlebars": "^4.7.3",
"pgtools": "^0.3.0",
"puppeteer": "^14.0.0",
"puppeteer": "^15.0.0",
"tree-kill": "^1.2.2",
"ts-node": "^10.0.0"
},
+9
View File
@@ -1,5 +1,14 @@
# @backstage/integration-react
## 1.1.2-next.2
### Patch Changes
- Updated dependencies
- @backstage/core-components@0.10.0-next.2
- @backstage/theme@0.2.16-next.1
- @backstage/integration@1.2.2-next.2
## 1.1.2-next.1
### Patch Changes
+7 -7
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/integration-react",
"description": "Frontend package for managing integrations towards external systems",
"version": "1.1.2-next.1",
"version": "1.1.2-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -25,10 +25,10 @@
},
"dependencies": {
"@backstage/config": "^1.0.1",
"@backstage/core-components": "^0.9.6-next.1",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/integration": "^1.2.2-next.1",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/integration": "^1.2.2-next.2",
"@backstage/theme": "^0.2.16-next.1",
"@material-ui/core": "^4.12.2",
"@material-ui/icons": "^4.9.1",
"@material-ui/lab": "4.0.0-alpha.57",
@@ -38,15 +38,15 @@
"react": "^16.13.1 || ^17.0.0"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/dev-utils": "^1.0.4-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/dev-utils": "^1.0.4-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@testing-library/jest-dom": "^5.10.1",
"@testing-library/react": "^12.1.3",
"@testing-library/user-event": "^14.0.0",
"@types/jest": "^26.0.7",
"@types/node": "^16.11.26",
"msw": "^0.42.0",
"msw": "^0.43.0",
"cross-fetch": "^3.1.5"
},
"files": [
+13
View File
@@ -1,5 +1,18 @@
# @backstage/integration
## 1.2.2-next.2
### Patch Changes
- e2d7b76f43: Upgrade git-url-parse to 12.0.0.
Motivation for upgrade is transitively upgrading parse-url which is vulnerable
to several CVEs detected by Snyk.
- SNYK-JS-PARSEURL-2935944
- SNYK-JS-PARSEURL-2935947
- SNYK-JS-PARSEURL-2936249
## 1.2.2-next.1
### Patch Changes
+4 -4
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/integration",
"description": "Helpers for managing integrations towards external systems",
"version": "1.2.2-next.1",
"version": "1.2.2-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -36,19 +36,19 @@
"@backstage/config": "^1.0.1",
"@backstage/errors": "^1.1.0-next.0",
"cross-fetch": "^3.1.5",
"git-url-parse": "^11.6.0",
"git-url-parse": "^12.0.0",
"@octokit/rest": "^18.5.3",
"@octokit/auth-app": "^3.4.0",
"luxon": "^2.0.2",
"lodash": "^4.17.21"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/config-loader": "^1.1.3-next.0",
"@backstage/test-utils": "^1.1.2-next.1",
"@types/jest": "^26.0.7",
"@types/luxon": "^2.0.4",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist",
@@ -108,6 +108,20 @@ describe('bitbucketServer core', () => {
);
});
it('does not double encode the filepath', async () => {
const config: BitbucketServerIntegrationConfig = {
host: 'bitbucket.mycompany.net',
apiBaseUrl: 'https://api.bitbucket.mycompany.net/rest/api/1.0',
};
const result = await getBitbucketServerDownloadUrl(
'https://bitbucket.mycompany.net/projects/backstage/repos/mock/browse/%2Fdocs?at=some-branch',
config,
);
expect(result).toEqual(
'https://api.bitbucket.mycompany.net/rest/api/1.0/projects/backstage/repos/mock/archive?format=tgz&at=some-branch&prefix=backstage-mock&path=%2Fdocs',
);
});
it('do not add path param if no path is specified for Bitbucket Server', async () => {
const defaultBranchResponse = {
displayId: 'main',
@@ -83,7 +83,9 @@ export async function getBitbucketServerDownloadUrl(
// path will limit the downloaded content
// /docs will only download the docs folder and everything below it
// /docs/index.md will download the docs folder and everything below it
const path = filepath ? `&path=${encodeURIComponent(filepath)}` : '';
const path = filepath
? `&path=${encodeURIComponent(decodeURIComponent(filepath))}`
: '';
return `${config.apiBaseUrl}/projects/${project}/repos/${repoName}/archive?format=tgz&at=${branch}&prefix=${project}-${repoName}${path}`;
}
+1 -1
View File
@@ -37,7 +37,7 @@
},
"devDependencies": {
"@backstage/test-utils": "^1.1.2-next.0",
"msw": "^0.42.0",
"msw": "^0.43.0",
"@types/jest": "^26.0.7",
"@types/node": "^16.0.0"
},
@@ -1,5 +1,20 @@
# techdocs-cli-embedded-app
## 0.2.72-next.2
### Patch Changes
- Updated dependencies
- @backstage/core-components@0.10.0-next.2
- @backstage/catalog-model@1.1.0-next.2
- @backstage/theme@0.2.16-next.1
- @backstage/plugin-techdocs@1.2.1-next.2
- @backstage/plugin-catalog@1.4.0-next.2
- @backstage/cli@0.18.0-next.2
- @backstage/app-defaults@1.0.4-next.2
- @backstage/integration-react@1.1.2-next.2
- @backstage/plugin-techdocs-react@1.0.2-next.1
## 0.2.72-next.1
### Patch Changes
+11 -11
View File
@@ -1,25 +1,25 @@
{
"name": "techdocs-cli-embedded-app",
"version": "0.2.72-next.1",
"version": "0.2.72-next.2",
"private": true,
"backstage": {
"role": "frontend"
},
"bundled": true,
"dependencies": {
"@backstage/app-defaults": "^1.0.4-next.1",
"@backstage/catalog-model": "^1.1.0-next.1",
"@backstage/cli": "^0.18.0-next.1",
"@backstage/app-defaults": "^1.0.4-next.2",
"@backstage/catalog-model": "^1.1.0-next.2",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/config": "^1.0.1",
"@backstage/core-app-api": "^1.0.4-next.0",
"@backstage/core-components": "^0.9.6-next.1",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/integration-react": "^1.1.2-next.1",
"@backstage/plugin-catalog": "^1.3.1-next.1",
"@backstage/plugin-techdocs": "^1.2.1-next.1",
"@backstage/plugin-techdocs-react": "^1.0.2-next.0",
"@backstage/integration-react": "^1.1.2-next.2",
"@backstage/plugin-catalog": "^1.4.0-next.2",
"@backstage/plugin-techdocs": "^1.2.1-next.2",
"@backstage/plugin-techdocs-react": "^1.0.2-next.1",
"@backstage/test-utils": "^1.1.2-next.1",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/theme": "^0.2.16-next.1",
"@material-ui/core": "^4.11.0",
"@material-ui/icons": "^4.9.1",
"history": "^5.0.0",
@@ -30,7 +30,7 @@
"react-use": "^17.2.4"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@testing-library/jest-dom": "^5.10.1",
"@testing-library/react": "^12.1.3",
"@testing-library/user-event": "^14.0.0",
+1 -1
View File
@@ -58,7 +58,7 @@
"@backstage/cli": "^0.18.0-next.1",
"@types/jest": "^26.0.7",
"@types/node": "^16.11.26",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist"
+8
View File
@@ -1,5 +1,13 @@
# @backstage/theme
## 0.2.16-next.1
### Patch Changes
- ff4f56eb49: **DEPRECATED**: The `bursts` object from `BackstagePaletteAdditions` has been depreciated and will be removed in a future release
The `genPageTheme` function now includes an optional options object with an optional `fontColor` which defaults to white if not provided.
## 0.2.16-next.0
### Patch Changes
+2 -2
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/theme",
"description": "material-ui theme for use with Backstage.",
"version": "0.2.16-next.0",
"version": "0.2.16-next.1",
"private": false,
"publishConfig": {
"access": "public",
@@ -36,7 +36,7 @@
"@material-ui/core": "^4.12.2"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1"
"@backstage/cli": "^0.18.0-next.2"
},
"files": [
"dist"
+1 -1
View File
@@ -48,7 +48,7 @@
"@types/marked": "^4.0.0",
"@types/supertest": "^2.0.8",
"supertest": "^6.1.3",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist"
+20
View File
@@ -1,5 +1,25 @@
# @backstage/plugin-adr
## 0.1.2-next.2
### Patch Changes
- e2d7b76f43: Upgrade git-url-parse to 12.0.0.
Motivation for upgrade is transitively upgrading parse-url which is vulnerable
to several CVEs detected by Snyk.
- SNYK-JS-PARSEURL-2935944
- SNYK-JS-PARSEURL-2935947
- SNYK-JS-PARSEURL-2936249
- Updated dependencies
- @backstage/core-components@0.10.0-next.2
- @backstage/plugin-search-react@0.2.2-next.2
- @backstage/theme@0.2.16-next.1
- @backstage/plugin-catalog-react@1.1.2-next.2
- @backstage/integration-react@1.1.2-next.2
## 0.1.2-next.1
### Patch Changes
+10 -10
View File
@@ -1,6 +1,6 @@
{
"name": "@backstage/plugin-adr",
"version": "0.1.2-next.1",
"version": "0.1.2-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -22,18 +22,18 @@
"postpack": "backstage-cli package postpack"
},
"dependencies": {
"@backstage/core-components": "^0.9.6-next.1",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/integration-react": "^1.1.2-next.1",
"@backstage/integration-react": "^1.1.2-next.2",
"@backstage/plugin-adr-common": "^0.1.2-next.1",
"@backstage/plugin-catalog-react": "^1.1.2-next.1",
"@backstage/plugin-catalog-react": "^1.1.2-next.2",
"@backstage/plugin-search-common": "^0.3.6-next.0",
"@backstage/plugin-search-react": "^0.2.2-next.1",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/plugin-search-react": "^0.2.2-next.2",
"@backstage/theme": "^0.2.16-next.1",
"@material-ui/core": "^4.12.2",
"@material-ui/icons": "^4.9.1",
"@material-ui/lab": "4.0.0-alpha.57",
"git-url-parse": "^11.6.0",
"git-url-parse": "^12.0.0",
"octokit": "^1.7.1",
"react-markdown": "^8.0.0",
"react-router-dom": "6.0.0-beta.0",
@@ -44,9 +44,9 @@
"react": "^16.13.1 || ^17.0.0"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/core-app-api": "^1.0.4-next.0",
"@backstage/dev-utils": "^1.0.4-next.1",
"@backstage/dev-utils": "^1.0.4-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@testing-library/jest-dom": "^5.10.1",
"@testing-library/react": "^12.1.3",
@@ -55,7 +55,7 @@
"@types/jest": "*",
"@types/node": "*",
"cross-fetch": "^3.1.5",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist"
+1 -1
View File
@@ -37,7 +37,7 @@
"@types/http-proxy-middleware": "^0.19.3",
"@types/supertest": "^2.0.8",
"supertest": "^6.1.6",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist",
+11
View File
@@ -1,5 +1,16 @@
# @backstage/plugin-airbrake
## 0.3.7-next.2
### Patch Changes
- Updated dependencies
- @backstage/core-components@0.10.0-next.2
- @backstage/catalog-model@1.1.0-next.2
- @backstage/theme@0.2.16-next.1
- @backstage/plugin-catalog-react@1.1.2-next.2
- @backstage/dev-utils@1.0.4-next.2
## 0.3.7-next.1
### Patch Changes
+10 -10
View File
@@ -1,6 +1,6 @@
{
"name": "@backstage/plugin-airbrake",
"version": "0.3.7-next.1",
"version": "0.3.7-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -23,13 +23,13 @@
"clean": "backstage-cli package clean"
},
"dependencies": {
"@backstage/catalog-model": "^1.1.0-next.1",
"@backstage/core-components": "^0.9.6-next.1",
"@backstage/catalog-model": "^1.1.0-next.2",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/dev-utils": "^1.0.4-next.1",
"@backstage/plugin-catalog-react": "^1.1.2-next.1",
"@backstage/dev-utils": "^1.0.4-next.2",
"@backstage/plugin-catalog-react": "^1.1.2-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/theme": "^0.2.16-next.1",
"@material-ui/core": "^4.12.2",
"@material-ui/icons": "^4.9.1",
"@material-ui/lab": "4.0.0-alpha.57",
@@ -40,9 +40,9 @@
"react": "^16.13.1 || ^17.0.0"
},
"devDependencies": {
"@backstage/app-defaults": "^1.0.4-next.1",
"@backstage/cli": "^0.18.0-next.1",
"@backstage/dev-utils": "^1.0.4-next.1",
"@backstage/app-defaults": "^1.0.4-next.2",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/dev-utils": "^1.0.4-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@testing-library/jest-dom": "^5.10.1",
"@testing-library/react": "^12.1.3",
@@ -51,7 +51,7 @@
"@types/node": "^16.11.26",
"@types/object-hash": "^2.2.1",
"cross-fetch": "^3.1.5",
"msw": "^0.42.0",
"msw": "^0.43.0",
"react-router": "6.0.0-beta.0"
},
"files": [
+10
View File
@@ -1,5 +1,15 @@
# @backstage/plugin-allure
## 0.1.23-next.2
### Patch Changes
- Updated dependencies
- @backstage/core-components@0.10.0-next.2
- @backstage/catalog-model@1.1.0-next.2
- @backstage/theme@0.2.16-next.1
- @backstage/plugin-catalog-react@1.1.2-next.2
## 0.1.23-next.1
### Patch Changes
+8 -8
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/plugin-allure",
"description": "A Backstage plugin that integrates with Allure",
"version": "0.1.23-next.1",
"version": "0.1.23-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -25,11 +25,11 @@
"clean": "backstage-cli package clean"
},
"dependencies": {
"@backstage/catalog-model": "^1.1.0-next.1",
"@backstage/core-components": "^0.9.6-next.1",
"@backstage/catalog-model": "^1.1.0-next.2",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/plugin-catalog-react": "^1.1.2-next.1",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/plugin-catalog-react": "^1.1.2-next.2",
"@backstage/theme": "^0.2.16-next.1",
"@material-ui/core": "^4.12.2",
"@material-ui/icons": "^4.9.1",
"@material-ui/lab": "4.0.0-alpha.57",
@@ -40,9 +40,9 @@
"react": "^16.13.1 || ^17.0.0"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/core-app-api": "^1.0.4-next.0",
"@backstage/dev-utils": "^1.0.4-next.1",
"@backstage/dev-utils": "^1.0.4-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@testing-library/jest-dom": "^5.10.1",
"@testing-library/react": "^12.1.3",
@@ -50,7 +50,7 @@
"@types/jest": "^26.0.7",
"@types/node": "^16.11.26",
"cross-fetch": "^3.1.5",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist"
+8
View File
@@ -1,5 +1,13 @@
# @backstage/plugin-analytics-module-ga
## 0.1.18-next.2
### Patch Changes
- Updated dependencies
- @backstage/core-components@0.10.0-next.2
- @backstage/theme@0.2.16-next.1
## 0.1.18-next.1
### Patch Changes
+6 -6
View File
@@ -1,6 +1,6 @@
{
"name": "@backstage/plugin-analytics-module-ga",
"version": "0.1.18-next.1",
"version": "0.1.18-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -25,9 +25,9 @@
},
"dependencies": {
"@backstage/config": "^1.0.1",
"@backstage/core-components": "^0.9.6-next.1",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/theme": "^0.2.16-next.1",
"@material-ui/core": "^4.12.2",
"@material-ui/icons": "^4.9.1",
"@material-ui/lab": "4.0.0-alpha.57",
@@ -38,9 +38,9 @@
"react": "^16.13.1 || ^17.0.0"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/core-app-api": "^1.0.4-next.0",
"@backstage/dev-utils": "^1.0.4-next.1",
"@backstage/dev-utils": "^1.0.4-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@testing-library/jest-dom": "^5.10.1",
"@testing-library/react": "^12.1.3",
@@ -48,7 +48,7 @@
"@types/jest": "^26.0.7",
"@types/node": "^16.11.26",
"cross-fetch": "^3.1.5",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist",
+7
View File
@@ -1,5 +1,12 @@
# @backstage/plugin-apache-airflow
## 0.2.0-next.2
### Patch Changes
- Updated dependencies
- @backstage/core-components@0.10.0-next.2
## 0.2.0-next.1
### Minor Changes
+5 -5
View File
@@ -1,6 +1,6 @@
{
"name": "@backstage/plugin-apache-airflow",
"version": "0.2.0-next.1",
"version": "0.2.0-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -23,7 +23,7 @@
"clean": "backstage-cli package clean"
},
"dependencies": {
"@backstage/core-components": "^0.9.6-next.1",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-plugin-api": "^1.0.3",
"@material-ui/core": "^4.12.2",
"@material-ui/icons": "^4.9.1",
@@ -36,16 +36,16 @@
"react": "^16.13.1 || ^17.0.0"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/core-app-api": "^1.0.4-next.0",
"@backstage/dev-utils": "^1.0.4-next.1",
"@backstage/dev-utils": "^1.0.4-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@testing-library/jest-dom": "^5.10.1",
"@testing-library/react": "^12.1.3",
"@testing-library/user-event": "^14.0.0",
"@types/jest": "^26.0.7",
"@types/node": "^16.11.26",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist",
+12
View File
@@ -1,5 +1,17 @@
# @backstage/plugin-api-docs
## 0.8.7-next.2
### Patch Changes
- a274fe38b9: Add hidden title column to catalog and API table to enable filtering by title.
- Updated dependencies
- @backstage/core-components@0.10.0-next.2
- @backstage/catalog-model@1.1.0-next.2
- @backstage/theme@0.2.16-next.1
- @backstage/plugin-catalog@1.4.0-next.2
- @backstage/plugin-catalog-react@1.1.2-next.2
## 0.8.7-next.1
### Patch Changes
+10 -10
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/plugin-api-docs",
"description": "A Backstage plugin that helps represent API entities in the frontend",
"version": "0.8.7-next.1",
"version": "0.8.7-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -33,13 +33,13 @@
"clean": "backstage-cli package clean"
},
"dependencies": {
"@asyncapi/react-component": "1.0.0-next.38",
"@backstage/catalog-model": "^1.1.0-next.1",
"@backstage/core-components": "^0.9.6-next.1",
"@asyncapi/react-component": "1.0.0-next.39",
"@backstage/catalog-model": "^1.1.0-next.2",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/plugin-catalog": "^1.3.1-next.1",
"@backstage/plugin-catalog-react": "^1.1.2-next.1",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/plugin-catalog": "^1.4.0-next.2",
"@backstage/plugin-catalog-react": "^1.1.2-next.2",
"@backstage/theme": "^0.2.16-next.1",
"@material-ui/core": "^4.12.2",
"@material-ui/icons": "^4.9.1",
"@material-ui/lab": "4.0.0-alpha.57",
@@ -57,9 +57,9 @@
"react": "^16.13.1 || ^17.0.0"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/core-app-api": "^1.0.4-next.0",
"@backstage/dev-utils": "^1.0.4-next.1",
"@backstage/dev-utils": "^1.0.4-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@testing-library/jest-dom": "^5.10.1",
"@testing-library/react": "^12.1.3",
@@ -68,7 +68,7 @@
"@types/node": "^16.11.26",
"@types/swagger-ui-react": "^4.1.1",
"cross-fetch": "^3.1.5",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist"
+8
View File
@@ -1,5 +1,13 @@
# @backstage/plugin-app-backend
## 0.3.34-next.2
### Patch Changes
- 679b32172e: Updated dependency `knex` to `^2.0.0`.
- Updated dependencies
- @backstage/backend-common@0.14.1-next.2
## 0.3.34-next.1
### Patch Changes
+5 -5
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/plugin-app-backend",
"description": "A Backstage backend plugin that serves the Backstage frontend app",
"version": "0.3.34-next.1",
"version": "0.3.34-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -33,7 +33,7 @@
"clean": "backstage-cli package clean"
},
"dependencies": {
"@backstage/backend-common": "^0.14.1-next.1",
"@backstage/backend-common": "^0.14.1-next.2",
"@backstage/config-loader": "^1.1.3-next.0",
"@backstage/config": "^1.0.1",
"@backstage/types": "^1.0.0",
@@ -50,12 +50,12 @@
"yn": "^4.0.0"
},
"devDependencies": {
"@backstage/backend-test-utils": "^0.1.26-next.1",
"@backstage/cli": "^0.18.0-next.1",
"@backstage/backend-test-utils": "^0.1.26-next.2",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/types": "^1.0.0",
"@types/supertest": "^2.0.8",
"mock-fs": "^5.1.0",
"msw": "^0.42.0",
"msw": "^0.43.0",
"supertest": "^6.1.3"
},
"files": [
+10
View File
@@ -1,5 +1,15 @@
# @backstage/plugin-auth-backend
## 0.15.0-next.2
### Patch Changes
- 8e03db907a: Auth provider now also export createAuthProviderIntegration
- 679b32172e: Updated dependency `knex` to `^2.0.0`.
- Updated dependencies
- @backstage/catalog-model@1.1.0-next.2
- @backstage/backend-common@0.14.1-next.2
## 0.15.0-next.1
### Minor Changes
+16
View File
@@ -181,6 +181,22 @@ export type CookieConfigurer = (ctx: {
secure: boolean;
};
// Warning: (ae-missing-release-tag) "createAuthProviderIntegration" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public
export function createAuthProviderIntegration<
TCreateOptions extends unknown[],
TResolvers extends {
[name in string]: (...args: any[]) => SignInResolver<any>;
},
>(config: {
create: (...args: TCreateOptions) => AuthProviderFactory;
resolvers?: TResolvers;
}): Readonly<{
create: (...args: TCreateOptions) => AuthProviderFactory;
resolvers: Readonly<string extends keyof TResolvers ? never : TResolvers>;
}>;
// Warning: (ae-missing-release-tag) "createOriginFilter" is exported by the package, but it is missing a release tag (@alpha, @beta, @public, or @internal)
//
// @public (undocumented)
+6 -6
View File
@@ -1,7 +1,7 @@
{
"name": "@backstage/plugin-auth-backend",
"description": "A Backstage backend plugin that handles authentication",
"version": "0.15.0-next.1",
"version": "0.15.0-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -34,9 +34,9 @@
},
"dependencies": {
"@backstage/plugin-auth-node": "^0.2.3-next.1",
"@backstage/backend-common": "^0.14.1-next.1",
"@backstage/backend-common": "^0.14.1-next.2",
"@backstage/catalog-client": "^1.0.4-next.1",
"@backstage/catalog-model": "^1.1.0-next.1",
"@backstage/catalog-model": "^1.1.0-next.2",
"@backstage/config": "^1.0.1",
"@backstage/errors": "^1.1.0-next.0",
"@backstage/types": "^1.0.0",
@@ -76,8 +76,8 @@
"yn": "^4.0.0"
},
"devDependencies": {
"@backstage/backend-test-utils": "^0.1.26-next.1",
"@backstage/cli": "^0.18.0-next.1",
"@backstage/backend-test-utils": "^0.1.26-next.2",
"@backstage/cli": "^0.18.0-next.2",
"@types/body-parser": "^1.19.0",
"@types/cookie-parser": "^1.4.2",
"@types/express-session": "^1.17.2",
@@ -88,7 +88,7 @@
"@types/passport-saml": "^1.1.3",
"@types/passport-strategy": "^0.2.35",
"@types/xml2js": "^0.4.7",
"msw": "^0.42.0",
"msw": "^0.43.0",
"supertest": "^6.1.3"
},
"files": [
@@ -28,6 +28,8 @@ export type { GcpIapResult, GcpIapTokenInfo } from './gcp-iap';
export { providers, defaultAuthProviderFactories } from './providers';
export { createAuthProviderIntegration } from './createAuthProviderIntegration';
export type {
AuthProviderConfig,
AuthProviderRouteHandlers,
+1 -1
View File
@@ -33,7 +33,7 @@
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"lodash": "^4.17.21",
"msw": "^0.42.0",
"msw": "^0.43.0",
"uuid": "^8.0.0"
},
"files": [
+1 -1
View File
@@ -38,7 +38,7 @@
"@backstage/cli": "^0.18.0-next.1",
"@types/supertest": "^2.0.8",
"supertest": "^6.1.6",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist",
+10
View File
@@ -1,5 +1,15 @@
# @backstage/plugin-azure-devops
## 0.1.23-next.2
### Patch Changes
- Updated dependencies
- @backstage/core-components@0.10.0-next.2
- @backstage/catalog-model@1.1.0-next.2
- @backstage/theme@0.2.16-next.1
- @backstage/plugin-catalog-react@1.1.2-next.2
## 0.1.23-next.1
### Patch Changes
+8 -8
View File
@@ -1,6 +1,6 @@
{
"name": "@backstage/plugin-azure-devops",
"version": "0.1.23-next.1",
"version": "0.1.23-next.2",
"main": "src/index.ts",
"types": "src/index.ts",
"license": "Apache-2.0",
@@ -30,13 +30,13 @@
"clean": "backstage-cli package clean"
},
"dependencies": {
"@backstage/catalog-model": "^1.1.0-next.1",
"@backstage/core-components": "^0.9.6-next.1",
"@backstage/catalog-model": "^1.1.0-next.2",
"@backstage/core-components": "^0.10.0-next.2",
"@backstage/core-plugin-api": "^1.0.3",
"@backstage/errors": "^1.1.0-next.0",
"@backstage/plugin-azure-devops-common": "^0.2.3",
"@backstage/plugin-catalog-react": "^1.1.2-next.1",
"@backstage/theme": "^0.2.16-next.0",
"@backstage/plugin-catalog-react": "^1.1.2-next.2",
"@backstage/theme": "^0.2.16-next.1",
"@material-ui/core": "^4.12.2",
"@material-ui/icons": "^4.9.1",
"@material-ui/lab": "4.0.0-alpha.57",
@@ -49,9 +49,9 @@
"react": "^16.13.1 || ^17.0.0"
},
"devDependencies": {
"@backstage/cli": "^0.18.0-next.1",
"@backstage/cli": "^0.18.0-next.2",
"@backstage/core-app-api": "^1.0.4-next.0",
"@backstage/dev-utils": "^1.0.4-next.1",
"@backstage/dev-utils": "^1.0.4-next.2",
"@backstage/test-utils": "^1.1.2-next.1",
"@testing-library/jest-dom": "^5.10.1",
"@testing-library/react": "^12.1.3",
@@ -59,7 +59,7 @@
"@types/jest": "^26.0.7",
"@types/node": "^16.11.26",
"cross-fetch": "^3.1.5",
"msw": "^0.42.0"
"msw": "^0.43.0"
},
"files": [
"dist"
+9
View File
@@ -1,5 +1,14 @@
# @backstage/plugin-badges-backend
## 0.1.28-next.2
### Patch Changes
- 58fd5ee9d5: Add missing installation instructions
- Updated dependencies
- @backstage/catalog-model@1.1.0-next.2
- @backstage/backend-common@0.14.1-next.2
## 0.1.28-next.1
### Patch Changes
+36 -2
View File
@@ -11,8 +11,14 @@ endpoint.
## Installation
Install the `@backstage/plugin-badges-backend` package in your backend package,
and then integrate the plugin using the following default setup for
Install the `@backstage/plugin-badges-backend` package in your backend package:
```bash
# From your Backstage root directory
yarn add --cwd packages/backend @backstage/plugin-badges-backend
```
Add the plugin using the following default setup for
`src/plugins/badges.ts`:
```ts
@@ -39,6 +45,34 @@ the badges-backend `createRouter()` to forward to the default badge builder. To
customize the available badges, provide a custom set of badge factories. See
further down for an example of a custom badge factories function.
Finally, you have to make the following changes in `src/index.ts`:
```ts
// 1. import the plugin
import badges from './plugins/badges';
...
const config = await loadBackendConfig({
argv: process.argv,
logger: rootLogger,
});
const createEnv = makeCreateEnv(config);
...
// 2. Create a PluginEnvironment for the Badges plugin
const badgesEnv = useHotMemoize(module, () => createEnv('badges'));
...
const apiRouter = Router();
...
// 3. Register the badges plugin in the router
apiRouter.use('/badges', await badges(badgesEnv));
...
apiRouter.use(notFoundHandler());
```
## Badge builder
Badges are created by classes implementing the `BadgeBuilder` type. The default

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