From aea88d5e6f6137a56973ee0c6af9cd3ce6ef2e32 Mon Sep 17 00:00:00 2001 From: "api-clients-generation-pipeline[bot]" <54105614+api-clients-generation-pipeline[bot]@users.noreply.github.com> Date: Fri, 6 Sep 2024 21:25:25 +0000 Subject: [PATCH] Dashboards - Toplist widget style - Add palette (#1992) Co-authored-by: ci.datadog-api-spec Co-authored-by: api-clients-generation-pipeline[bot] <54105614+api-clients-generation-pipeline[bot]@users.noreply.github.com> --- .apigentools-info | 8 ++++---- .generator/schemas/v1/openapi.yaml | 3 +++ ...ith-a-toplist-widget-sorted-by-group.frozen | 2 +- ...d-with-a-toplist-widget-sorted-by-group.yml | 18 +++++++++--------- ...-a-new-dashboard-with-toplist-widget.frozen | 2 +- ...ate-a-new-dashboard-with-toplist-widget.yml | 18 +++++++++--------- .../dashboards/CreateDashboard_1213075383.rb | 1 + .../dashboards/CreateDashboard_2563642929.rb | 1 + features/v1/dashboards.feature | 2 +- .../toplist_widget.json | 3 ++- .../v1/models/toplist_widget_style.rb | 12 +++++++++++- 11 files changed, 43 insertions(+), 27 deletions(-) diff --git a/.apigentools-info b/.apigentools-info index f88ad8112b4..75f41659ef7 100644 --- a/.apigentools-info +++ b/.apigentools-info @@ -4,13 +4,13 @@ "spec_versions": { "v1": { "apigentools_version": "1.6.6", - "regenerated": "2024-09-04 17:12:26.140493", - "spec_repo_commit": "8e0507d2" + "regenerated": "2024-09-06 21:00:12.124581", + "spec_repo_commit": "3dff532a" }, "v2": { "apigentools_version": "1.6.6", - "regenerated": "2024-09-04 17:12:26.158768", - "spec_repo_commit": "8e0507d2" + "regenerated": "2024-09-06 21:00:12.142757", + "spec_repo_commit": "3dff532a" } } } \ No newline at end of file diff --git a/.generator/schemas/v1/openapi.yaml b/.generator/schemas/v1/openapi.yaml index 507a26a653f..7e7134461fa 100644 --- a/.generator/schemas/v1/openapi.yaml +++ b/.generator/schemas/v1/openapi.yaml @@ -17115,6 +17115,9 @@ components: properties: display: $ref: '#/components/schemas/ToplistWidgetDisplay' + palette: + description: Color palette to apply to the widget. + type: string scaling: $ref: '#/components/schemas/ToplistWidgetScaling' type: object diff --git a/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-a-toplist-widget-sorted-by-group.frozen b/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-a-toplist-widget-sorted-by-group.frozen index a5750081be1..53ed77b4f6f 100644 --- a/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-a-toplist-widget-sorted-by-group.frozen +++ b/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-a-toplist-widget-sorted-by-group.frozen @@ -1 +1 @@ -2024-05-21T14:43:42.680Z \ No newline at end of file +2024-09-06T12:10:50.473Z \ No newline at end of file diff --git a/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-a-toplist-widget-sorted-by-group.yml b/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-a-toplist-widget-sorted-by-group.yml index 75088d7a155..5b7b6a4fd61 100644 --- a/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-a-toplist-widget-sorted-by-group.yml +++ b/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-a-toplist-widget-sorted-by-group.yml @@ -1,10 +1,10 @@ http_interactions: -- recorded_at: Tue, 21 May 2024 14:43:42 GMT +- recorded_at: Fri, 06 Sep 2024 12:10:50 GMT request: body: encoding: UTF-8 - string: '{"description":"","is_read_only":false,"layout_type":"free","notify_list":[],"template_variables":[],"title":"Test-Create_a_new_dashboard_with_a_toplist_widget_sorted_by_group-1716302622","widgets":[{"definition":{"requests":[{"formulas":[{"formula":"query1"}],"queries":[{"aggregator":"avg","data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} - by {service}"}],"response_format":"scalar","sort":{"count":10,"order_by":[{"name":"service","order":"asc","type":"group"}]}}],"style":{"display":{"legend":"inline","type":"stacked"},"scaling":"relative"},"time":{},"title":"","title_align":"left","title_size":"16","type":"toplist"},"layout":{"height":15,"width":47,"x":0,"y":0}}]}' + string: '{"description":"","is_read_only":false,"layout_type":"free","notify_list":[],"template_variables":[],"title":"Test-Create_a_new_dashboard_with_a_toplist_widget_sorted_by_group-1725624650","widgets":[{"definition":{"requests":[{"formulas":[{"formula":"query1"}],"queries":[{"aggregator":"avg","data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} + by {service}"}],"response_format":"scalar","sort":{"count":10,"order_by":[{"name":"service","order":"asc","type":"group"}]}}],"style":{"display":{"legend":"inline","type":"stacked"},"palette":"dog_classic","scaling":"relative"},"time":{},"title":"","title_align":"left","title_size":"16","type":"toplist"},"layout":{"height":15,"width":47,"x":0,"y":0}}]}' headers: Accept: - application/json @@ -15,9 +15,9 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"id":"wbt-nas-fux","title":"Test-Create_a_new_dashboard_with_a_toplist_widget_sorted_by_group-1716302622","description":"","author_handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","author_name":"CI - Account","layout_type":"free","url":"/dashboard/wbt-nas-fux/test-createanewdashboardwithatoplistwidgetsortedbygroup-1716302622","is_read_only":false,"template_variables":[],"widgets":[{"definition":{"requests":[{"formulas":[{"formula":"query1"}],"queries":[{"aggregator":"avg","data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} - by {service}"}],"response_format":"scalar","sort":{"count":10,"order_by":[{"name":"service","order":"asc","type":"group"}]}}],"style":{"display":{"legend":"inline","type":"stacked"},"scaling":"relative"},"time":{},"title":"","title_align":"left","title_size":"16","type":"toplist"},"layout":{"height":15,"width":47,"x":0,"y":0},"id":4714578700620842}],"notify_list":[],"created_at":"2024-05-21T14:43:42.875646+00:00","modified_at":"2024-05-21T14:43:42.875646+00:00","restricted_roles":[]} + string: '{"id":"pr4-bz7-nn3","title":"Test-Create_a_new_dashboard_with_a_toplist_widget_sorted_by_group-1725624650","description":"","author_handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","author_name":"CI + Account","layout_type":"free","url":"/dashboard/pr4-bz7-nn3/test-createanewdashboardwithatoplistwidgetsortedbygroup-1725624650","is_read_only":false,"template_variables":[],"widgets":[{"definition":{"requests":[{"formulas":[{"formula":"query1"}],"queries":[{"aggregator":"avg","data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} + by {service}"}],"response_format":"scalar","sort":{"count":10,"order_by":[{"name":"service","order":"asc","type":"group"}]}}],"style":{"display":{"legend":"inline","type":"stacked"},"palette":"dog_classic","scaling":"relative"},"time":{},"title":"","title_align":"left","title_size":"16","type":"toplist"},"layout":{"height":15,"width":47,"x":0,"y":0},"id":8644525358047960}],"notify_list":[],"created_at":"2024-09-06T12:10:50.735923+00:00","modified_at":"2024-09-06T12:10:50.735923+00:00","restricted_roles":[]} ' headers: @@ -26,18 +26,18 @@ http_interactions: status: code: 200 message: OK -- recorded_at: Tue, 21 May 2024 14:43:42 GMT +- recorded_at: Fri, 06 Sep 2024 12:10:50 GMT request: body: null headers: Accept: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v1/dashboard/wbt-nas-fux + uri: https://api.datadoghq.com/api/v1/dashboard/pr4-bz7-nn3 response: body: encoding: UTF-8 - string: '{"deleted_dashboard_id":"wbt-nas-fux"} + string: '{"deleted_dashboard_id":"pr4-bz7-nn3"} ' headers: diff --git a/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-toplist-widget.frozen b/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-toplist-widget.frozen index 858c73b2553..342b24a3fec 100644 --- a/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-toplist-widget.frozen +++ b/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-toplist-widget.frozen @@ -1 +1 @@ -2024-05-15T20:07:42.432Z \ No newline at end of file +2024-09-06T12:10:51.099Z \ No newline at end of file diff --git a/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-toplist-widget.yml b/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-toplist-widget.yml index 9f72dfc430d..1029375cef7 100644 --- a/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-toplist-widget.yml +++ b/cassettes/features/v1/dashboards/Create-a-new-dashboard-with-toplist-widget.yml @@ -1,10 +1,10 @@ http_interactions: -- recorded_at: Wed, 15 May 2024 20:07:42 GMT +- recorded_at: Fri, 06 Sep 2024 12:10:51 GMT request: body: encoding: UTF-8 - string: '{"description":"","is_read_only":false,"layout_type":"free","notify_list":[],"template_variables":[],"title":"Test-Create_a_new_dashboard_with_toplist_widget-1715803662","widgets":[{"definition":{"requests":[{"formulas":[{"formula":"query1"}],"queries":[{"aggregator":"avg","data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} - by {service}"}],"response_format":"scalar","sort":{"count":10,"order_by":[{"index":0,"order":"desc","type":"formula"}]}}],"style":{"display":{"legend":"inline","type":"stacked"},"scaling":"relative"},"time":{},"title":"","title_align":"left","title_size":"16","type":"toplist"},"layout":{"height":15,"width":47,"x":0,"y":0}}]}' + string: '{"description":"","is_read_only":false,"layout_type":"free","notify_list":[],"template_variables":[],"title":"Test-Create_a_new_dashboard_with_toplist_widget-1725624651","widgets":[{"definition":{"requests":[{"formulas":[{"formula":"query1"}],"queries":[{"aggregator":"avg","data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} + by {service}"}],"response_format":"scalar","sort":{"count":10,"order_by":[{"index":0,"order":"desc","type":"formula"}]}}],"style":{"display":{"legend":"inline","type":"stacked"},"palette":"dog_classic","scaling":"relative"},"time":{},"title":"","title_align":"left","title_size":"16","type":"toplist"},"layout":{"height":15,"width":47,"x":0,"y":0}}]}' headers: Accept: - application/json @@ -15,9 +15,9 @@ http_interactions: response: body: encoding: UTF-8 - string: '{"id":"y3a-6s5-ycw","title":"Test-Create_a_new_dashboard_with_toplist_widget-1715803662","description":"","author_handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","author_name":"CI - Account","layout_type":"free","url":"/dashboard/y3a-6s5-ycw/test-createanewdashboardwithtoplistwidget-1715803662","is_read_only":false,"template_variables":[],"widgets":[{"definition":{"requests":[{"formulas":[{"formula":"query1"}],"queries":[{"aggregator":"avg","data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} - by {service}"}],"response_format":"scalar","sort":{"count":10,"order_by":[{"index":0,"order":"desc","type":"formula"}]}}],"style":{"display":{"legend":"inline","type":"stacked"},"scaling":"relative"},"time":{},"title":"","title_align":"left","title_size":"16","type":"toplist"},"layout":{"height":15,"width":47,"x":0,"y":0},"id":1848529953140569}],"notify_list":[],"created_at":"2024-05-15T20:07:42.589379+00:00","modified_at":"2024-05-15T20:07:42.589379+00:00","restricted_roles":[]} + string: '{"id":"q25-ie2-8p9","title":"Test-Create_a_new_dashboard_with_toplist_widget-1725624651","description":"","author_handle":"9919ec9b-ebc7-49ee-8dc8-03626e717cca","author_name":"CI + Account","layout_type":"free","url":"/dashboard/q25-ie2-8p9/test-createanewdashboardwithtoplistwidget-1725624651","is_read_only":false,"template_variables":[],"widgets":[{"definition":{"requests":[{"formulas":[{"formula":"query1"}],"queries":[{"aggregator":"avg","data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} + by {service}"}],"response_format":"scalar","sort":{"count":10,"order_by":[{"index":0,"order":"desc","type":"formula"}]}}],"style":{"display":{"legend":"inline","type":"stacked"},"palette":"dog_classic","scaling":"relative"},"time":{},"title":"","title_align":"left","title_size":"16","type":"toplist"},"layout":{"height":15,"width":47,"x":0,"y":0},"id":6898333964604098}],"notify_list":[],"created_at":"2024-09-06T12:10:51.371974+00:00","modified_at":"2024-09-06T12:10:51.371974+00:00","restricted_roles":[]} ' headers: @@ -26,18 +26,18 @@ http_interactions: status: code: 200 message: OK -- recorded_at: Wed, 15 May 2024 20:07:42 GMT +- recorded_at: Fri, 06 Sep 2024 12:10:51 GMT request: body: null headers: Accept: - application/json method: DELETE - uri: https://api.datadoghq.com/api/v1/dashboard/y3a-6s5-ycw + uri: https://api.datadoghq.com/api/v1/dashboard/q25-ie2-8p9 response: body: encoding: UTF-8 - string: '{"deleted_dashboard_id":"y3a-6s5-ycw"} + string: '{"deleted_dashboard_id":"q25-ie2-8p9"} ' headers: diff --git a/examples/v1/dashboards/CreateDashboard_1213075383.rb b/examples/v1/dashboards/CreateDashboard_1213075383.rb index 94c32b35b61..e638998b79a 100644 --- a/examples/v1/dashboards/CreateDashboard_1213075383.rb +++ b/examples/v1/dashboards/CreateDashboard_1213075383.rb @@ -25,6 +25,7 @@ legend: DatadogAPIClient::V1::ToplistWidgetLegend::INLINE, }), scaling: DatadogAPIClient::V1::ToplistWidgetScaling::RELATIVE, + palette: "dog_classic", }), type: DatadogAPIClient::V1::ToplistWidgetDefinitionType::TOPLIST, requests: [ diff --git a/examples/v1/dashboards/CreateDashboard_2563642929.rb b/examples/v1/dashboards/CreateDashboard_2563642929.rb index c26fcfc61ed..69e990be7d3 100644 --- a/examples/v1/dashboards/CreateDashboard_2563642929.rb +++ b/examples/v1/dashboards/CreateDashboard_2563642929.rb @@ -25,6 +25,7 @@ legend: DatadogAPIClient::V1::ToplistWidgetLegend::INLINE, }), scaling: DatadogAPIClient::V1::ToplistWidgetScaling::RELATIVE, + palette: "dog_classic", }), type: DatadogAPIClient::V1::ToplistWidgetDefinitionType::TOPLIST, requests: [ diff --git a/features/v1/dashboards.feature b/features/v1/dashboards.feature index 0b080ef44c7..27f714940da 100644 --- a/features/v1/dashboards.feature +++ b/features/v1/dashboards.feature @@ -190,7 +190,7 @@ Feature: Dashboards @team:DataDog/dashboards-backend Scenario: Create a new dashboard with a toplist widget sorted by group Given new "CreateDashboard" request - And body with value {"title":"{{ unique }}","description":"","widgets":[{"layout":{"x":0,"y":0,"width":47,"height":15},"definition":{"title":"","title_size":"16","title_align":"left","time":{},"style":{"display": {"type": "stacked","legend": "inline"},"scaling": "relative"},"type":"toplist","requests":[{"queries":[{"data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} by {service}","aggregator":"avg"}],"formulas":[{"formula":"query1"}],"sort":{"count":10,"order_by":[{"type":"group","name":"service","order":"asc"}]},"response_format":"scalar"}]}}],"template_variables":[],"layout_type":"free","is_read_only":false,"notify_list":[]} + And body with value {"title":"{{ unique }}","description":"","widgets":[{"layout":{"x":0,"y":0,"width":47,"height":15},"definition":{"title":"","title_size":"16","title_align":"left","time":{},"style":{"display": {"type": "stacked","legend": "inline"},"scaling": "relative","palette": "dog_classic"},"type":"toplist","requests":[{"queries":[{"data_source":"metrics","name":"query1","query":"avg:system.cpu.user{*} by {service}","aggregator":"avg"}],"formulas":[{"formula":"query1"}],"sort":{"count":10,"order_by":[{"type":"group","name":"service","order":"asc"}]},"response_format":"scalar"}]}}],"template_variables":[],"layout_type":"free","is_read_only":false,"notify_list":[]} When the request is sent Then the response status is 200 OK And the response "widgets[0].definition.type" is equal to "toplist" diff --git a/features/v1/dashboards_json_payload/toplist_widget.json b/features/v1/dashboards_json_payload/toplist_widget.json index fd16e0a6121..bb07133d5f1 100644 --- a/features/v1/dashboards_json_payload/toplist_widget.json +++ b/features/v1/dashboards_json_payload/toplist_widget.json @@ -21,7 +21,8 @@ "type": "stacked", "legend": "inline" }, - "scaling": "relative" + "scaling": "relative", + "palette": "dog_classic" }, "type":"toplist", "requests":[ diff --git a/lib/datadog_api_client/v1/models/toplist_widget_style.rb b/lib/datadog_api_client/v1/models/toplist_widget_style.rb index 4a663ede364..0745133d7e9 100644 --- a/lib/datadog_api_client/v1/models/toplist_widget_style.rb +++ b/lib/datadog_api_client/v1/models/toplist_widget_style.rb @@ -24,6 +24,9 @@ class ToplistWidgetStyle # Top list widget display options. attr_accessor :display + # Color palette to apply to the widget. + attr_accessor :palette + # Top list widget scaling definition. attr_accessor :scaling @@ -34,6 +37,7 @@ class ToplistWidgetStyle def self.attribute_map { :'display' => :'display', + :'palette' => :'palette', :'scaling' => :'scaling' } end @@ -43,6 +47,7 @@ def self.attribute_map def self.openapi_types { :'display' => :'ToplistWidgetDisplay', + :'palette' => :'String', :'scaling' => :'ToplistWidgetScaling' } end @@ -69,6 +74,10 @@ def initialize(attributes = {}) self.display = attributes[:'display'] end + if attributes.key?(:'palette') + self.palette = attributes[:'palette'] + end + if attributes.key?(:'scaling') self.scaling = attributes[:'scaling'] end @@ -101,6 +110,7 @@ def ==(o) return true if self.equal?(o) self.class == o.class && display == o.display && + palette == o.palette && scaling == o.scaling additional_properties == o.additional_properties end @@ -109,7 +119,7 @@ def ==(o) # @return [Integer] Hash code # @!visibility private def hash - [display, scaling].hash + [display, palette, scaling].hash end end end