From 5aab95885f74715faad6deaa44bdda4b2110bc67 Mon Sep 17 00:00:00 2001 From: Kevin Lewin <97046295+lewinkedrs@users.noreply.github.com> Date: Tue, 14 Jun 2022 04:15:21 -0400 Subject: [PATCH] Alertmanager: Adding SigV4 Authentication to Alertmanager Datasource (#49718) * adding sigv4 alertmanager * adding sigv4 alertmanager * ConfigEditor: Adding Render Prop --- pkg/services/datasources/service/datasource_service.go | 2 +- .../app/plugins/datasource/alertmanager/ConfigEditor.tsx | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/pkg/services/datasources/service/datasource_service.go b/pkg/services/datasources/service/datasource_service.go index 1a12960103d..2803c1b178d 100644 --- a/pkg/services/datasources/service/datasource_service.go +++ b/pkg/services/datasources/service/datasource_service.go @@ -565,7 +565,7 @@ func awsServiceNamespace(dsType string) string { switch dsType { case models.DS_ES, models.DS_ES_OPEN_DISTRO, models.DS_ES_OPENSEARCH: return "es" - case models.DS_PROMETHEUS: + case models.DS_PROMETHEUS, models.DS_ALERTMANAGER: return "aps" default: panic(fmt.Sprintf("Unsupported datasource %q", dsType)) diff --git a/public/app/plugins/datasource/alertmanager/ConfigEditor.tsx b/public/app/plugins/datasource/alertmanager/ConfigEditor.tsx index fdb4710782e..27598728a28 100644 --- a/public/app/plugins/datasource/alertmanager/ConfigEditor.tsx +++ b/public/app/plugins/datasource/alertmanager/ConfigEditor.tsx @@ -1,7 +1,9 @@ import React from 'react'; +import { SIGV4ConnectionConfig } from '@grafana/aws-sdk'; import { DataSourcePluginOptionsEditorProps, SelectableValue } from '@grafana/data'; import { DataSourceHttpSettings, InlineFormLabel, Select } from '@grafana/ui'; +import { config } from 'app/core/config'; import { AlertManagerDataSourceJsonData, AlertManagerImplementation } from './types'; @@ -21,7 +23,9 @@ const IMPL_OPTIONS: SelectableValue[] = [ }, ]; -export const ConfigEditor: React.FC = ({ options, onOptionsChange }) => { +export const ConfigEditor = (props: Props) => { + const { options, onOptionsChange } = props; + return ( <>

Alertmanager

@@ -51,6 +55,8 @@ export const ConfigEditor: React.FC = ({ options, onOptionsChange }) => { dataSourceConfig={options} showAccessOptions={true} onChange={onOptionsChange} + sigV4AuthToggleEnabled={config.sigV4AuthEnabled} + renderSigV4Editor={} /> );