Commit graph

5007 commits

Author SHA1 Message Date
Michael Derynck
10a74e3c21
Add reset button to disable integration heartbeat (#3959)
# What this PR does
Add a button to reset integration heartbeat into the state before it
received its first request. This has the effect of disabling the
heartbeat until a request starts it up again.

## Which issue(s) this PR fixes
#3956 

## 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)
2024-03-04 19:20:00 +00:00
Joey Orlando
bc644098a5
Merge pull request #4003 from grafana/helm-release/1.3.109
Merge: Release oncall Helm chart 1.3.109
2024-03-04 13:54:53 -05:00
GitHub Actions
9377029128 Release oncall Helm chart 1.3.109 2024-03-04 17:45:22 +00:00
Matias Bordese
41b3b1492e
Merge pull request #4002 from grafana/dev
v1.3.109
2024-03-04 14:44:00 -03:00
Matias Bordese
e48349ffcb
Update CHANGELOG.md (#4001) 2024-03-04 17:20:02 +00:00
Dominik Broj
abdb62545a
Use autogenerated types for alert groups (#3991)
# What this PR does

## Which issue(s) this PR fixes

## 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)
2024-03-04 13:31:03 +00:00
Rares Mardare
3a76892df8
Check if base element exists when dragging the rotation form (#3986)
# What this PR does

Right now depending on whether the left bar is pinned or not, the
existing base element (this is to determine the dragging margins) query
might fail if it cannot find the expected element. Added a check to see
whether it exists or not.
2024-03-04 11:43:09 +00:00
Rares Mardare
20973705e9
Refactored Integration Form to use react-hook-form + ServiceNow changes (#3979)
# What this PR does

- Migrates old Integration form to use `react-hook-form` instead
- Adds new ServiceNow fields (no backend yet)

## 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)
2024-03-04 11:43:05 +00:00
Dominik Broj
84b6b7cd29
update changelog (#3998)
# What this PR does
- missing changelog update

## 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)
2024-03-04 11:06:21 +00:00
Dominik Broj
963a1d81b0
Support nullable shift.by_day (#3990)
# What this PR does

- handle nullable shift.by_day

## Which issue(s) this PR fixes

https://github.com/grafana/support-escalations/issues/9548

## 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)
2024-03-04 09:35:35 +00:00
Innokentii Konstantinov
16f2e6ecee
Use uwsgi instrumentation and log request headers (#3997)
# What this PR does
Use uwsgi instead of TracingMiddleware to not to mess up with span
attrs. Also it's an attempt to fix different trace IDs between
cortex-gw, oncall and labels plugin. Last, but not least - add a
middleware to log request headers if OTEL is enabled. It's needed to
debug tracing headers
2024-03-04 09:25:39 +00:00
Dominik Broj
166aee354b
Remove add-to-project job (#3996)
# What this PR does

- Remove add-to-project job

## 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)
2024-03-04 08:26:07 +00:00
Marco Schaefer
88e27810d1
fe-o11-team/upgrade-faro-and-adjust-config (#3988)
# What this PR does
* Upgrade Faro to v1.4.0
* Adjust Faro config to the new version
* Set some sane defaults

## Which issue(s) this PR fixes
* It uses `getWebInstrumentations()` to ensure that if new instruments
are added they automatically included without touching the code. This
ensures compatibility with new frontend-obervabillity features.
* Remove the old `session` object which is not available in the config
anymore.
* Enable persistent sessions
- With the new session manager Faro persists session across pageloads
and, if `persistent` session are enabled accross windows as well.
* Adding `beforeSend` hook to filter out events which do not belong to
the grafana-oncall-ap. Background: a Faro instance can not auto scope
events to a subtree of the DOM and will always capture events from the
whole window. It's advisable to filter out unrelated events.

## 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: Rares Mardare <rares.mardare@grafana.com>
2024-03-04 07:46:30 +00:00
Innokentii Konstantinov
f6d0441411
Add trace_id to log lines (#3982)
# What this PR does
This PR set up tracing to propagates trace_id to log lines.
There are two different tracers: local one in manage.py - it's used when
app is started via manage.py runserver. In this case spans will be just
written in console. Second traces is confugured in wsgi.py. It will be
used when app is runned via uwsgi and it will export traces via grpc.
Feature is hidden behind the feature flag.
2024-03-04 06:42:43 +00:00
Dominik Broj
1965262e28
Enable / disable SNOW webhook (#3985)
# What this PR does

- enable / disable SNOW webhook

## Which issue(s) this PR fixes

https://github.com/grafana/oncall-private/issues/2462

## 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)
2024-03-01 12:52:39 +00:00
Dominik Broj
8f3e8ff06e
Snow integration webhooks CRUD (#3981)
# What this PR does
- implement CRUD for SNOW integration webhooks

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

## 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)
2024-02-29 14:31:33 +00:00
github-actions[bot]
621affda8b
Update make docs procedure (#3978)
Co-authored-by: grafanabot <bot@grafana.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2024-02-29 11:55:57 +00:00
Dominik Broj
fc869893f1
update (#3980)
# What this PR does

- fix showing selected value if it's not retrieved by get items request

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


## 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)
2024-02-29 09:48:00 +00:00
Rares Mardare
1db80b5600
Added --max-warnings=0 to eslint:fix command (#3971)
`--max-warnings=0` to force fix any remaining eslint warnings

(Some rules can't be forced fixed, by design)
2024-02-29 09:22:41 +00:00
Rares Mardare
8b39546de0
Update faro package to 1.3.9 (#3970)
# What this PR does

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

## 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)
2024-02-29 08:41:44 +00:00
Joey Orlando
9b4f6c6427
Merge pull request #3974 from grafana/helm-release/1.3.108
Merge: Release oncall Helm chart 1.3.108
2024-02-28 19:01:01 +00:00
GitHub Actions
23057b4a44 Release oncall Helm chart 1.3.108 2024-02-28 18:07:32 +00:00
Michael Derynck
bb7d0aaf21
Merge pull request #3973 from grafana/dev
Dev to main
2024-02-28 11:06:13 -07:00
Michael Derynck
cd55301a76
Update CHANGELOG.md 2024-02-28 10:53:20 -07:00
Michael Derynck
f6b6b2c29a
Update CHANGELOG.md 2024-02-28 10:38:11 -07:00
Dominik Broj
7794246efb
Brojd/connect integration to snow (#3968)
# What this PR does


https://github.com/grafana/oncall/assets/12073649/0dad62c2-d722-4f5b-aee6-549dc97902cd


## 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)
2024-02-28 12:19:18 +00:00
Dominik Broj
f886fee93c
Fetch selected value of notify schedule in escalation policy (#3969)
# What this PR does

- Fetch selected schedule on mount which is not done as soon as schedule
is not on the first page
- Add missing observer decorator
- Fix incorrect HTTP calls when creating integrations
https://raintank-corp.slack.com/archives/C04JCU51NF8/p1708703429829919

## Which issue(s) this PR fixes

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

## 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)
2024-02-28 11:27:57 +00:00
Dominik Broj
bec2589b43
Deploy PR e2e test report to GH Pages (#3952)
# What this PR does
- publish Playwright HTML report to GH Pages
- turn off video recordings


## 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)
2024-02-28 06:13:26 +00:00
Michael Derynck
6148bbbd62
Fix path for plugin release publish (#3967)
# What this PR does
Fixes the path of the plugin file to public. Leftover from last round of
build changes

## Which issue(s) this PR fixes

## Checklist

- [ ] 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)
2024-02-28 00:41:14 +00:00
Joey Orlando
01ddf8b084
v1.3.107 2024-02-27 20:17:46 +00:00
Joey Orlando
8f105bc3b7
Merge branch 'main' into dev 2024-02-27 20:17:36 +00:00
Joey Orlando
29f83c0afb
Update CHANGELOG.md 2024-02-27 15:15:03 -05:00
Joey Orlando
9d8de8542f
fix information architecture for mobile app docs (#3963)
# What this PR does

**Before**
Notice
["Schedules"](https://grafana.com/docs/oncall/latest/mobile-app/schedules/)
and ["On-call status and
shifts"](https://grafana.com/docs/oncall/latest/mobile-app/on-call-status-and-shifts/)
pages, they should not be at the top level like this:
<img width="304" alt="Screenshot 2024-02-27 at 12 38 47"
src="https://github.com/grafana/oncall/assets/9406895/c9ae7341-0889-4621-89af-2a2c995db4d6">

**After**
<img width="286" alt="Screenshot 2024-02-27 at 12 47 00"
src="https://github.com/grafana/oncall/assets/9406895/c1316d33-4672-4fad-b748-4cc55c0f6dc4">


## 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)
2024-02-27 15:04:54 -05:00
Michael Derynck
2c7ebcf87c
Add task to delete empty deleted integrations from the database (#3941)
# What this PR does
Add task which will cleanup deleted integrations from the database if
they don't have any alert groups. This is to help address an issue where
queries are slowing down due to having a large numbers of ids that do
not contribute to the result.

This will be connected as part of sync organization task once it tests
out ok.

## Which issue(s) this PR fixes

## 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)
2024-02-27 17:34:41 +00:00
Joey Orlando
9c0bc26680
Fix daily e2e tests GitHub Actions cron job (#3923)
# What this PR does

- fixes our e2e tests to work on all tested versions
- updates Grafana versions that we run the daily e2e tests against (bump
`10.0.2` to `10.0.11` + add `10.1.7` tags)
- updates the Slack status message format + change channel from
#irm-amixr-flux to #gops-oncall-dev

<img width="1479" alt="Screenshot 2024-02-24 at 08 30 06"
src="https://github.com/grafana/oncall/assets/9406895/f5cb91f8-12ce-4978-9c37-c72ee8a01e4b">


## NOTE
It looks like we have some e2e tests that fail under the following
circumstances:
- on Firefox or WebKit
- on Grafana 10.2 and 10.3 (once we fix these, we should [update our e2e
tests that run on all PR
builds](https://github.com/grafana/oncall/blob/dev/.github/workflows/linting-and-tests.yml#L325)
to run against `10.3.3` which is the current latest major version
available)

## 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)
2024-02-27 09:21:53 -05:00
Dominik Broj
f8e4360c16
minor UI tweaks for webhooks (#3961)
# What this PR does
minor UI tweaks for webhooks

## 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)
2024-02-27 13:21:41 +00:00
Vadim Stepanov
7549a688b0
Integration webhooks API (#3954)
# What this PR does

Adds internal API endpoints for
`alert_receive_channels/<id>/webhooks/<webhook_id>`.

## Which issue(s) this PR fixes

Related to https://github.com/grafana/oncall-private/issues/2541

## 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)
2024-02-27 08:12:21 +00:00
Dominik Broj
c2ffd28675
Snow outgoing webhooks tab (#3918)
# What this PR does
- implement visual part of ServiceNow Outgoing Tab
- reuse created components on outgoing webhooks page
- make yarn:lint:fix to remove unused imports
- fix live reload during development
- remove unused babel dependencies

## Which issue(s) this PR fixes
- https://github.com/grafana/oncall/issues/3408
- partially https://github.com/grafana/oncall-private/issues/2462

## 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)
2024-02-26 13:52:26 +00:00
Matias Bordese
19b5c6553c
Add is_from_connected_integration field to webhook model (#3951)
Related to https://github.com/grafana/oncall-private/issues/2541.
2024-02-23 15:57:57 +00:00
Matias Bordese
d2917373b7
Migrate webhooks integration_filter to use a m2m field instead (#3946)
Related to https://github.com/grafana/oncall-private/issues/2541
2024-02-23 11:55:44 +00:00
Matias Bordese
1a8e4fef40
Update OrderedModel.swap to retry on IntegrityError (#3940)
Related to https://github.com/grafana/oncall-private/issues/2386.

Issue seems related to [multiple concurrent Terraform-triggered
updates](https://ops.grafana-ops.net/explore?schemaVersion=1&panes=%7B%22j0s%22:%7B%22datasource%22:%22000000193%22,%22queries%22:%5B%7B%22refId%22:%22B%22,%22expr%22:%22%7Bcluster%3D%5C%22prod-eu-west-0%5C%22,%20namespace%3D%5C%22amixr-prod%5C%22%7D%20%7C%3D%20%5C%22logger%3Dinsight_logger%20tenant_id%3D735393%5C%22%20%7C%3D%20%5C%22resource_type%3Droute%5C%22%22,%22queryType%22:%22range%22,%22datasource%22:%7B%22type%22:%22loki%22,%22uid%22:%22000000193%22%7D,%22editorMode%22:%22code%22%7D%5D,%22range%22:%7B%22from%22:%221707813893526%22,%22to%22:%221707815856774%22%7D%7D%7D&orgId=1
) changing the route order to zero (and eventually succeeding)

Sample test run with the failing error:
```
========================================== short test summary info ===========================================
FAILED common/tests/test_ordered_model.py::test_ordered_model_swap_all_to_zero - assert not [DoesNotExist(), IntegrityError(1062, "Duplicate entry 'test-0' for key 'base_testorderedmodel...
======================================= 1 failed, 5 warnings in 34.39s =======================================
make: *** [Makefile:283: run-backend-test] Error 1
```
2024-02-22 20:51:05 +00:00
Joey Orlando
182ee2fad7
fix e2e tests (#3950)
# Which issue(s) this PR fixes

Fix failing e2e tests on `dev`

## 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: Dominik <dominik.broj@grafana.com>
2024-02-22 19:41:21 +00:00
Joey Orlando
666fc76cef
fix process is not defined UI issue (#3948)
# Which issue(s) this PR fixes

Based on [this change
here](ad58d0ce28 (diff-2e7af29d1cb367637d55778cb13b7d3c6b4d520a5fda37ff891bce40a1552710R39-R46)).
Should fix this issue 👇:
![Screenshot 2024-02-22 at 14 18
57](https://github.com/grafana/oncall/assets/9406895/a54c1b49-f37e-47f8-85e1-3e8f1bdd5944)


## 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: Dominik Broj <dominik.broj@grafana.com>
2024-02-22 16:56:34 +01:00
Vadim Stepanov
289c0c736b
Update CHANGELOG.md (#3949) 2024-02-22 15:05:41 +00:00
Vadim Stepanov
2b5554c079
Remove explicit request size limits (#3878)
# What this PR does

Remove explicit request size limits both for uwsgi & Django. After this
change, the effective request size limit will be 2.5MB as the default
Django value for
[DATA_UPLOAD_MAX_MEMORY_SIZE](https://docs.djangoproject.com/en/4.2/ref/settings/#data-upload-max-memory-size).

## 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)
2024-02-22 15:00:33 +00:00
Vadim Stepanov
5b37a7d2ef
fix yarn.lock drift (#3938)
committing `yarn.lock` changes that I get after running `make init`
2024-02-22 14:55:50 +00:00
Dominik Broj
8fe2b22f5d
Brojd/plugin fixes (#3947)
## Which issue(s) this PR fixes
- use correct webpack merge strategy
- 
## 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)
2024-02-22 15:17:50 +01:00
Dominik Broj
8ccd7c26f0
Brojd/plugin fixes (#3943)
# What this PR does

## Which issue(s) this PR fixes

## 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)
2024-02-22 14:37:03 +01:00
Michael Derynck
b7d03489ea
Add status debug to oss plugin publish (#3934)
# What this PR does
Step failure is intermittent add debugging to see what status code we
are getting. If 5xx we can use --retry. If 4xx we will need a different
approach.

## Which issue(s) this PR fixes
#3921 

## Checklist

- [ ] 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)
2024-02-21 13:55:44 -07:00
Michael Derynck
40e6c635dc
Fix for update to axios that changed how paramsSerializer is setup (#3939)
# What this PR does
Fixes the issue that after axios was updated the paramsSerializer was
not being set correctly. I am not sure if there are other changes we
need to make after updating. No changelog as the version with the issue
has not been released.

## Which issue(s) this PR fixes

## Checklist

- [ ] 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)
2024-02-21 11:52:15 -07:00