Skip to content

Commit 2099f03

Browse files
authored
dev -> main
2 parents 4685b45 + 656be9a commit 2099f03

File tree

6 files changed

+41
-41
lines changed

6 files changed

+41
-41
lines changed

.github/actions/setup-python/action.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ runs:
1616
id: setup-python
1717
uses: actions/[email protected]
1818
with:
19-
python-version: "3.12.3"
19+
python-version: "3.12.10"
2020
cache: "pip"
2121
cache-dependency-path: ${{ inputs.python-requirements-paths }}
2222
- name: Install Python dependencies

engine/Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM python:3.12.6-alpine3.20 AS base
1+
FROM python:3.12.10-alpine3.21 AS base
22
ARG TARGETPLATFORM
33

44
# Create a group and user to run an app

grafana-plugin/go.mod

+4-4
Original file line numberDiff line numberDiff line change
@@ -79,10 +79,10 @@ require (
7979
go.opentelemetry.io/proto/otlp v1.5.0 // indirect
8080
golang.org/x/exp v0.0.0-20240909161429-701f63a606c0 // indirect
8181
golang.org/x/mod v0.22.0 // indirect
82-
golang.org/x/net v0.36.0 // indirect
83-
golang.org/x/sync v0.11.0 // indirect
84-
golang.org/x/sys v0.30.0 // indirect
85-
golang.org/x/text v0.22.0 // indirect
82+
golang.org/x/net v0.38.0 // indirect
83+
golang.org/x/sync v0.12.0 // indirect
84+
golang.org/x/sys v0.31.0 // indirect
85+
golang.org/x/text v0.23.0 // indirect
8686
golang.org/x/tools v0.28.0 // indirect
8787
golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect
8888
google.golang.org/genproto/googleapis/api v0.0.0-20250115164207-1a7da9e5054f // indirect

grafana-plugin/go.sum

+8-8
Original file line numberDiff line numberDiff line change
@@ -249,13 +249,13 @@ golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn
249249
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
250250
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
251251
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
252-
golang.org/x/net v0.36.0 h1:vWF2fRbw4qslQsQzgFqZff+BItCvGFQqKzKIzx1rmoA=
253-
golang.org/x/net v0.36.0/go.mod h1:bFmbeoIPfrw4sMHNhb4J9f6+tPziuGjq7Jk/38fxi1I=
252+
golang.org/x/net v0.38.0 h1:vRMAPTMaeGqVhG5QyLJHqNDwecKTomGeqbnfZyKlBI8=
253+
golang.org/x/net v0.38.0/go.mod h1:ivrbrMbzFq5J41QOQh0siUuly180yBYtLp+CKbEaFx8=
254254
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
255255
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
256256
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
257-
golang.org/x/sync v0.11.0 h1:GGz8+XQP4FvTTrjZPzNKTMFtSXH80RAzG+5ghFPgK9w=
258-
golang.org/x/sync v0.11.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
257+
golang.org/x/sync v0.12.0 h1:MHc5BpPuC30uJk597Ri8TV3CNZcTLu6B6z4lJy+g6Jw=
258+
golang.org/x/sync v0.12.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
259259
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
260260
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
261261
golang.org/x/sys v0.0.0-20191020152052-9984515f0562/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -268,12 +268,12 @@ golang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBc
268268
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
269269
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
270270
golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
271-
golang.org/x/sys v0.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc=
272-
golang.org/x/sys v0.30.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
271+
golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik=
272+
golang.org/x/sys v0.31.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
273273
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
274274
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
275-
golang.org/x/text v0.22.0 h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM=
276-
golang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY=
275+
golang.org/x/text v0.23.0 h1:D71I7dUrlY+VX0gQShAThNGHFxZ13dGLBHQLVl1mJlY=
276+
golang.org/x/text v0.23.0/go.mod h1:/BLNzu4aZCJ1+kcD0DNRotWKage4q2rGVAg4o22unh4=
277277
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
278278
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
279279
golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=

tools/migrators/Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM python:3.12.3-alpine3.18
1+
FROM python:3.12.10-alpine3.21
22

33
ENV PYTHONUNBUFFERED=1
44
WORKDIR /app

tools/migrators/README.md

+26-26
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ Currently the migration tool supports migrating from:
66

77
- PagerDuty
88
- Splunk OnCall (VictorOps)
9-
- OpsGenie
9+
- Opsgenie
1010

1111
## Getting Started
1212

@@ -16,7 +16,7 @@ Currently the migration tool supports migrating from:
1616
4. Depending on which tool you are migrating from, see more specific instructions there:
1717
- [PagerDuty](#prerequisites)
1818
- [Splunk OnCall](#prerequisites-1)
19-
- [OpsGenie](#prerequisites-2)
19+
- [Opsgenie](#prerequisites-2)
2020
5. Run a [migration plan](#migration-plan)
2121
6. If you are pleased with the results of the migration plan, run the tool in [migrate mode](#migration)
2222

@@ -49,7 +49,7 @@ docker run --rm \
4949
oncall-migrator
5050
```
5151

52-
#### OpsGenie
52+
#### Opsgenie
5353

5454
```shell
5555
docker run --rm \
@@ -118,7 +118,7 @@ docker run --rm \
118118
oncall-migrator
119119
```
120120

121-
#### OpsGenie
121+
#### Opsgenie
122122

123123
```shell
124124
docker run --rm \
@@ -583,7 +583,7 @@ See [Migrating Users](#migrating-users) for some more information on how users a
583583
- Note that delays between escalation steps may be slightly different in Grafana OnCall,
584584
see [Limitations](#limitations-1) for more info.
585585

586-
## OpsGenie
586+
## Opsgenie
587587

588588
### Overview
589589

@@ -598,12 +598,12 @@ Resources that can be migrated using this tool:
598598

599599
- Not all integration types are supported
600600
- Not all Escalation Policy rule types are supported
601-
- OpsGenie schedules with time restrictions (time-of-day or weekday-and-time-of-day) are not supported
601+
- Opsgenie schedules with time restrictions (time-of-day or weekday-and-time-of-day) are not supported
602602
- Delays between migrated notification/escalation rules could be slightly different from original
603603

604604
### Prerequisites
605605

606-
- Obtain an OpsGenie API key: <https://docs.opsgenie.com/docs/api-key-management>
606+
- Obtain an Opsgenie API key: <https://docs.opsgenie.com/docs/api-key-management>
607607

608608
### Configuration
609609

@@ -612,15 +612,15 @@ Configuration is done via environment variables passed to the docker container.
612612
| Name | Description | Type | Default |
613613
| --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------- | ------- |
614614
| `MIGRATING_FROM` | Set to `opsgenie` | String | N/A |
615-
| `OPSGENIE_API_KEY` | OpsGenie API key. To create a key, refer to [OpsGenie docs](https://docs.opsgenie.com/docs/api-key-management). | String | N/A |
616-
| `OPSGENIE_API_URL` | OpsGenie API URL. Use `https://api.eu.opsgenie.com/v2` for EU instances. | String | `https://api.opsgenie.com/v2` |
615+
| `OPSGENIE_API_KEY` | Opsgenie API key. To create a key, refer to [Opsgenie docs](https://docs.opsgenie.com/docs/api-key-management). | String | N/A |
616+
| `OPSGENIE_API_URL` | Opsgenie API URL. Use `https://api.eu.opsgenie.com/v2` for EU instances. | String | `https://api.opsgenie.com/v2` |
617617
| `ONCALL_API_URL` | Grafana OnCall API URL. This can be found on the "Settings" page of your Grafana OnCall instance. | String | N/A |
618618
| `ONCALL_API_TOKEN` | Grafana OnCall API Token. To create a token, navigate to the "Settings" page of your Grafana OnCall instance. | String | N/A |
619619
| `MODE` | Migration mode (plan vs actual migration). | String (choices: `plan`, `migrate`) | `plan` |
620620
| `UNSUPPORTED_INTEGRATION_TO_WEBHOOKS` | When set to `true`, integrations with unsupported type will be migrated to Grafana OnCall integrations with type "webhook". When set to `false`, integrations with unsupported type won't be migrated. | Boolean | `false` |
621621
| `MIGRATE_USERS` | If `false`, will allow you to import all objects while ignoring user references in schedules and escalation policies. In addition, if `false`, will also skip importing User notification rules. | Boolean | `true` |
622622
| `OPSGENIE_FILTER_TEAM` | Filter resources by team name. Only resources associated with this team will be migrated. | String | N/A |
623-
| `OPSGENIE_FILTER_USERS` | Filter resources by OpsGenie user IDs (comma-separated). Only resources associated with these users will be migrated. | String | N/A |
623+
| `OPSGENIE_FILTER_USERS` | Filter resources by Opsgenie user IDs (comma-separated). Only resources associated with these users will be migrated. | String | N/A |
624624
| `OPSGENIE_FILTER_SCHEDULE_REGEX` | Filter schedules by name using a regex pattern. Only schedules whose names match this pattern will be migrated. | String | N/A |
625625
| `OPSGENIE_FILTER_ESCALATION_POLICY_REGEX` | Filter escalation policies by name using a regex pattern. Only policies whose names match this pattern will be migrated. | String | N/A |
626626
| `OPSGENIE_FILTER_INTEGRATION_REGEX` | Filter integrations by name using a regex pattern. Only integrations whose names match this pattern will be migrated. | String | N/A |
@@ -630,41 +630,41 @@ Configuration is done via environment variables passed to the docker container.
630630

631631
#### User notification rules
632632

633-
The tool is capable of migrating user notification rules from OpsGenie to Grafana OnCall.
634-
Notification rules from OpsGenie will be migrated to both default and important notification rules in Grafana OnCall
633+
The tool is capable of migrating user notification rules from Opsgenie to Grafana OnCall.
634+
Notification rules from Opsgenie will be migrated to both default and important notification rules in Grafana OnCall
635635
for each user. Note that delays between notification rules may be slightly different in Grafana OnCall.
636636

637637
By default (when `PRESERVE_EXISTING_USER_NOTIFICATION_RULES` is `true`), existing notification rules in Grafana OnCall will
638-
be preserved and OpsGenie rules won't be imported for users who already have notification rules configured in Grafana OnCall.
638+
be preserved and Opsgenie rules won't be imported for users who already have notification rules configured in Grafana OnCall.
639639

640-
If you want to replace existing notification rules with ones from OpsGenie, set `PRESERVE_EXISTING_USER_NOTIFICATION_RULES`
640+
If you want to replace existing notification rules with ones from Opsgenie, set `PRESERVE_EXISTING_USER_NOTIFICATION_RULES`
641641
to `false`.
642642

643643
See [Migrating Users](#migrating-users) for some more information on how users are migrated.
644644

645645
#### On-call schedules
646646

647-
The tool is capable of migrating on-call schedules from OpsGenie to Grafana OnCall.
647+
The tool is capable of migrating on-call schedules from Opsgenie to Grafana OnCall.
648648
Schedules are migrated with their rotations. The following features are supported:
649649

650650
- Daily, weekly, and hourly rotations
651651
- Multiple rotations per schedule
652652
- Schedule overrides
653653

654-
On-call schedules will be migrated to new Grafana OnCall schedules with the same name as in OpsGenie.
654+
On-call schedules will be migrated to new Grafana OnCall schedules with the same name as in Opsgenie.
655655
Any existing schedules with the same name will be deleted before migration.
656-
Any on-call schedules that reference unmatched users won't be migrated. Any OpsGenie schedule which
656+
Any on-call schedules that reference unmatched users won't be migrated. Any Opsgenie schedule which
657657
uses time restrictions will not be migrated as migrating these is not supported.
658658

659659
#### Escalation policies
660660

661-
The tool is capable of migrating escalation policies from OpsGenie to Grafana OnCall.
661+
The tool is capable of migrating escalation policies from Opsgenie to Grafana OnCall.
662662
Every escalation policy will be migrated to a new Grafana OnCall escalation chain with name convention of
663663
`{team name} - {escalation policy name}`.
664664

665665
Caveats:
666666

667-
- Only the "Notify user" and "Notify on-call user(s) in schedule" rule types are supported. If an OpsGenie Escalation
667+
- Only the "Notify user" and "Notify on-call user(s) in schedule" rule types are supported. If an Opsgenie Escalation
668668
Policy references a rule other than these, those rule steps are simply ignored in the migration
669669
- Any existing escalation chains with the same name will be deleted, in Grafana OnCall, before migration.
670670
Note that delays between escalation steps may be slightly different in Grafana OnCall
@@ -673,8 +673,8 @@ be done manually
673673

674674
#### Integrations
675675

676-
The tool is capable of migrating integrations from OpsGenie to Grafana OnCall.
677-
For every integration in OpsGenie, the tool will migrate it to a Grafana OnCall integration.
676+
The tool is capable of migrating integrations from Opsgenie to Grafana OnCall.
677+
For every integration in Opsgenie, the tool will migrate it to a Grafana OnCall integration.
678678

679679
Any integrations with unsupported type won't be migrated unless `UNSUPPORTED_INTEGRATION_TO_WEBHOOKS` is set to `true`.
680680

@@ -701,7 +701,7 @@ The following integration types are supported:
701701

702702
- Connect integrations (press the "How to connect" button on the integration page)
703703
- Make sure users connect their phone numbers, Slack accounts, etc. in their user settings
704-
- Review and adjust any webhook integrations that were migrated from unsupported OpsGenie integration types
704+
- Review and adjust any webhook integrations that were migrated from unsupported Opsgenie integration types
705705

706706
## Migrating Users
707707

@@ -755,7 +755,7 @@ docker run --rm \
755755
oncall-migrator python /app/add_users_to_grafana.py
756756
```
757757

758-
### OpsGenie
758+
### Opsgenie
759759

760760
```bash
761761
docker run --rm \
@@ -768,7 +768,7 @@ docker run --rm \
768768
oncall-migrator python /app/add_users_to_grafana.py
769769
```
770770

771-
You can also filter which OpsGenie users are added to Grafana by using the `OPSGENIE_FILTER_USERS` environment variable:
771+
You can also filter which Opsgenie users are added to Grafana by using the `OPSGENIE_FILTER_USERS` environment variable:
772772

773773
```bash
774774
docker run --rm \
@@ -783,5 +783,5 @@ oncall-migrator python /app/add_users_to_grafana.py
783783
```
784784

785785
This is useful when you want to selectively add users to Grafana, such as when testing the migration process
786-
or when you only need to add specific users from a large OpsGenie organization.
787-
The `OPSGENIE_FILTER_USERS` variable should contain a comma-separated list of OpsGenie user IDs.
786+
or when you only need to add specific users from a large Opsgenie organization.
787+
The `OPSGENIE_FILTER_USERS` variable should contain a comma-separated list of Opsgenie user IDs.

0 commit comments

Comments
 (0)