Commit graph

2023 commits

Author SHA1 Message Date
Joey Orlando
ed9371d11e
run e2e tests against grafana 8.5.22 on CI job (#1729) 2023-04-12 12:56:14 +02:00
Yulia Shanyrova
62a0961b81
creating escalation chain from integration fix (#1733)
# What this PR does
It was a bug
https://raintank-corp.slack.com/archives/C0415S5L76Y/p1681287849538729
2023-04-12 09:50:02 +00:00
Yulya Artyukhina
f61af74411
Add mobile app auth for notification_policies endpoint (#1725)
Add mobile app authentication for `notification_policies` endpoint
2023-04-11 16:36:46 +00:00
Matvey Kukuy
1d096b2fb4 Readme updates 2023-04-11 15:46:21 +03:00
Matvey Kukuy
e14cf8f269 Readme updates 2023-04-11 15:43:52 +03:00
Rares Mardare
5b1ce3988e
Fix a bug in GForm (#1712)
# What this PR does

Fixed `onChange` handler within `GForm` component
2023-04-11 12:23:55 +03:00
Matias Bordese
2fbf3f503d
Add more context data to webhook templating (#1706)
Enable additional context data when building webhooks payload.
2023-04-06 17:52:23 +00:00
Ildar Iskhakov
6884a42603
Update CHANGELOG.md 2023-04-06 13:41:29 +08:00
Matias Bordese
bc1ca0f376
Add user endpoint to get upcoming shifts details (#1705)
Add internal API endpoint to get users' upcoming shifts:
`GET /api/internal/v1/users/<USER PK>/upcoming_shifts`

Related to https://github.com/grafana/oncall-private/issues/1602.
2023-04-05 20:19:02 +00:00
Ashley Harrison
b27fb94fbb
Docs: change 'Alerts & incidents' to 'Alerts & IRM' in the docs (#1699)
# What this PR does

- changes `Alerts & incidents` to `Alerts & IRM` in the docs

## Which issue(s) this PR fixes

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required)
2023-04-05 12:37:04 +00:00
Matias Bordese
2a89374adf
Add escalation chain support for new webhooks (#1654)
Allow setting a webhook as escalation chain policy step.
2023-04-05 12:03:55 +00:00
Maxim Mordasov
617c7bf724
Restore escalation policy importance explanations (#1702)
# What this PR does

Restore escalation policy importance explanations

## Which issue(s) this PR fixes

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required)
2023-04-05 10:11:16 +00:00
Ildar Iskhakov
498e7ed5f3
Allow editing assigned team via public api (#1619)
# What this PR does

For example, changing the integration's team
```
curl "localhost:8080/api/v1/integrations/CLYV3QBVHDV3T/" \
  --request PUT \
  --header "Authorization: meow" \
  --header "Content-Type: application/json" --data '{"team_id": "TWP6JJJN6LYZX"}'
```

## Which issue(s) this PR fixes

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required)
2023-04-05 06:39:30 +00:00
Joey Orlando
42291748b5
temporarily disable e2e CI job (#1693)
Will re-enable them (and set this job as a required passing build step)
once all of the sub-tasks of
https://github.com/grafana/oncall/issues/1692 are fixed
2023-04-04 08:54:34 +02:00
Ildar Iskhakov
27b5ffad88
Update CHANGELOG.md 2023-04-04 11:59:53 +08:00
Ildar Iskhakov
840669235a
Disable mentions when resolution note is created (#1696)
# What this PR does

## Which issue(s) this PR fixes

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required)
2023-04-04 11:57:38 +08:00
Ildar Iskhakov
532996176a
Display warnings on users page in a clean and consistent way (#1681)
# What this PR does

Before:
<img width="942" alt="Screenshot 2023-03-31 at 10 00 25"
src="https://user-images.githubusercontent.com/2262529/229003826-1f42820f-6997-4fec-82ed-acf4355b6758.png">


After:
<img width="937" alt="Screenshot 2023-03-31 at 09 59 22"
src="https://user-images.githubusercontent.com/2262529/229003723-6ac1743d-316f-4272-a73a-a1bebb27618f.png">


## Which issue(s) this PR fixes


## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required)
2023-04-03 18:18:59 +08:00
Joey Orlando
c4f2b28c2f
update changelog 2023-04-03 11:50:55 +02:00
Joey Orlando
0b23ad3d24
fix changelog 2023-04-03 11:50:00 +02:00
Vadim Stepanov
47b0ab4465
PD migrator: include service & integration names to ruleset (#1687)
# What this PR does
Allows to include service & integration names to migrated ruleset name
when passing `EXPERIMENTAL_MIGRATE_EVENT_RULES_LONG_NAMES=True`.
2023-03-31 18:12:45 +01:00
Vadim Stepanov
cf026c6c9a
PD migrator: migrate push notification user rules (#1685) 2023-03-31 14:53:27 +01:00
Rares Mardare
0acac58af0
Incidents mapped to /alert-groups (#1678)
# What this PR does

Reopened old reverted PR that @Ukochka worked on. In addition it has
fixed the redirect from `?page=incident` to `/alert-groups`

---------

Co-authored-by: Yulia Shanyrova <yulia.shanyrova@grafana.com>
Co-authored-by: Joey Orlando <joey.orlando@grafana.com>
2023-03-31 09:54:01 +00:00
Maxim Mordasov
2b3e269e28
Save selected teams filter in local storage (#1613)
# What this PR does

Selected teams filter is now saved in local storage

## Which issue(s) this PR fixes

https://github.com/grafana/oncall/issues/1611

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [x] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required)

---------

Co-authored-by: Joey Orlando <joey.orlando@grafana.com>
2023-03-31 09:12:21 +00:00
Maxim Mordasov
11d62245e9
fix safari scroll (#1663)
# What this PR does

Fix  scroll in Safari

## Which issue(s) this PR fixes

https://github.com/grafana/oncall/issues/415

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [x] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required)

---------

Co-authored-by: Joey Orlando <joseph.t.orlando@gmail.com>
Co-authored-by: Joey Orlando <joey.orlando@grafana.com>
2023-03-30 18:17:58 +00:00
Vadim Stepanov
ac57c8ee9f
Fix team search (#1680)
# What this PR does

Team search doesn't work when filtering by team:

<img width="331" alt="Screenshot 2023-03-30 at 15 48 50"
src="https://user-images.githubusercontent.com/20116910/228875971-0f55bdf8-6aa7-4759-9882-cdf7d11bb0c7.png">

This PR fixes it + adds backend unit tests.


## Checklist

- [x] Unit, integration, and e2e (if applicable) tests updated
- [x] Documentation added (or `pr:no public docs` PR label added if not
required)
- [x] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required)
2023-03-30 15:34:55 +00:00
Joey Orlando
73343d4da8
Update CHANGELOG.md 2023-03-30 14:05:30 +02:00
Matias Bordese
f0c73ccc39
RRULE until values must be specified in UTC tz (#1661)
When generating ical information for an event, the RRULE until value
must be specified in UTC.

Related to https://github.com/grafana/support-escalations/issues/5426.
2023-03-30 13:53:39 +02:00
Matvey Kukuy
1b0d385435
GH Action to add OSS issues to team's kanban board (#1674)
Internal.
2023-03-30 14:53:08 +03:00
Vadim Stepanov
83504b15e4
Revert "Collection of bugs" (#1671)
Reverts grafana/oncall#1600 as it makes Slack links not working
correctly with the plugin UI.
2023-03-30 12:44:41 +01:00
Vadim Stepanov
9fca66d869
Changelog v1.2.4 (#1668) 2023-03-30 10:47:53 +01:00
Maxim Mordasov
061123e124
Allow changing team for escalation chains (#1658)
# What this PR does

Allows changing team for escalation chains

## Which issue(s) this PR fixes

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required)

---------

Co-authored-by: Ildar Iskhakov <ildar.iskhakov@grafana.com>
Co-authored-by: Vadim Stepanov <vadimkerr@gmail.com>
2023-03-30 10:43:00 +01:00
Yulia Shanyrova
871b09a04c
Collection of bugs (#1600)
# What this PR does
List of fixes:

- Incident word removed from the url to `/alert-groups` page and
`/alert-group/{id}`
- Incident word removed from other parts of UI (Maintenance page, Linked
alert groups, Templates)
- Sticky rotation form was fixed at Schedules (when you scroll down and
open Layer 1)
- Integrations linked to Escalations chains are displayed right after
loading the page
- Autoresolve condition link to Alert behaviour template

## Which issue(s) this PR fixes
https://github.com/grafana/oncall/issues/1490
https://github.com/grafana/oncall/issues/1489
https://github.com/grafana/oncall/issues/1486

---------

Co-authored-by: Joey Orlando <joey.orlando@grafana.com>
Co-authored-by: Rares Mardare <rares.mardare@grafana.com>
2023-03-30 05:49:06 +00:00
Vadim Stepanov
3c00345f54
Fix Grafana teams sync (#1652)
# What this PR does
Sometimes plugin sync fails with the following exception:
```
Cannot delete or update a parent row: a foreign key constraint fails (`schedules_oncallschedule`, CONSTRAINT `alerts_oncallschedul_team_id_4e633f4b_fk_user_mana` FOREIGN KEY (`team_id`) REFERENCES `user_management_team` (`id`))'
```

How to reproduce:
1. Create a new Grafana team
2. Create two schedules with different types (e.g. ICal and Web) and
assign both schedules to the new team
3. Delete the team in Grafana
4. Trigger plugin sync, the sync will fail with the exception above

This happens because the `OnCallSchedule` Django model is a polymorphic
model and there's a [known
bug](https://github.com/django-polymorphic/django-polymorphic/issues/229)
in `django-polymorphic` with deleting related objects when using
`SET_NULL` and `CASCADE`. This PR adds non-polymorphic versions of
`SET_NULL` and `CASCADE` to use in schedule FKs as per this
[comment](https://github.com/django-polymorphic/django-polymorphic/issues/229#issuecomment-398434412).

This also applies to two other schedule FKs: `organization` and
`user_group`, which are not working properly as well.

## Checklist

- [x] Unit, integration, and e2e (if applicable) tests updated
- [x] Documentation added (or `pr:no public docs` PR label added if not
required)
- [x] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required)
2023-03-28 18:26:24 +00:00
Vadim Stepanov
f83c5fca52
PD migrator: retry on network errors (#1650) 2023-03-28 16:57:37 +01:00
Yulia Shanyrova
63af99eb75
Refactoring of isInWorkingHours method (#1574)
# What this PR does
Instead of using string comparing now isBetween method from dayjs is
used

## Which issue(s) this PR fixes
https://github.com/grafana/oncall/issues/1418

---------

Co-authored-by: Joey Orlando <joey.orlando@grafana.com>
2023-03-28 14:45:47 +00:00
Rares Mardare
30103762db
Fix for viewer permissions when viewing users in schedule (#1648)
# What this PR does

Fix for #999
2023-03-28 14:04:42 +00:00
Joey Orlando
3e41cf8747
Update CHANGELOG.md 2023-03-28 13:33:51 +02:00
Salvatore Giordano
1c3c8e05bd
Update apns payload with corrected critical field (#1646)
I just noticed that ios notifications are always critical, even when the
switch ("override DND") is set to `false`. I believe this is because
`critical` should be either 1 or 0

https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/generating_a_remote_notification#2990112

---------

Co-authored-by: Joey Orlando <joseph.t.orlando@gmail.com>
Co-authored-by: Joey Orlando <joey.orlando@grafana.com>
2023-03-28 10:57:40 +00:00
Ethan
fb046b3abd
Snyk monitor workflow change (#1549)
# What this PR does
Replaces `snyk test` with `snyk monitor` so results get pushed to out
Snyk platform and the [Snyk
Dashboards](https://ops.grafana-ops.net/d/H0w7l5NVk/snyk-overview?orgId=1)
gets updated.

## Which issue(s) this PR fixes

## Checklist

- [ ] Tests updated
- [ ] Documentation added
- [ ] `CHANGELOG.md` updated
2023-03-28 08:26:29 +00:00
Joey Orlando
0eb4bd95e6
Revert "Revert "speed up ci builds from 15 to <7 minutes"" (#1643)
Reverts grafana/oncall#1639
2023-03-28 09:34:03 +02:00
Joey Orlando
61608beee6
fix failing drone ci builds (#1642) 2023-03-28 09:33:37 +02:00
Ildar Iskhakov
b707a7337e Specify celery worker queue in pyroscope tags 2023-03-28 13:26:03 +08:00
Ildar Iskhakov
e0dd4bd128
Update wsgi.py 2023-03-28 13:11:22 +08:00
Innokentii Konstantinov
cbb06492ae
Revert "speed up ci builds from 15 to <7 minutes" (#1639)
Reverted due to stuck ci
2023-03-28 13:01:49 +08:00
Ildar Iskhakov
5008d83573
Fix failing ci task (#1640)
# What this PR does

## Which issue(s) this PR fixes

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required)
2023-03-28 12:42:27 +08:00
Innokentii Konstantinov
12b9a8e0d2
Slack team connector v2 (#1581)
# What this PR does
Support Slack team connector v2 introduced
[here](https://github.com/grafana/oncall-gateway/pull/24)
2023-03-28 03:27:45 +00:00
Ildar Iskhakov
c158c8f28b
Configure pyroscope (#1638)
# What this PR does

## Which issue(s) this PR fixes

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required)
2023-03-28 11:34:37 +08:00
Joey Orlando
23cd736c30
speed up ci builds from 15 to <7 minutes (#1615)
This PR cuts GitHub Action build times from 14-15 minutes, down to just
under 7 minutes. It does this by:
- caching `grafana-plugins/node_modules` and `pip` dependencies based on
their respective dependency files (eg. `requirements.txt` &
`yarn.lock`). This step alone saves ~3 minutes.
- get rid of the "build-engine-docker-image" and
"backend-integration-tests" jobs in the old "Integration Tests"
workflow. This was split out this way so that we could build the backend
docker image once, upload the artifact, and then reuse it across the
backend and e2e tests. We no longer need these backend integration tests
because we are testing the same thing in the e2e tests. This saves ~45
seconds of having to upload the image artifact.
- few improvements within the integration tests themselves:
- move plugin configuration to the `globalSetup.ts`. This means that
every test does not need to check if the plugin has been configured
because it is done once before all the tests are run.
- cache the plugin frontend build. If your commit doesn't change
anything to `grafana-plugin/src` or `grafana-plugin/yarn.lock` it should
be safe to reuse a previously built/cached version of the plugin
frontend. This saves ~3 minutes
- cache playwright binaries/dependencies. Only re-install them if the
version of `@playwright/test` in `grafana-plugin/yarn.lock` changes.
This saves ~3 minutes.
  
**Other things to mention**
Once we refactor the `GSelect` component to not call the `onChange`
callback on every keyDown event (#1628), this should allow us to
parallelize the integration tests, and cut the time required to execute
the tests themselves in half
2023-03-27 18:07:19 +02:00
Vadim Stepanov
f44a4f40a3
v1.2.2 changelog (#1631) 2023-03-27 15:28:39 +01:00
Vadim Stepanov
ec5472cd6d
Support notification priority in FCM relay (#1630)
# What this PR does
Adds support for notification priority in FCM relay + add some tests on
FCM relay.

## Which issue(s) this PR fixes
Related to https://github.com/grafana/oncall/issues/1550 and
https://github.com/grafana/oncall/pull/1612.

## Checklist

- [x] Unit, integration, and e2e (if applicable) tests updated

No changelog update since notification priority is "Unreleased":
a2caeae3c7/CHANGELOG.md (unreleased)
2023-03-27 14:36:51 +01:00