Commit graph

4786 commits

Author SHA1 Message Date
grafana-irm-app[bot]
386c4d3880
Merge pull request #5210 from grafana/helm-release/1.11.5
Merge: Release oncall Helm chart 1.11.5
2024-10-24 19:24:33 +00:00
GitHub Actions
8777f33241 Release oncall Helm chart 1.11.5 2024-10-24 19:24:13 +00:00
Matias Bordese
d8e4e1d6a0
Merge pull request #5208 from grafana/dev
v1.11.5
2024-10-24 15:51:49 -03:00
Matias Bordese
6254407c53
Disable e2e tests for grafana latest (#5207) 2024-10-24 18:24:25 +00:00
Matias Bordese
1b8eddd159
Merge pull request #5206 from grafana/dev
v1.11.4
2024-10-24 14:19:50 -03:00
Matias Bordese
9a929e2459
Add org setting to configure direct paging preferred policy (#5189)
For context:
https://raintank-corp.slack.com/archives/C01DHQ6LH1S/p1729267368387299?thread_ts=1729185737.051889&cid=C01DHQ6LH1S

Next steps:
- use the setting in frontend (add participants, add responders) and
mobile_app
  - expose setting in org settings page
2024-10-24 16:52:40 +00:00
Yulya Artyukhina
58d73742ea
Add openAPI schema for some internal endpoints (#5037)
# What this PR does
Adds openAPI schema for following endpoints:
- /escalation_chain
- /escalation_policy
- /channel_filter
- /user_notification_policy

## Which issue(s) this PR closes

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

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [x] Documentation added (or `pr:no public docs` PR label added if not
required)
- [x] Added the relevant release notes label (see labels prefixed w/
`release:`). These labels dictate how your PR will
    show up in the autogenerated release notes.

---------

Co-authored-by: Vadim Stepanov <vadimkerr@gmail.com>
2024-10-24 09:24:36 +00:00
Michael Derynck
8d9014e33a
Allow more escalation step wait times over public api (#5201)
# What this PR does
Remove restriction on wait times when changing escalation step wait
times. 60-86400 seconds values are accepted.

https://github.com/grafana/terraform-provider-grafana/pull/1855 removes
the restriction in the terraform provider.

## Which issue(s) this PR closes

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

<!--
*Note*: If you want the issue to be auto-closed once the PR is merged,
change "Related to" to "Closes" in the line above.
If you have more than one GitHub issue that this PR closes, be sure to
preface
each issue link with a [closing
keyword](https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests#linking-a-pull-request-to-an-issue).
This ensures that the issue(s) are auto-closed once the PR has been
merged.
-->

## 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] Added the relevant release notes label (see labels prefixed w/
`release:`). These labels dictate how your PR will
    show up in the autogenerated release notes.
2024-10-23 18:19:01 +00:00
Matias Bordese
8dc90230d7
Update shift change notification to consider microsecond timestamps (#5196)
Related to https://github.com/grafana/support-escalations/issues/12893
2024-10-21 16:48:07 +00:00
grafana-irm-app[bot]
c49cef7839
Merge pull request #5194 from grafana/helm-release/1.11.3
Merge: Release oncall Helm chart 1.11.3
2024-10-18 06:54:58 +00:00
GitHub Actions
7c972ba68a Release oncall Helm chart 1.11.3 2024-10-18 06:54:40 +00:00
Ildar Iskhakov
b15c4f7729
Merge pull request #5193 from grafana/dev
v1.11.3
2024-10-18 14:39:15 +08:00
Ildar Iskhakov
c01034c90e
Remove deprecated identify slack scope (#5192)
# What this PR does
Tested on dev (by manually changing the sign in URL in oauth flow). All
works correctly


## Which issue(s) this PR closes

Related to [issue link here]

<!--
*Note*: If you want the issue to be auto-closed once the PR is merged,
change "Related to" to "Closes" in the line above.
If you have more than one GitHub issue that this PR closes, be sure to
preface
each issue link with a [closing
keyword](https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests#linking-a-pull-request-to-an-issue).
This ensures that the issue(s) are auto-closed once the PR has been
merged.
-->

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [ ] Added the relevant release notes label (see labels prefixed w/
`release:`). These labels dictate how your PR will
    show up in the autogenerated release notes.
2024-10-18 06:05:41 +00:00
grafana-irm-app[bot]
3040a1462b
Merge pull request #5188 from grafana/helm-release/1.11.2
Merge: Release oncall Helm chart 1.11.2
2024-10-17 14:10:13 +00:00
GitHub Actions
0d085ca7f8 Release oncall Helm chart 1.11.2 2024-10-17 14:09:50 +00:00
Matias Bordese
55ece7dc43
Merge pull request #5187 from grafana/dev
v1.11.2
2024-10-17 10:53:37 -03:00
Matias Bordese
00158a5527
Handle incident client general request errors (#5184)
Handle some (unexpected) incident request errors more gracefully.
2024-10-16 15:33:06 +00:00
Matias Bordese
f159a3f72f
Undo schedules using ical cached final data (#5182)
Undo one of the changes from https://github.com/grafana/oncall/pull/5172
(since it seems to make the schedules endpoint a bit worse; OTOH, other
changes improved latency). Eventually we may consider using the cached
on-call users information instead.
2024-10-16 13:01:21 +00:00
Yulya Artyukhina
8420cfd822
Fix acknowledge reminder task (#5179)
# What this PR does
- Adds 10 minutes lock for acknowledge reminder task to prevent task
duplicates, that causes posting multiple reminder messages and flooding
in Slack threads.
- Adds a new signal for acknowledge reminder task instead of using
`alert_group_action_triggered_signal` since it is used only to post
reminder message in Slack thread and it's not needed to be processed by
other representatives

## Which issue(s) this PR closes

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

## 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] Added the relevant release notes label (see labels prefixed w/
`release:`). These labels dictate how your PR will
    show up in the autogenerated release notes.
2024-10-16 12:13:28 +00:00
grafana-irm-app[bot]
231cd4d17d
Merge pull request #5181 from grafana/helm-release/1.11.1
Merge: Release oncall Helm chart 1.11.1
2024-10-15 17:31:14 +00:00
GitHub Actions
db052a3041 Release oncall Helm chart 1.11.1 2024-10-15 17:30:47 +00:00
Matias Bordese
468051220b
Merge pull request #5180 from grafana/dev
v1.11.1
2024-10-15 14:08:28 -03:00
Matias Bordese
46679606ac
Reschedule rate limited telegram task instead of retry (#5178) 2024-10-15 13:35:54 +00:00
Innokentii Konstantinov
287bfcc4c7
Remove slack user chat:write scope (#5177)
It was unused & caused customers frustration.
DO NOT CONFUSE with bot permission chat:write, it's used & needed.
2024-10-15 08:23:10 +00:00
Matias Bordese
10b532c688
Fix irm enabled organization sync setting (#5174)
Check the right settings when enabling/disabling the irm plugin.
2024-10-14 13:34:33 +00:00
Ildar Iskhakov
0672d06112
Remove the deprecated "Format Alert" button from the Slack renderer (#5141)
# What this PR does

Removes the deprecated "Format Alert" button from the Slack renderer

## Which issue(s) this PR closes

Related to [issue link here]

<!--
*Note*: If you want the issue to be auto-closed once the PR is merged,
change "Related to" to "Closes" in the line above.
If you have more than one GitHub issue that this PR closes, be sure to
preface
each issue link with a [closing
keyword](https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests#linking-a-pull-request-to-an-issue).
This ensures that the issue(s) are auto-closed once the PR has been
merged.
-->

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [ ] Added the relevant release notes label (see labels prefixed w/
`release:`). These labels dictate how your PR will
    show up in the autogenerated release notes.
2024-10-14 06:53:17 +00:00
Matias Bordese
e0816dd1ff
Minor optimizations for public API endpoints (#5172)
- Add/update eager loading for public API serializers
- Use cached final schedule to get currently on-call users
2024-10-11 19:39:39 +00:00
Joey Orlando
673d2e9595
feat: persist is_grafana_irm_enabled from backend plugin sync data (#5171)
# What this PR does

Will start persisting the `organization.is_grafana_irm_enabled` flag
from the backend plugin's sync data that is sent to the oncall backend.
The implications of this are that when `is_grafana_irm_enabled` is set
to True, we will:
- start using `grafana-irm-app` prefixed RBAC permissions (RBAC
permissions for `grafana-irm-app`, as well as `grafana-oncall-app`, are
already being synced to the OnCall backend since
https://github.com/grafana/irm/pull/200 was merged/deployed)
- start building UI URLs w/ `grafana-irm-app` instead of
`grafana-oncall-app`

## Which issue(s) this PR closes

Closes https://github.com/grafana/irm/issues/242

## 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] Added the relevant release notes label (see labels prefixed w/
`release:`). These labels dictate how your PR will
    show up in the autogenerated release notes.
2024-10-11 14:57:59 -04:00
Ildar Iskhakov
22ab249b3b
Move send_alert_group_signal to critical (#5168)
# What this PR does

## Which issue(s) this PR closes

Related to [issue link here]

<!--
*Note*: If you want the issue to be auto-closed once the PR is merged,
change "Related to" to "Closes" in the line above.
If you have more than one GitHub issue that this PR closes, be sure to
preface
each issue link with a [closing
keyword](https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests#linking-a-pull-request-to-an-issue).
This ensures that the issue(s) are auto-closed once the PR has been
merged.
-->

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required)
- [ ] Added the relevant release notes label (see labels prefixed w/
`release:`). These labels dictate how your PR will
    show up in the autogenerated release notes.
2024-10-11 13:38:47 +00:00
Joey Orlando
fc608471b1
v1.11.0 2024-10-10 16:24:33 -04:00
Joey Orlando
93c075098c
fix: fix tests failing because of faker (#5163) 2024-10-10 16:23:50 -04:00
grafana-irm-app[bot]
a1270dbed4
Merge pull request #5162 from grafana/helm-release/1.11.0
Merge: Release oncall Helm chart 1.11.0
2024-10-10 19:42:23 +00:00
GitHub Actions
72d550a53b Release oncall Helm chart 1.11.0 2024-10-10 19:41:58 +00:00
Joey Orlando
b06f937188
v1.11.0 2024-10-10 15:26:24 -04:00
Joey Orlando
04ab676463
feat: update RBAC permissioning to support grafana-irm-app (#5149)
# What this PR does

Closes https://github.com/grafana/irm/issues/31 (and supersedes
https://github.com/grafana/oncall/pull/4784)

Main changes:
- updates `apps.api.permissions.user_is_authorized` to check the value
of `organization.is_grafana_irm_enabled`. If it is, we check for the
presence of `grafana-irm-app` prefixed RBAC permissions rather than
`grafana-oncall-app`
- cleans-up `engine/apps/api/tests/test_permissions.py` (bulk of the
changes in the PR)
- converts `apps.user_management.models.User.build_permissions_query` to
a `UserQuerySet` method instead
  - means we can now do things like this instead:
  ```python3

User.objects.filter_by_permission(RBACPermission.Permissions.NOTIFICATIONS_READ,
organization)
  ```

## 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] Added the relevant release notes label (see labels prefixed w/
`release:`). These labels dictate how your PR will
    show up in the autogenerated release notes.
2024-10-10 19:02:21 +00:00
Yulya Artyukhina
f35f66a6ea
Fix retrying tasks (#5160)
# What this PR does
Small fixes for some retrying tasks

## Which issue(s) this PR closes
https://github.com/grafana/oncall-private/issues/2965
https://github.com/grafana/oncall-private/issues/2964

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated
- [x] Documentation added (or `pr:no public docs` PR label added if not
required)
- [x] Added the relevant release notes label (see labels prefixed w/
`release:`). These labels dictate how your PR will
    show up in the autogenerated release notes.
2024-10-10 15:37:30 +00:00
Yulya Artyukhina
a04ad70495
Doc for Declare Incident step (#5093)
Related to https://github.com/grafana/oncall-private/issues/2831

Should be merged with enabling `Declare Incident step` in cloud

---------

Co-authored-by: Matias Bordese <mbordese@gmail.com>
Co-authored-by: Alyssa Wada <alyssa.wada@grafana.com>
2024-10-10 13:29:58 +00:00
Matias Bordese
29d568c1a4
Allow valid URLs for web image_url template (#5150)
Related to https://github.com/grafana/support-escalations/issues/12860
(and it should also help with
https://github.com/grafana/oncall/issues/3031)
2024-10-10 13:21:36 +00:00
grafana-irm-app[bot]
1550bcdb86
Merge pull request #5159 from grafana/helm-release/1.10.6
Merge: Release oncall Helm chart 1.10.6
2024-10-10 12:22:20 +00:00
GitHub Actions
78af9c2a45 Release oncall Helm chart 1.10.6 2024-10-10 12:21:53 +00:00
Ildar Iskhakov
fc91b11598
Merge pull request #5158 from grafana/dev
v1.10.6
2024-10-10 19:52:58 +08:00
Ildar Iskhakov
4957851740
Remove resolved_by_alert field from state and remove constraint (#5156)
Removes resolved_by_alert field from Django state only. It will still be
in db, since it's to expensive to delete it in prod.
We remove this field to get rid of ON_DELETE=SET_NULL which causes
terrible load from SQL queries.
On top of that, we are removing FK to disable referral integrity checks,
so alert updates will work.

---------

Co-authored-by: Vadim Stepanov <vadimkerr@gmail.com>
2024-10-10 11:15:42 +00:00
grafana-irm-app[bot]
51d4ef90a3
Merge pull request #5152 from grafana/helm-release/1.10.5
Merge: Release oncall Helm chart 1.10.5
2024-10-09 22:20:22 +00:00
GitHub Actions
927b435a3a Release oncall Helm chart 1.10.5 2024-10-09 22:19:56 +00:00
Michael Derynck
1ae6fd44ea
Merge pull request #5151 from grafana/dev
v1.10.5
2024-10-09 16:02:52 -06:00
Joey Orlando
e5693531d2
remove deprecate_field usage (#5148) 2024-10-09 21:46:38 +00:00
dependabot[bot]
e11ae8a5f7
Bump django from 4.2.15 to 4.2.16 in /engine (#5140)
Bumps [django](https://github.com/django/django) from 4.2.15 to 4.2.16.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="6f9fea3313"><code>6f9fea3</code></a>
[4.2.x] Bumped version for 4.2.16 release.</li>
<li><a
href="bf4888d317"><code>bf4888d</code></a>
[4.2.x] Fixed CVE-2024-45231 -- Avoided server error on password reset
when e...</li>
<li><a
href="d147a8ebbd"><code>d147a8e</code></a>
[4.2.x] Fixed CVE-2024-45230 -- Mitigated potential DoS in urlize and
urlizet...</li>
<li><a
href="705066d186"><code>705066d</code></a>
[4.2.x] Fixed grammatical error in stub release notes for upcoming
security r...</li>
<li><a
href="b07d4f2dea"><code>b07d4f2</code></a>
[4.2.x] Added stub release notes and release date for 4.2.16.</li>
<li><a
href="e0579ce277"><code>e0579ce</code></a>
[4.2.x] Added CVE-2024-41989, CVE-2024-41990, CVE-2024-41991, and
CVE-2024-42...</li>
<li><a
href="ae0ca8345d"><code>ae0ca83</code></a>
[4.2.x] Post-release version bump.</li>
<li>See full diff in <a
href="https://github.com/django/django/compare/4.2.15...4.2.16">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=django&package-manager=pip&previous-version=4.2.15&new-version=4.2.16)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/grafana/oncall/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-09 18:31:03 +00:00
Nick Moore
cf589d45c6
feat: add timedeltaparse function to the jinja template (#5142)
# What this PR does
If an OnCall template needs to contain a date relative to a date in the
alert response, currently there is no way for the template to add or
subtract time from a parsed date.

This PR adds a function that allows a time-window (e.g., 1s, 5m, 6h, 7d,
2w) to be converted into a Python timedelta, which can then be added or
subtracted from a datetime. An example usage might be:

```
{% set delta = alert.timeWindow | timedeltaparse %}
{% set time = alert.startsAt | iso8601_to_time - delta | datetimeformat('%s') %}
```

## 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] Added the relevant release notes label (see labels prefixed w/
`release:`). These labels dictate how your PR will show up in the
autogenerated release notes.
2024-10-09 18:27:48 +00:00
grafana-irm-app[bot]
1fc0005d1b
Merge pull request #5147 from grafana/helm-release/1.10.4
Merge: Release oncall Helm chart 1.10.4
2024-10-09 18:19:39 +00:00
GitHub Actions
51c9087c97 Release oncall Helm chart 1.10.4 2024-10-09 18:19:18 +00:00