All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Cleaning of the name "Incident" (704)
- Alert Group/Alert Groups naming polishing. All the names should be with capital letters
- Design polishing (1290)
- Not showing contact details in User tooltip if User does not have edit/admin access
- Updated slack link account to redirect back to user profile instead of chatops
- Incidents - Removed buttons column and replaced status with toggler (#1237)
- Responsiveness changes across multiple pages (Incidents, Integrations, Schedules) (#1237)
- Fix bug with email case sensitivity for ICal on-call schedules (1297)
- Fix bug with root/dependant alert groups list api endpoint (1284)
- Fixed NPE on teams switch
- Optimize alert and alert group public api endpoints and add filter by id (1274)
- Enable mobile app backend by default on OSS
- Add
django-dbconn-retry
library toINSTALLED_APPS
to attempt to alleviate occasionaldjango.db.utils.OperationalError
errors - Improve alerts and alert group endpoint response time in internal API with caching (1261)
- Optimize alert and alert group public api endpoints and add filter by id (1274
- Added Coming Soon for iOS on Mobile App screen
- Fix issue on Integrations where you were redirected back once escalation chain was loaded (#1083) (#1257)
- Add involved users filter to alert groups listing page (+ mine shortcut)
- Improve logging for creating contact point for Grafana Alerting integration
- Fix bugs related to creating contact point for Grafana Alerting integration
- Fix minor UI bug on OnCall users page where it would idefinitely show a "Loading..." message
- Only show OnCall user's table to users that are authorized
- Fixed NPE in ScheduleUserDetails component (#1229)
- Add Server URL below QR code for OSS for debugging purposes
- Add Slack slash command allowing to trigger a direct page via a manually created alert group
- Remove resolved and acknowledged filters as we switched to status (#1201)
- Add sync with grafana on /users and /teams api calls from terraform plugin
- Allow users with
viewer
role to fetch cloud connection status using the internal API (#1181) - When removing the Slack ChatOps integration, make it more explicit to the user what the implications of doing so are
- Improve performance of
GET /api/internal/v1/schedules
endpoint (#1169)
- Removed duplicate API call, in the UI on plugin initial load, to
GET /api/internal/v1/alert_receive_channels
- Increased plugin startup speed (#1200)
- Allow messaging backends to be enabled/disabled per organization (#1151)
- Send a Slack DM when user is not in channel (#1144)
- Modified how the
Organization.is_rbac_permissions_enabled
flag is set, based on whether we are dealing with an open-source, or cloud installation - Backend implementation to support direct user/schedule paging
- Changed documentation links to open in new window
- Remove helm chart signing
- Changed the user's profile modal to be wide for all tabs
- Added state filter for alert_group public API endpoint.
- Enrich user tooltip on Schedule page
- Added redirects for old-style links
- Updated typo in Helm chart values when specifying a custom Slack command name
- Fix for web schedules ical export to give overrides the right priority
- Fix for topnavbar to show initial loading inside PluginPage
-
Minor bug fix in how the value of
Organization.is_rbac_permissions_enabled
is determined -
Helm chart: default values file and documentation now reflect the correct key to set for the Slack slash command name,
oncall.slack.commandName
.
- Simplify and speed up slack rendering (#1105)
- Faro - Point to 3 separate apps instead of just 1 for all environments (#1110)
- Schedules - (#1114, #1109)
- Bugfix for topnavbar to place alerts inside PageNav (#1040)
- Change wording from "incident" to "alert group" for the Telegram integration (#1052)
- Soft-delete of organizations on stack deletion.
- Integration with Grafana Faro for Cloud Instances
- Handle jinja exceptions during alert creation
- Handle exception for slack rate limit message
- Fix error when schedule was not able to load
- Minor fixes
- Minor fixes
- Alert group query optimization
- Update RBAC scopes
- Fix error when schedule was not able to load
- Minor bug fixes
- Added a
make
command,enable-mobile-app-feature-flags
, which sets the backend feature flag in./dev/.env.dev
, and updates a record in thebase_dynamicsetting
database table, which are needed to enable the mobile app backend features.
- Added ability to change engine deployment update strategy via values in helm chart.
- removed APNS support
- changed the
django-push-notification
library from theiskhakov
fork to thegrafana
fork. This new fork basically patches an issue which affected the database migrations of this django app (previously the library would not respect theUSER_MODEL
setting when creating its tables and would instead reference theauth_user
table.. which we don't want) - add
--no-cache
flag to themake build
command
- fix schedule UI types and permissions
- Update fallback role for schedule write RBAC permission
- Mobile App Verification tab in the user settings modal is now hidden for users that do not have proper permissions to use it
- RBAC permission support
- Add
time_zone
serializer validation for OnCall shifts and calendar/web schedules. In addition, add database migration to update values that may be invalid - Add a
permalinks.web
field, which is a permalink to the alert group web app page, to the alert group internal/public API responses - Added the ability to customize job-migrate
ttlSecondsAfterFinished
field in the helm chart
- Got 500 error when saving Outgoing Webhook (#890)
- v1.0.13 helm chart - update the OnCall backend pods image pull policy to "Always" (and explicitly set tag to
latest
). This should resolve some recent issues experienced where the frontend/backend versions are not aligned.
- When editing templates for alert group presentation or outgoing webhooks, errors and warnings are now displayed in the UI as notification popups or displayed in the preview.
- Errors and warnings that occur when rendering templates during notification or webhooks will now render and display the error/warning as the result.
- Added a QR code in the "Mobile App Verification" tab on the user settings modal to connect the mobile application to your OnCall instance
- Bug fix for #882 which was causing the OnCall web calendars to not load
- Bug fix which, when installing the plugin, or after removing a Grafana API token, caused the plugin to not load properly
- Bug Fixes
- For OSS installations of OnCall, initial configuration is now simplified. When running for local development, you no
longer need to configure the plugin via the UI. This is achieved through passing one environment variable to both the
backend & frontend containers, both of which have been preconfigured for you in
docker-compose-developer.yml
.- The Grafana API URL must be passed as an environment variable,
GRAFANA_API_URL
, to the OnCall backend (and can be configured by updating this env var in your./dev/.env.dev
file) - The OnCall API URL can optionally be passed as an environment variable,
ONCALL_API_URL
, to the OnCall UI. If the environment variable is found, the plugin will "auto-configure", otherwise you will be shown a simple configuration form to provide this info.
- The Grafana API URL must be passed as an environment variable,
- For Helm installations, if you are running Grafana externally (eg.
grafana.enabled
is set tofalse
in yourvalues.yaml
), you will now be required to specifyexternalGrafana.url
invalues.yaml
. make start
will now idempotently check to see if a "127.0.0.1 grafana" record exists in/etc/hosts
(using a tool calledhostess
). This is to support usinghttp://grafana:3000
as theOrganization.grafana_url
in two scenarios:oncall_engine
/oncall_celery
->grafana
Docker container communication- public URL generation. There are some instances where
Organization.grafana_url
is referenced to generate public URLs to a Grafana plugin page. Without the/etc/hosts
record, navigating tohttp://grafana:3000/some_page
in your browser, you would obviously get an error from your browser.
- Bug Fixes
- Compatibility with Grafana 9.3.0
- Bug Fixes
- Allow use of API keys as alternative to account auth token for Twilio
- Remove
grafana_plugin_management
Django app - Enable new schedules UI
- Bug fixes
- Bug Fixes
- Updates to documentation
- Improvements to web schedules
- Bug fixes
- Enable SMTP email backend by default
- Fix Grafana sidebar frontend bug
- verify_number management command
- chatops page redesign
- Bug fixes
- Bug fixes
- remove
POST /api/internal/v1/custom_buttons/{id}/action
endpoint
- Bug fix to revert commit which removed unused engine code
- Bug fix for an issue that was affecting phone verification
- Bug fixes
- Fix posting resolution notes to Slack
- Add personal email notifications
- Bug fixes
- Improved database and celery backends support
- Added script to import PagerDuty users to Grafana
- Bug fixes
- Fix issue in v1.0.38 blocking the creation of schedules and webhooks in the UI
- Fix exception handling for adding resolution notes when slack and oncall users are out of sync.
- Fix all day events showing as having gaps in slack notifications
- Improve plugin configuration error message readability
- Add
telegram
key topermalinks
property inAlertGroup
public API response schema
- Improve API token creation form
- Fix alert group bulk action bugs
- Add
permalinks
property toAlertGroup
public API response schema - Scheduling system bug fixes
- Public API bug fixes
- Alpha web schedules frontend/backend updates
- Bug fixes
- Bug fixes
- Fix schedule notification spam
- Add raw alert view
- Add GitHub star button for OSS installations
- Restore alert group search functionality
- Bug fixes
- Bug fixes
- Bump celery version
- Fix oss to cloud connection
- Bug fix: check user notification policy before access
- Add arm64 docker image
- Bug fixes
- Bug fixes
- Insight log's format fixes
- Remove UserNotificationPolicy auto-recreating
- Bug fixes
- Insight logs
- Default DATA_UPLOAD_MAX_MEMORY_SIZE to 1mb
- Bug fixes
- Make STATIC_URL configurable from environment variable
- Bug fixes
- Bug fixes
- Bug fixes
- Optimize alert group list view
- Fix a bug related to Twilio setup
- Update push-notifications dependency
- Rework how absolute URLs are built
- Fix to show maintenance windows per team
- Logging improvements
- Internal api to get a schedule final events
- Speed-up of alert group web caching
- Internal api for OnCall shifts
- Frontend bug fixes & improvements
- Support regex_replace() in templates
- Bring back alert group caching and list view
- Backend & frontend bug fixes
- Deployment improvements
- Reshape webhook payload for outgoing webhooks
- Add escalation chain usage info on escalation chains page
- Improve alert group list load speeds and simplify caching system
- Manual Incidents enabled for teams
- Fix phone notifications for OSS
- Public API improvements
- Bump Django to 3.2.14
- Fix PagerDuty iCal parsing
- Allow Telegram DMs without channel connection.
- Fix users public api endpoint. Now it returns users with all roles.
- Fix redundant notifications about gaps in schedules.
- Frontend fixes.
- Fix Grafana Alerting integration to handle API changes in Grafana 9
- Improve public api endpoint for outgoing webhooks (/actions) by adding ability to create, update and delete outgoing webhook instance
- First Public Release
- Initial Commit Release