Releases: PagerDuty/backstage-plugin-backend
0.4.0
Summary
Release 0.4.0 introduces a minor change that adds a new option configuration field oauth
. This new configuration improves security when calling PagerDuty REST APIs by replacing the current apiToken
configuration that assigns full-access privileges to Backstage.
With Scoped OAuth support the PagerDuty admin can grant only the necessary permissions to Backstage instead of access to all APIs and operations.
The new configuration can be defined in app-config.yaml
with the following parameters:
pagerDuty:
oauth:
clientId: ${PD_CLIENT_ID}
clientSecret: ${PD_CLIENT_SECRET}
subDomain: ${PD_ACCOUNT_SUBDOMAIN}
region: ${PD_ACCOUNT_REGION} // Optional. allowed values: 'us', 'eu'. Defaults to 'us'.
Changes
- feat: add OAuth support (#24) by @t1agob
- build(deps): Bump @backstage/backend-app-api from 0.5.8 to 0.5.10 (#23) by @dependabot
- docs: updated readme with new features - REST APIs (#22) by @t1agob
This release was made possible by the following contributors:
@dependabot, @dependabot[bot] and @t1agob
0.3.3
Summary
This release refactors HTTP error handling in REST API endpoints for backend routes. The new payload expected when an HTTP error is captured looks like the following.
{
"errors": [
"Failed to get change events for service. Caller is not authorized to view the requested resource."
]
}
This helps in providing a better user experience to the user from a frontend perspective.
Changes
This release was made possible by the following contributors:
0.3.2
Summary
This release bumps up the version of @pagerduty/backstage-plugin-common package to version 0.0.2 to solve an issue that was preventing the backend plugin to start.
Changes
- chore(deps): upgrade common package version to fix issue preventing backend from starting (#18) by @t1agob
This release was made possible by the following contributors:
0.3.1
Summary
This release was aimed at removing the dependency on the Backstage proxy. We have replace it with new REST API endpoints for all operations executed from the frontend plugin that currently interact with the PagerDuty REST API directly. With this change we:
- Removed the dependency on the Backstage proxy
- Improved security by limiting the actions performed on the backend API
- Slightly increase the performance by limiting the data used by the frontend to the essential
Endpoints added
/oncall-users - returns PagerDutyOnCallUsersResponse with list of users oncall
/services - uses integration_key and returns PagerDutyServiceResponse with PagerDuty service information
/services/:serviceId - returns PagerDutyServiceResponse with PagerDuty service information
/services/:serviceId/change-events - returns PagerDutyChangeEventsResponse with list of last 5 change events for the defined service
/services/:serviceId/incidents - returns PagerDutyIncidentsResponse with list of incidents for the defined service
With this change, the proxy configuration on app-config.yaml is no longer required.
Changes
- feat: migrate apis to backend (#14) by @t1agob
- build(deps): Bump follow-redirects from 1.15.3 to 1.15.4 (#11) by @dependabot
This release was made possible by the following contributors:
@dependabot, @dependabot[bot] and @t1agob
0.2.1
Summary
This release introduces the capacity to enable noise reduction through alert grouping and auto pause of notifications.
The user will be able to pass an optional parameter (intelligent, time, content_based) from within a software template and during service creation alert grouping will be enabled automatically and using recommended defaults.
Auto pause of notifications will also be enabled by default.
Changes
This release was made possible by the following contributors:
0.2.0
Summary
This new release introduces local APIs that will support the transition from using the Backstage proxy to call PagerDuty APIs and instead use the local APIs provide by the backend plugin. This will allowed the backend to control which data is exposed to Backstage, replacing the current mechanism that exposes all data returned by PagerDuty APIs.
This release only exposes an API route to get all escalation policies which will work together with the frontend plugin and the scaffolder custom action to replace the existing text field expecting an Escalation Policy Id with a Drop-down control that list all escalation policies available to the user, improving their user experience.