From cd323622b73dc6846c8c298bd025abf56c4b0e5a Mon Sep 17 00:00:00 2001 From: "Grot (@grafanabot)" <43478413+grafanabot@users.noreply.github.com> Date: Thu, 6 Apr 2023 22:10:29 +0200 Subject: [PATCH] [v9.4.x] CloudMonitoring: Add project selector for MQL editor[fix] (#65844) CloudMonitoring: Add project selector for MQL editor[fix] (#65567) (cherry picked from commit 81cb84d098098a76318ad4e0f760b1b2e7ebb506) Co-authored-by: Alyssa Bull <58453566+alyssabull@users.noreply.github.com> --- .../components/MetricQueryEditor.test.tsx | 9 +++++++++ .../cloud-monitoring/components/MetricQueryEditor.tsx | 8 ++++++++ .../datasource/cloud-monitoring/components/Project.tsx | 1 - 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/public/app/plugins/datasource/cloud-monitoring/components/MetricQueryEditor.test.tsx b/public/app/plugins/datasource/cloud-monitoring/components/MetricQueryEditor.test.tsx index 82ca0af7ee1..4a1e679771c 100644 --- a/public/app/plugins/datasource/cloud-monitoring/components/MetricQueryEditor.test.tsx +++ b/public/app/plugins/datasource/cloud-monitoring/components/MetricQueryEditor.test.tsx @@ -55,4 +55,13 @@ describe('MetricQueryEditor', () => { const l = await screen.findByLabelText('Project'); expect(l).toBeInTheDocument(); }); + + it('renders a Project dropdown', async () => { + const query = createMockQuery(); + query.queryType = QueryType.TIME_SERIES_QUERY; + + render(); + const projectDropdown = await screen.findByLabelText('Project'); + expect(projectDropdown).toBeInTheDocument(); + }); }); diff --git a/public/app/plugins/datasource/cloud-monitoring/components/MetricQueryEditor.tsx b/public/app/plugins/datasource/cloud-monitoring/components/MetricQueryEditor.tsx index 6da65007a55..3375a3dd17d 100644 --- a/public/app/plugins/datasource/cloud-monitoring/components/MetricQueryEditor.tsx +++ b/public/app/plugins/datasource/cloud-monitoring/components/MetricQueryEditor.tsx @@ -15,6 +15,7 @@ import { import { GraphPeriod } from './GraphPeriod'; import { MQLQueryEditor } from './MQLQueryEditor'; +import { Project } from './Project'; import { VisualMetricQueryEditor } from './VisualMetricQueryEditor'; export interface Props { @@ -99,6 +100,13 @@ function Editor({ {query.queryType === QueryType.TIME_SERIES_QUERY && query.timeSeriesQuery && ( <> + onChangeTimeSeriesQuery({ ...query.timeSeriesQuery!, projectName: projectName })} + templateVariableOptions={variableOptionGroup.options} + projectName={query.timeSeriesQuery.projectName!} + /> onChangeTimeSeriesQuery({ ...query.timeSeriesQuery!, query: q })} onRunQuery={onRunQuery} diff --git a/public/app/plugins/datasource/cloud-monitoring/components/Project.tsx b/public/app/plugins/datasource/cloud-monitoring/components/Project.tsx index 59f8038c6df..a36b41f2cd2 100644 --- a/public/app/plugins/datasource/cloud-monitoring/components/Project.tsx +++ b/public/app/plugins/datasource/cloud-monitoring/components/Project.tsx @@ -22,7 +22,6 @@ export function Project({ refId, projectName, datasource, onChange, templateVari const projectsWithTemplateVariables = useMemo( () => [ - projects, { label: 'Template Variables', options: templateVariableOptions,