Commit graph

2683 commits

Author SHA1 Message Date
Vadim Stepanov
e79d35fdaa
Remove docker-compose warnings (#2574)
Remove docker-compose warnings when running hobby deployment without
Prometheus exporter enabled.
Otherwise, I'm getting the following warnings when running any
docker-compose command:

```bash
docker-compose up -d
WARN[0000] The "FEATURE_PROMETHEUS_EXPORTER_ENABLED" variable is not set. Defaulting to a blank string.
WARN[0000] The "PROMETHEUS_EXPORTER_SECRET" variable is not set. Defaulting to a blank string.
WARN[0000] The "FEATURE_PROMETHEUS_EXPORTER_ENABLED" variable is not set. Defaulting to a blank string.
WARN[0000] The "PROMETHEUS_EXPORTER_SECRET" variable is not set. Defaulting to a blank string.
WARN[0000] The "FEATURE_PROMETHEUS_EXPORTER_ENABLED" variable is not set. Defaulting to a blank string.
WARN[0000] The "PROMETHEUS_EXPORTER_SECRET" variable is not set. Defaulting to a blank string.
WARN[0000] The "FEATURE_PROMETHEUS_EXPORTER_ENABLED" variable is not set. Defaulting to a blank string.
WARN[0000] The "PROMETHEUS_EXPORTER_SECRET" variable is not set. Defaulting to a blank string.
[+] Building 0.0s (0/0)
[+] Running 6/6
 ✔ Network oncall-oss_default                  Created                                                           0.0s
 ✔ Container oncall-oss-grafana-1              Started                                                           0.3s
 ✔ Container oncall-oss-redis-1                Healthy                                                           6.5s
 ✔ Container oncall-oss-oncall_db_migration-1  Exited                                                            7.5s
 ✔ Container oncall-oss-engine-1               Started                                                           7.6s
 ✔ Container oncall-oss-celery-1               Started                                                           7.6s
```
2023-07-19 13:47:50 +00:00
Joey Orlando
5eadbbe878
fix migrations that were causing issues (#2581)
# 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-07-19 06:20:39 -04:00
Yulya Artyukhina
adfb496a81
Fix slack channels sync (#2571)
# What this PR does
- Fixes issue with slack channels sync periodic tasks when we get slack
rate limit exception.
- Adds check for active task id to avoid starting multiple tasks for one
slack team.

Collecting channels for slack for some teams causes rate limit
exception, which causes the task to restart and start collecting slack
channels from the beginning. This PR adds new paginated api call and
refactors the slack channel sync task to continue collect data after
rate limit from the step before it was raised using `cursor` value from
the slack response.


## Checklist

- [x] 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-07-19 07:17:21 +00:00
Joey Orlando
239729d654
Update CHANGELOG.md 2023-07-19 03:12:47 -04:00
Joey Orlando
4d42390362
Update CHANGELOG.md 2023-07-19 03:12:31 -04:00
Vadim Stepanov
dc137d705e
Fix public API integration default route (#2573)
Fix bug related to `order` and default route introduced in
https://github.com/grafana/oncall/pull/2572
2023-07-18 20:29:04 +01:00
Vadim Stepanov
fd30430184
Outgoing webhooks docs minor updates (#2572) 2023-07-18 18:49:55 +01:00
Vadim Stepanov
602ed535e3
Fix duplicate orders on routes and escalation policies (#2568)
# What this PR does

Fix duplicate `order` values for models `EscalationPolicy` and
`ChannelFilter` using the same approach as
https://github.com/grafana/oncall/pull/2278.

- Make internal API action `move_to_position` a part of
[OrderedModelViewSet](https://github.com/grafana/oncall/pull/2568/files#diff-eb62521ccbcb072d1bd2156adeadae3b5895bce6d0d54432a23db3948b0ada54R11-R34),
so all ordered model views use the same logic.
- Make public API serializers for ordered models inherit from
[OrderedModelSerializer](https://github.com/grafana/oncall/pull/2568/files#diff-d749f94af5a49adaf5074325cdfad10ddd5a52dbfd78b49582867ebb9c92fae5R6-R38),
so ordered model views are consistent with each other in public API.
- Remove `order` from plugin fronted, since it's not being used
anywhere. The frontend uses step indices & `move_to_position` action
instead.
- Make escalation snapshot use step indices instead of orders, since
orders are not guaranteed to be sequential (+fix a minor off-by-one bug)

## Which issue(s) this PR fixes

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

## 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-07-18 17:17:53 +00:00
Matias Bordese
f0f49694a5
Reworked slack login pipeline errors (#2526)
Related to https://github.com/grafana/oncall/issues/313

---------

Co-authored-by: Yulia Shanyrova <yulia.shanyrova@grafana.com>
2023-07-18 13:31:11 +00:00
Joey Orlando
73ed9d93a8
fix UI typo (#2569)
# Which issue(s) this PR fixes

![Screenshot 2023-07-18 at 14 44
26](https://github.com/grafana/oncall/assets/9406895/663e2d26-a82a-4780-9ecc-b9581e9f5729)


## 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-07-18 08:45:23 -04:00
github-actions[bot]
bccb37f00e
Update make docs procedure (#2565)
Co-authored-by: grafanabot <bot@grafana.com>
Co-authored-by: Jack Baldry <jack.baldry@grafana.com>
2023-07-18 12:08:50 +00:00
Joey Orlando
9cc74e5b67
remove references to AlertGroup.is_archived and AlertGroup.unarchived_objects (#2524)
# What this PR does

This is a follow up to #2502 which started to remove logic to
"archiving" alert groups. This PR:
- removes all references to `AlertGroup.is_archived` and marks the
column as deprecated. We will remove it in the next release
- removes the `AlertGroup.unarchived_objects` `Manager`
- renames the `AlertGroup.all_objects` `Manager` to `AlertGroup.objects`

## Checklist

- [x] 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)
2023-07-18 11:48:34 +00:00
Vadim Stepanov
94fd91d6be
Current responders -> Additional Responders (#2567)
# What this PR does

Changes wording so it's clear that only "additional" responders (i.e.
users paged through direct paging) are shown in this section, and users
paged via escalation chain are not shown.

Before:

<img width="601" alt="Screenshot 2023-07-18 at 10 15 28"
src="https://github.com/grafana/oncall/assets/20116910/a152692f-2f2b-46e5-b51a-71acc9a25b7d">

After:

<img width="601" alt="Screenshot 2023-07-18 at 10 16 06"
src="https://github.com/grafana/oncall/assets/20116910/6ff95c72-a883-4a7a-a81a-4ae7fe11877f">

## 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-07-18 11:33:47 +00:00
Joey Orlando
d4a0030dd0
mark manual_severity and resolution_note_ts columns on alertgroup table as deprecated (#2564)
# What this PR does

These columns don't appear to be referenced anywhere in the codebase.
Marking them as deprecated and will remove them/drop the columns from
the table in a subsequent release

## 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-07-18 09:41:58 +00:00
Vadim Stepanov
56743857ee
Update Slack "invite" feature to use direct paging (#2562)
# What this PR does

Refactors the "invite" functionality in Slack to use direct paging and
be more consistent with the web UI and `/escalate` Slack command.

## Screenshots

### Alert group buttons

Before:

<img width="609" alt="Screenshot 2023-07-17 at 22 40 47"
src="https://github.com/grafana/oncall/assets/20116910/68fad5a4-5011-4d74-b1c7-362bdb4f8cf0">


After (replace "Invite..." dropdown with "Responders" button, swap it
with the silence button):
<img width="587" alt="Screenshot 2023-07-17 at 22 37 19"
src="https://github.com/grafana/oncall/assets/20116910/50b42057-f46b-4558-ab1c-56c34a15af5e">


### What happens when clicking on "Responders"

The following modal opens up with a list of currently paged users and
inputs to page more users/schedules:

<img width="514" alt="Screenshot 2023-07-17 at 22 37 52"
src="https://github.com/grafana/oncall/assets/20116910/70bd2853-d459-4343-8b25-8519ac0098f7">

This is supposed to be the Slack equivalent of this part of the web UI:

<img width="601" alt="Screenshot 2023-07-17 at 22 47 17"
src="https://github.com/grafana/oncall/assets/20116910/101e1229-a5c4-404f-8388-eceee3e4820f">


## Which issue(s) this PR fixes

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

## 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-07-18 08:36:11 +00:00
Michael Derynck
8e3ceb4704
Fix links in webhook docs (#2560)
# What this PR does
Fix broken links to outgoing webhooks

## 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-07-17 15:04:20 -06:00
Vadim Stepanov
7122d5a051
Jira & Zendesk docs minor formatting fixes (#2559) 2023-07-17 19:42:43 +01:00
Joey Orlando
75ee2bc0c0
Update CHANGELOG.md 2023-07-17 10:41:19 -04:00
Joey Orlando
d5b43b0439
minor improvements for check_escalation_finished celery task (#2554)
# What this PR does

This PR adds some enhancements to the `check_escalation_finished` celery
task. It short-circuits auditing of an alert group if it does not have
an escalation chain associated with it. In
`EscalationSnapshotMixin.start_escalation_if_needed`
we will not set `raw_escalation_snapshot`
([here](https://github.com/grafana/oncall/blob/dev/engine/apps/alerts/escalation_snapshot/escalation_snapshot_mixin.py#L262))
in this case:
```python3
def start_escalation_if_needed(self, countdown=START_ESCALATION_DELAY, eta=None):
        """
        :type self:AlertGroup
        """
        AlertGroup = apps.get_model("alerts", "AlertGroup")

        is_on_maintenace_or_debug_mode = self.channel.maintenance_mode is not None

        if (
            self.is_restricted
            or is_on_maintenace_or_debug_mode
            or self.pause_escalation
            or not self.escalation_chain_exists <-- here
        ):
            logger.debug(
                f"Not escalating alert group w/ pk: {self.pk}\n"
                f"is_restricted: {self.is_restricted}\n"
                f"is_on_maintenace_or_debug_mode: {is_on_maintenace_or_debug_mode}\n"
                f"pause_escalation: {self.pause_escalation}\n"
                f"escalation_chain_exists: {self.escalation_chain_exists}"
            )
            return

        logger.debug(f"Start escalation for alert group with pk: {self.pk}")

        # take raw escalation snapshot from db if escalation is paused
        raw_escalation_snapshot = (
            self.build_raw_escalation_snapshot() if not self.pause_escalation else self.raw_escalation_snapshot
        )
        task_id = celery_uuid()

        AlertGroup.all_objects.filter(pk=self.pk,).update(
            active_escalation_id=task_id,
            is_escalation_finished=False,
            raw_escalation_snapshot=raw_escalation_snapshot,
        )
```

`EscalationSnapshotMixin.escalation_chain_exists` is as such:
```python3
@property
    def escalation_chain_exists(self) -> bool:
        if self.pause_escalation:
            return False
        elif not self.channel_filter:
            return False
        return self.channel_filter.escalation_chain is not None
```

## Checklist

- [x] Unit, integration, and e2e (if applicable) tests updated
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required) (N/A)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required) (N/A)
2023-07-17 14:04:53 +00:00
Matias Bordese
2aab2a3e04
Remove v prefix from plugin version on build (#2540)
Related to https://github.com/grafana/oncall/issues/458

Change version naming for plugin and docker releases to drop the `v`
prefix (ie. `1.2.3` instead of `v1.2.3`).
Update both to keep consistency between plugin and engine versions,
which are also checked to match.
2023-07-17 13:59:16 +00:00
Vadim Stepanov
69bafb61f1
Direct paging improvements (#2537)
# What this PR does

- Deprecates `/oncall` Slack command in favour of `/esalate` (direct
paging) + fixes a regression bug in both commands
- Unifies direct paging UX across Slack & Web UI (or at least makes an
attempt to make things more similar). Kudos to @iskhakov for all the
great work on this recently!
- A bunch of minor changes that hopefully make direct paging more usable
- TODO: documentation updates will be added in a separate PR

## Screenshots

### No issues scenario

Slack:

<img width="522" alt="Screenshot 2023-07-14 at 23 53 11"
src="https://github.com/grafana/oncall/assets/20116910/ec15a18f-d817-4177-b1f2-6b89d79bb361">


Web UI: 

<img width="1172" alt="Screenshot 2023-07-14 at 23 52 25"
src="https://github.com/grafana/oncall/assets/20116910/813f967c-2fdd-4868-9287-487dbfa7cea6">


### Not configured scenario

Slack:

<img width="519" alt="Screenshot 2023-07-14 at 23 45 22"
src="https://github.com/grafana/oncall/assets/20116910/932fa05c-81ea-42ca-be80-41b05f767d3e">

Web UI:

<img width="1172" alt="Screenshot 2023-07-14 at 23 47 31"
src="https://github.com/grafana/oncall/assets/20116910/6bcb07e4-2e50-4120-9fac-be8b0277e181">

### `/oncall` deprecation warning

<img width="521" alt="Screenshot 2023-07-17 at 10 31 56"
src="https://github.com/grafana/oncall/assets/20116910/4ff28337-1693-4af0-81d9-9eda90099c1b">


## Which issue(s) this PR fixes

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

## 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-07-17 14:21:56 +01:00
Jack Baldry
78df72bef9
Update all make docs CI to match (#2538)
My previous PR only updated the CI that ran on PRs, I forgot about the
CD for releases.

Fixes https://github.com/grafana/oncall/actions/runs/5547818896.

You can see that this will resolve the problem because it is what allows
the PR CI to pass. I just forgot to include it in the release CD.

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
2023-07-17 13:15:34 +00:00
Andrey Oleynik
8644883883
set default phone provider (#2523)
# What this PR does

Sets a default value for the PHONE_PROVIDER setting and replaces the
value of PHONE_PROVIDER with this default value if it is not valid.

## Which issue(s) this PR fixes

- [#2520](https://github.com/grafana/oncall/issues/2520)
- [#2323](https://github.com/grafana/oncall/issues/2323)

## 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: Innokentii Konstantinov <innokenty.konstantinov@grafana.com>
Co-authored-by: Joey Orlando <joseph.t.orlando@gmail.com>
Co-authored-by: Joey Orlando <joey.orlando@grafana.com>
2023-07-17 13:04:55 +00:00
Zach Day
cae8387f0b
Update Users.tsx (#2539)
Update "Grafana user management" url from `/org/users` to `/admin/users`
on the OnCall Users page.

# What this PR does
Currently in my Grafana Cloud instance when I click the link for
"Grafana user management" on the Users page of the OnCall app it takes
me to the `/org/users` page, which shows a 404 error (but also kinda
loads).

<img width="891" alt="2023-07-14_13-00-06"
src="https://github.com/grafana/oncall/assets/13998241/077172b8-387b-415e-af92-d394480fef1f">

## Which issue(s) this PR fixes
Discussed in Slack here:
https://raintank-corp.slack.com/archives/C0229FD3CE9/p1689006468472659

In my cloud instance the users page is found on `/admin/users`. 

<img width="965" alt="2023-07-14_13-01-33"
src="https://github.com/grafana/oncall/assets/13998241/4e74000c-1713-406d-b23b-1691925158e6">

## 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-07-17 07:22:43 -04:00
Alfredo
f4cabe7360
Docs: Update oncall rbac detail (#2494)
# What this PR does
- Update docs to callout permission requirement in mobile app doc for
responding to alert group.
- Update link to RBAC fixed role doc for mapping between OnCall RBAC
fixed role and Grafana basic role.
2023-07-17 07:21:17 -04:00
Joey Orlando
3181e5de82
fix mypy errors 2023-07-17 13:10:57 +02:00
Joey Orlando
d43e211d71
Update CHANGELOG.md 2023-07-17 06:58:45 -04:00
Ildar Iskhakov
8367a1ed4c
Polish user settings and warnings (#2425)
# What this PR does

* users table: added warnings: No default notifications set, No
important notifications set
* users table: removed warnings when messenger is not configured (e.g.
telegram channels are not connected -> no need to show telegram warning
in users table)
* users table: moved current user to first place
* user profile: cleaned up and added hints to notification channel
connectors
* user profile: cleaned up and added hints to calendar sync
* chatops-slack: cleaned up and added hints to slack settings

fixes https://github.com/grafana/oncall/issues/2418

## 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-07-17 18:34:58 +08:00
Maxim Mordasov
35e4cf5bac
Revert "bring heartbeats back to UI" (#2548)
This reverts commit 03f5b0f071.

# 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-07-17 07:19:02 +00:00
Joey Orlando
63ac0972c5
remove deprecated heartbeat_heartbeat table/model (#2534)
# What this PR does

- Remove `heartbeat_heartbeat` table. This model/table does not seems to
be deprecated/used anywhere (no data in this in production/staging; see
more comments in the code about this).
2023-07-17 01:38:04 -04:00
Innokentii Konstantinov
aa4edad4a7
Remove INTEGRATIONS_TO_REVERSE_URL_MAP (#2533)
This PR is a step for migrating to AlertManager v2. I want to simplify
config thing a little to be able to move forward.
In INTEGRATIONS_TO_REVERSE_URL_MAP key equal value and in all cases we
just don't need it.

Public API is different, since I need this mapping for migration to
AlertManager v2 to provide backward-compatibility. It will be done in
next PRs.
2023-07-17 04:43:24 +00:00
Joey Orlando
8ecc1de540
improve RBAC documentation (#2489)
# What this PR does

closes https://github.com/grafana/oncall-private/issues/1953

- Improves RBAC for OnCall documentation + adds a [brief demo
video](https://www.loom.com/share/bcc472b2a22f40bdb62baf2a85cf1532) +
adds a table of the available RBAC roles and which actions they grant

![Screenshot 2023-07-11 at 11 14
29](https://github.com/grafana/oncall/assets/9406895/6d395536-175d-4ed0-9041-c2b1c7405fa4)
![Screenshot 2023-07-11 at 11 14
43](https://github.com/grafana/oncall/assets/9406895/66423995-a009-4dd7-a861-e6ba4dffc5d1)


- Add a small Python utility script to auto-generate the markdown table
from the `plugin.json` (otherwise this is really manual to compile by
hand)

## 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)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required) (N//A)
2023-07-15 10:26:25 -04:00
Michael Derynck
4639358634
Update CHANGELOG.md 2023-07-14 16:58:38 -06:00
Michael Derynck
a40e38300e
Fix authorization header masked (#2541)
# What this PR does
Fix authorization header was being masked in the requests instead of
only in logs

## 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)
2023-07-14 22:52:41 +00:00
Joey Orlando
767c5352fa
augment API response pagination attributes (#2471)
# What this PR does

This PR:
- adds a few attributes to paginated API responses
- removes channel filter "send demo alert" internal API endpoint + tests
(this endpoint was marked as deprecated + not consumed by the web UI)

With the new paginated API response schema, the web UI will no longer
need to:
- hardcode `ITEMS_PER_PAGE` for each table
- manually calculate total number of pages

(these two things ☝️ will be done in
https://github.com/grafana/oncall/issues/2476)

For `GET /api/internal/v1/alertgroups` the response will now look like
this:
```diff
{
    "next": <url> | None,
    "previous": <url> | None,
    "results": [],
++  "page_size": <int>
}
```

For all other paginated API responses, the response will now look like:
```diff
{
    "count": <int>,
    "next": <url> | None,
    "previous": <url> | None,
    "results": [],
++  "page_size": <int>,
++  "current_page_number": <int>,
++  "total_pages": <int>
}
```

## TODO
- [x] update public API docs to include these new attributes

## 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-07-14 11:19:40 -04:00
Maxim
03f5b0f071 bring heartbeats back to UI 2023-07-14 17:55:45 +03:00
Joey Orlando
1ca71fa40a
fix import mypy errors (#2407)
# What this PR does

Fix the following pre-existing `import` `mypy` errors (related to
#2392):
```bash
❯ mypy .
settings/prod_without_db.py:4: error: Cannot find implementation or library stub for module named "uwsgi"  [import]
engine/logging/formatters.py:2: error: Skipping analyzing "pythonjsonlogger": module is installed, but missing library stubs or py.typed marker  [import]
engine/logging/formatters.py:2: note: See https://mypy.readthedocs.io/en/stable/running_mypy.html#missing-imports
engine/celery.py:7: error: Skipping analyzing "celery.utils.debug": module is installed, but missing library stubs or py.typed marker  [import]
Found 3 errors in 3 files (checked 595 source files)
```

## 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-07-14 06:00:02 -04:00
Joey Orlando
681087117c
remove deprecated gitops views (#2530)
# What this PR does

I don't see any traffic to these endpoint URLs over the past week. The
terraform "renderers" in `engine/apps/alerts/terraform_renderer` make a
lot of references to amixr, making think these are legacy, and can be
removed.

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated (N/A)
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required) (N/A)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required) (N/A)
2023-07-14 05:13:52 -04:00
Ildar Iskhakov
fd9ca5b827
Fix markup bug and change text (#2515)
# 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-07-14 09:28:14 +08:00
Michael Derynck
aef162652e
Fix migration for long names and do not include deleted (#2528) 2023-07-13 16:32:30 -06:00
Michael Derynck
0bef6efde6
Outgoing webhooks 2 documentation (#1844)
Documentation for new outgoing webhooks.

---------

Co-authored-by: Vadim Stepanov <vadimkerr@gmail.com>
2023-07-13 14:39:20 -06:00
Michael Derynck
4553e49b7a
Update CHANGELOG.md 2023-07-13 14:38:36 -06:00
Michael Derynck
961a9e5349
Webhooks 2 Release (#1830)
- Enables new webhooks functionality.
- Database migration will automatically convert existing webhooks to new
ones. Note: Converted webhooks are considered "legacy" they will
continue to work as part of your escalation chain but will no longer be
editable. To make changes use the `Make a copy` action and edit that
one, after you can delete your legacy webhook. Remember to connect your
escalation chain with your newly copied webhook!

---------

Co-authored-by: Maxim <maxim.mordasov@grafana.com>
2023-07-13 13:53:06 -06:00
Jack Baldry
1735db4c3b
Update all links to use docs/reference style (#2456)
# What this PR does

The `docs/reference` shortcode supports contextual destinations and
version inference.

`<ONCALL VERSION>` is inferred to match the version of the documentation
set. For example, the inferred version for the page
/docs/grafana/oncall/latest/get-started/ is "latest". It can also be
overriden using front matter.
Given the same page, but with the additional front matter
`oncall_version: next`, the variable is substituted with "next" rather
than "latest".

Contextual destinations are achieved using repeated labels in the
shortcode inner text. The format is [<LABEL>]: "<PAGE PATH PREFIX> ->
<HUGO REFERENCE>".

- _`<LABEL>`_ matches the reference style link label used in the rest of
the text.
- _`<PAGE PATH PREFIX>`_ is matched against the page during the
production build. If the match is successful, the destination that is
used is _`<HUGO REFERENCE>`_. The first matching prefix is used, not the
longest matching prefix.

## Which issue(s) this PR fixes

- Broken links due to ambiguous relref resolution. Any relref parameter
that does not start with either `/`, `./`, or `../` can resolve
ambiguously and is resulting in broken link behavior on the current
site.
- Broken links in Grafana Cloud. We mount OnCall documentation in
Grafana Cloud. In https://github.com/grafana/website/pull/13872 the
location will become /docs/grafana-cloud/alerting-and-irm/oncall. This
PR is intended to be merged alongside that PR.

---------

Signed-off-by: Jack Baldry <jack.baldry@grafana.com>
Co-authored-by: Joey Orlando <joey.orlando@grafana.com>
2023-07-13 14:38:35 +00:00
Joey Orlando
71e77800ec
bump celery version to a version which supports Python 3.11 (#2519)
# Which issue(s) this PR fixes

I was seeing some strange logs occasionally pop up from celery:
```bash
[1;33m2023-07-13 10:05:14,772 source=engine:celery worker=MainProcess task_id=??? task_name=??? name=celery.redirected level=WARNING AttributeError: '_Code' object has no attribute 'co_positions'[0m
```

Did a bit of digging on this and
[realized](https://github.com/DataDog/dd-trace-py/issues/4149) that
`celery==5.2.7` does not support Python 3.11 (the version we use):

![Screenshot 2023-07-13 at 12 14
36](https://github.com/grafana/oncall/assets/9406895/a6ee76ea-12ed-4a3d-b37c-62b4291893e1)

We should immediately upgrade to `celery==5.3.1`. It mentions in this in
the changelog for that version:
![Screenshot 2023-07-13 at 12 13
22](https://github.com/grafana/oncall/assets/9406895/5afdc35e-fbda-4350-8dc4-d989ac31fdc6)


## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated (N/A)
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required) (N/A)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required) (N/A)
2023-07-13 07:16:36 -04:00
Joey Orlando
dea1e3b780
update changelog 2023-07-13 11:30:50 +02:00
Joey Orlando
0d8965e355
update changelog 2023-07-13 11:30:34 +02:00
Joey Orlando
77f6dedce5
add index on started_at column in alert groups (#2516)
# What this PR does

Adds an index on the `started_at` column in the `alerts_alertgroup`
table. For the alert groups query used by the
`check_escalation_finished_task`, this resulted in a huge performance
boost, taking the query time from 89mins to 4secs (on our largest
production dataset).

## Which issue(s) this PR fixes

closes #724
closes https://github.com/grafana/oncall-private/issues/1713

## 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-07-13 05:22:59 -04:00
Joey Orlando
1c3b362b34
remove unused frontend code (#2482)
# What this PR does

Removes old code that is no longer referenced/used:
- `organization-logs` UI page + model. This page is hidden from
navigation, but if you go to it the API endpoint it hits does not exist
and returns HTTP 404.
- several icons/images that were no longer referenced:
  - `icons/cross-circled.svg`
  - `icons/grafana-icon.svg`
  - `icons/heart-green.svg`
  - `icons/heart-line.svg`
  - `icons/heart-red.svg`
- Several Icon components in `icons/index.tsx` that were no longer
referenced
  - `img/telegram_discussion.png`
- `interceptors/index.ts` - see comment on that file. This interceptor
is never invoked.
- models
  - curler
  - current_subscription
  - integrations_list
  - leader
  - timezone - the `tzs` array of timezone strings was duplicated
  - webinar
- services
  - experimentManager
  - googleTagManager
  - urlManager
  

## Checklist

- [ ] Unit, integration, and e2e (if applicable) tests updated (N/A)
- [ ] Documentation added (or `pr:no public docs` PR label added if not
required) (N/A)
- [ ] `CHANGELOG.md` updated (or `pr:no changelog` PR label added if not
required) (N/A)
2023-07-13 08:41:23 +00:00
Ildar Iskhakov
0b28815d46
Unhide direct paging integration (#2483)
# What this PR does
Fixes https://github.com/grafana/oncall/issues/2442



https://github.com/grafana/oncall/assets/2262529/08bb8e5f-acc6-4f2d-9e38-717c9f37e3da





## 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-07-13 13:41:31 +08:00