Migration Tool

FireHydrant has released an open-source migration tool, hosted here on GitHub. This tool supports importing resources from legacy alerting tools PagerDuty, Opsgenie, and Splunk On-Call (VictorOps).

The tool runs in a Terminal, and the output is Terraform configuration with the selected components you've chosen to import from the selected alerting tool.

Installation and Setup

You can download the binary from the releases section on GitHub or you can use the Go toolchain to install the binary:

go install github.com/firehydrant/signals-migrator@latest

Once downloaded, you will want to ensure the following environmental variables are set:

VariableDescription
FIREHYDRANT_API_KEYAn API key with access to FireHydrant. You can learn more about these on API Keys.
PROVIDEROne of PagerDuty, Opsgenie, or VictorOps. The value is case-insensitive, so for example both PagerDuty and pagerduty are acceptable.
PROVIDER_API_KEYAPI key for the alerting provider you're migrating from.
PROVIDER_APP_IDOnly required for VictorOps. This will be your API ID, which can be found in VictorOps on the Integrations > API page.

Import Usage

Execute the program by running signals-migrator import. You will be taken through an interactive prompt to select and choose Users, Teams, Escalation Policies, and On-Call Schedules to select, depending on your provider.

Example of interacting with the tool

Example of interacting with the tool

Any questions or comments as you use the migrator can be directly submitted in the repository as a GitHub issue or reported to FireHydrant support.

Once the tool has finished executing, it will output Terraform configuration into the output/* folder. From there, you may choose to apply the Terraform configuration and discard it or alternatively fold it in together with other Terraform configuration for FireHydrant.

Imported schedules from pagerduty.
Please select (out of 1) which escalation policies to migrate.
You have selected:
  [+] ADD ALL
[+] All escalation policies will be migrated to FireHydrant.
Imported escalation policies from pagerduty.
Terraform file has been written to output/pagerduty_to_fh_signals.tf