Commit graph

2859 commits

Author SHA1 Message Date
Yulya Artyukhina
5fcff31e4a
Update CHANGELOG.md 2023-08-10 10:13:23 +02:00
Rares Mardare
e87bb912ae
Use UserSettingsWrite instead of OtherSettingsWrite for phone tab (#2772)
# What this PR does

Sets the correct permission when accessing Phone Verification screen
(Cloud/OSS)

## Which issue(s) this PR fixes

Fix for https://github.com/grafana/oncall/issues/2761

## 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-08-10 09:35:32 +03:00
Ildar Iskhakov
fd19dd422a
Use periodic task for heartbeats (#2723)
# 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)

---------

Co-authored-by: Joey Orlando <joey.orlando@grafana.com>
Co-authored-by: Michael Derynck <michael.derynck@grafana.com>
2023-08-10 02:25:00 +00:00
Vadim Stepanov
638c9a3142
Add instruction on removing nullable fields from Django models (#2659)
Adds an instruction on removing nullable fields without downtime.
2023-08-08 12:46:18 +00:00
Matias Bordese
a1a9e0c33c
Handle ical schedule import with duplicated event UIDs (#2760) 2023-08-07 13:11:46 +00:00
Vadim Stepanov
424b2b80f8
Add backend support for push notification sounds with custom extensions (#2759)
# What this PR does

Instead of always adding `.aiff` or `.mp3` at the end of notification
sound names depending on the platform (iOS vs Android), add them only if
no extension is present already. This should make it possible to use
sounds with custom extensions.

## 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-08-07 09:55:17 +00:00
Matias Bordese
bb9f647608
Filter out untaken swaps from final schedule and shift notifications (#2748)
Avoid creating (or notifying) about potential event splits resulting
from untaken swap requests.
2023-08-04 17:43:54 +00:00
Vadim Stepanov
bc78fc29e5
Revert "Enable push notifications for SSR beneficiary for testing purposes" (#2757)
Reverts grafana/oncall#2752
2023-08-04 16:13:03 +01:00
Maxim Mordasov
8412282569
merge final schedule in as less lines as possible (#2649)
# What this PR does

Merge final schedule in less rows

## Which issue(s) this PR fixes

[Final schedule shifts should lay in one
line](https://github.com/grafana/oncall/issues/1665)

## 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-08-04 14:46:54 +00:00
Joey Orlando
ceeb3b8f5b
remove shift swap feature flag (#2755) 2023-08-04 16:12:33 +02:00
Maxim Mordasov
8641349714
Shift Swap Requests - build out web UI changes (#2694)
# What this PR does

Shift Swap Requests - build out web UI changes

## Which issue(s) this PR fixes

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

## 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-08-04 13:33:11 +00:00
Matias Bordese
d0c5357600
Do not show override shortcut when web overrides are disabled (#2745)
Fixes https://github.com/grafana/oncall/issues/2387
2023-08-04 12:09:12 +00:00
Vadim Stepanov
62f993c9c9
Enable push notifications for SSR beneficiary for testing purposes (#2752) 2023-08-04 10:38:21 +01:00
Joey Orlando
f2b82f6c67
fix make start command when using mysql/postgres as db (#2744)
# What this PR does

Tested `make start` w/ both `mysql` and `postgres` in `COMPOSE_PROFILES`
and things spin up properly.

- Fixes some `yaml` formatting issues introduced
[here](https://github.com/grafana/oncall/pull/2728/files#diff-f5d10b03472abe3719098ae8a8855468e92524ebe790c39a34d2c632f3f0486d)
in #2728 which were causing the `mysql` container to fail to start up
when running `make start`
- Addresses #2492 by specifying `required: false` under `depends_on`,
for containers in `docker-compose-developer.yml` which have container(s)
which may be conditionally spun-up based on `COMPOSE_PROFILES`.
Basically in v2.20.2 they introduced [this
change](https://github.com/docker/compose/releases/tag/v2.20.2#:~:text=Add%20support%20of%20depends_on.required%20attribute%20by)
which was a breaking change for our setup and preventing us from
upgrading to >= 2.19.0.

## Which issue(s) this PR fixes

Closes #2492 

‼️ with this PR you will need to make sure you are running
`docker-compose` >= `v2.20.2`, otherwise 👇 ‼️


![image](https://github.com/grafana/oncall/assets/9406895/312bdeb7-e1c5-4774-b2e9-6facddd641c1)


## 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-08-03 11:50:40 -04:00
Vadim Stepanov
d5defd10d2
Add more logging for SlackUserGroup.update_oncall_members (#2741)
# What this PR does

Adds more logging for `SlackUserGroup.update_oncall_members` so it's
easier to debug.

## Which issue(s) this PR fixes

Related to https://github.com/grafana/support-escalations/issues/6936

## 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-08-03 15:25:37 +01:00
Vadim Stepanov
6f3c62e05f
Add stack slug to organization options for direct paging (#2743)
# What this PR does

Adds stack slug to organization options for `/escalate` (a single
Grafana org might have multiple stacks).

<img width="514" alt="Screenshot 2023-08-03 at 14 24 58"
src="https://github.com/grafana/oncall/assets/20116910/4a43867d-6f6e-4050-a30e-204aeaded663">

## 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-08-03 14:36:07 +01:00
Yulya Artyukhina
0494afac85
Update schedule slack notifications (#2710)
# What this PR does

Update schedule slack notifications to use schedule final events instead
of getting events from iCal

## 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-08-03 12:38:01 +00:00
Joey Orlando
767d2c493b
Update CHANGELOG.md 2023-08-03 06:33:39 -04:00
Joey Orlando
d6140cbe8d
Re-enable a few mypy rules + fix existing errors (#2725)
# What this PR does

Related to https://github.com/grafana/oncall/issues/2392

- Re-enable the following `mypy` rules + fix their pre-existing errors:
  - `no-redef`
  - `valid-type`
  - `var-annotated`
- Add stronger return typing to the `GrafanaAPIClient` by use of
generics + add some links to documentation in the method docstrings

## 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-08-03 09:43:03 +00:00
Joey Orlando
d7e2f7053d
API for grafana alerting (including test fix) (#2737)
# What this PR does

This PR is related to #2645. That PR was reverted in #2730. This reverts
the revert + adds a fix for the test that was failing

## 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)

---------

Co-authored-by: Innokentii Konstantinov <innokenty.konstantinov@grafana.com>
2023-08-03 05:12:52 -04:00
Joey Orlando
33c5e89299
remove unused dynamic settings (#2735)
# What this PR does

While working on https://github.com/grafana/oncall/pull/2734 I removed a
block of code that was the last reference to a dynamic setting
(`enabled_web_schedules_orgs`).

That led me to see which dynamic settings we still have references to
(at the database level), and create this cleanup migration for
deprecated dynamic settings.

## 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-08-03 05:11:52 -04:00
Joey Orlando
8e73de35b1
temporarily skip failing shift swap
request test
2023-08-03 10:03:00 +02:00
Joey Orlando
b26706e7e4
configure yamllint pre-commit step (#2728)
# What this PR does

Add [`yamllint`](https://github.com/adrienverge/yamllint) to
`pre-commit` configuration + fix pre-existing errors

## 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-08-03 02:35:08 -04:00
Joey Orlando
225e4e4882
remove django admin panel (#2731)
# What this PR does

Disables the Django admin panel + removes the URLs associated with it

**NOTE**: this doesn't affect things like `python manage.py
createsuperuser` which are still needed for a few things

## 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-08-02 14:26:50 -04:00
Joey Orlando
e3e4976c65
remove two unused feature flags (#2734)
# What this PR does

- Removes `FEATURE_WEB_SCHEDULES_ENABLED` and
`FEATURE_WEBHOOKS_2_ENABLED` feature flags as they are no longer needed
- Remove reference to `FEATURE_EXTRA_MESSAGING_BACKENDS_ENABLED` in
`./dev/.env.dev.example`. This also doesn't seem to be used in either
this repo or `oncall-private`

## 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-08-02 14:07:47 -04:00
Matias Bordese
935540e368
Update shift swap test to make it stable (#2732) 2023-08-02 17:10:23 +00:00
Michael Derynck
45e70ddd88
Increase max size of authorization_header in DB (#2720)
# What this PR does
Increase size of authorization_header for webhooks to accommodate more
data.

## 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-08-02 14:32:10 +00:00
Vadim Stepanov
cb73ddcf50
Adjust wording for Continue escalation if current time is in range (#2729)
Change wording to make sure it's clear UTC time is used for the
`Continue escalation if current time is in range` escalation step.

<img width="1249" alt="Screenshot 2023-08-02 at 14 37 22"
src="https://github.com/grafana/oncall/assets/20116910/92bf9a6f-2baa-42c4-a5c5-2bc8f1b9576e">
2023-08-02 14:59:41 +01:00
Joey Orlando
7d9622a641
Revert "Api for grafana alerting" (#2730)
Reverts grafana/oncall#2645
2023-08-02 09:44:45 -04:00
Maxim Mordasov
36f9851003
add a couple of tests for users screen (#2612)
# What this PR does

There are the following tests added:

 - admin is allowed to edit other profiles
 - editor is not allowed to edit other profiles

## Which issue(s) this PR fixes

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

## Checklist

- [x] 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: Rares Mardare <rares.mardare@grafana.com>
2023-08-02 15:42:48 +03:00
Joey Orlando
8eacbf2500
fix failing helm unit tests (#2727) 2023-08-02 08:22:31 -04:00
Innokentii Konstantinov
0da2122a50
Api for grafana alerting (#2645)
Adds api for integration between oncall and alerting
2023-08-02 20:16:53 +08:00
Innokentii Konstantinov
bb97bdde2d
Fix contact point auto-creation (#2721) 2023-08-02 20:13:47 +08:00
Vadim Stepanov
c855258018
Add mobile app push notifications for shift swap requests (#2717)
# What this PR does

Adds mobile app push notifications for shift swap requests.

## Which issue(s) this PR fixes

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

## 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-08-02 12:26:45 +01:00
Matias Bordese
2bc5c28777
Skip past due swap requests when calculating events (#2718) 2023-08-01 19:27:44 +00:00
Joey Orlando
8db1ea5235
remove some references to amixr (#2698)
# What this PR does

Update references to amixr in various spots in the docs/code + some
`.md` IDE autoformatter changes

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated (N/A)
- [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-08-01 14:22:42 -04:00
Joey Orlando
2576954b51
add shifts property to shift swap request response schema + finalize slack message layout (#2712)
# What this PR does

- drop `GET /api/internal/v1/shift_swaps/<id>/shifts` endpoint in favour
of adding a `shifts` property to the response schema for all shift swap
endpoints (expect `GET /api/internal/v1/shift_swaps` (ie. list all))
- Update the Slack message layout:

<img width="590" alt="Screenshot 2023-08-01 at 17 28 44"
src="https://github.com/grafana/oncall/assets/9406895/84a51614-5dd6-48ec-ae81-fef4bc32fec9">

**Note**: about the highlighted lines. This is a small issue w/ the
`ShiftSwapRequest.shifts` method. @matiasb is already helping out here 🙏

**Other stuff**
- adds some type hints related to the code I was working around with
- slightly refactor `apps.slack.utils.format_datetime_to_slack` to make
it more generic for the use case in this PR

## 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-08-01 14:21:02 -04:00
Matias Bordese
289573effe
Fix swap requests event filter limits (#2716) 2023-08-01 20:19:46 +02:00
Matias Bordese
26921fc67a
Fix final_events datetime filtering when splitting override (#2715) 2023-08-01 15:32:51 +00:00
Rares Mardare
3f723a092d
minor tweaks to amv2 (#2708)
UI tweaks for amv2
2023-08-01 16:54:08 +03:00
Nelson
66e59adbca
fix bug introduced by #2655 (#2711)
# What this PR does
fixes a bug introduced in #2655 where the `topologySpreadConstraints`
helm values are not scoped correctly on the engine template.

## Which issue(s) this PR fixes
closes #2655 

## 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: Joey Orlando <joey.orlando@grafana.com>
2023-08-01 11:13:02 +00:00
Vadim Stepanov
5db9b64774
netcat -> netcat-traditional 2023-08-01 10:32:14 +01:00
Vadim Stepanov
6866e54a2f
Bump Python version in CI to 3.11.4 (#2707)
Following up on https://github.com/grafana/oncall/pull/2680
2023-08-01 10:11:05 +01:00
Innokentii Konstantinov
5538a80ba1 Fix GrafanaAlertingAPIView 2023-08-01 16:00:50 +08:00
Innokentii Konstantinov
63a66cce2c Merge branch 'main' into dev
# Conflicts:
#	docs/sources/get-started/_index.md
#	docs/sources/integrations/zabbix/index.md
2023-08-01 14:19:23 +08:00
Innokentii Konstantinov
0d801cc707 Merge remote-tracking branch 'origin/dev' into dev
# Conflicts:
#	engine/apps/integrations/views.py
2023-08-01 13:38:24 +08:00
Innokentii Konstantinov
7c4f72c348 Fix num_firing/resolved calculation 2023-08-01 13:37:31 +08:00
Innokentii Konstantinov
4ef923a756 Fix num_firing/resolved calculation 2023-08-01 13:35:41 +08:00
Innokentii Konstantinov
abca37e621
Polish amv2 (#2701) 2023-08-01 13:13:58 +08:00
Innokentii Konstantinov
a9b311f46b Fix indentation for AM payload example 2023-08-01 12:34:08 +08:00