datadog_api_client 2.14.0 → 2.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +6 -6
  3. data/.generator/schemas/v1/openapi.yaml +808 -143
  4. data/.generator/schemas/v2/openapi.yaml +1808 -166
  5. data/.generator/src/generator/openapi.py +3 -1
  6. data/.generator/src/generator/templates/api.j2 +8 -2
  7. data/.generator/src/generator/templates/api_client.j2 +19 -1
  8. data/.generator/src/generator/templates/model_base.j2 +1 -0
  9. data/CHANGELOG.md +56 -0
  10. data/examples/v1/dashboards/CreateDashboard_1754992756.rb +44 -0
  11. data/examples/v1/dashboards/CreateDashboard_2278756614.rb +91 -0
  12. data/examples/v1/dashboards/CreateDashboard_2618036642.rb +36 -0
  13. data/examples/v1/dashboards/CreateDashboard_2705593938.rb +3 -0
  14. data/examples/v1/dashboards/CreateDashboard_3777304439.rb +50 -0
  15. data/examples/v1/dashboards/ListDashboards_1062671515.rb +8 -0
  16. data/examples/v1/monitors/CreateMonitor_1539578087.rb +36 -0
  17. data/examples/v1/monitors/ListMonitors_2966492814.rb +8 -0
  18. data/examples/v1/notebooks/ListNotebooks_788665428.rb +8 -0
  19. data/examples/v1/service-level-objective-corrections/ListSLOCorrection_2647266873.rb +8 -0
  20. data/examples/v1/service-level-objectives/ListSLOs_3036942817.rb +8 -0
  21. data/examples/v1/synthetics/CreateSyntheticsAPITest_1487281163.rb +1 -0
  22. data/examples/v1/synthetics/CreateSyntheticsBrowserTest.rb +1 -1
  23. data/examples/v1/synthetics/CreateSyntheticsBrowserTest_2932742688.rb +1 -1
  24. data/examples/v1/synthetics/CreateSyntheticsBrowserTest_397420811.rb +1 -1
  25. data/examples/v1/synthetics/ListTests_1938827783.rb +8 -0
  26. data/examples/v1/usage-metering/GetUsageCIApp.rb +4 -1
  27. data/examples/v1/usage-metering/GetUsageCWS.rb +4 -1
  28. data/examples/v1/usage-metering/GetUsageCloudSecurityPostureManagement.rb +1 -1
  29. data/examples/v2/apm-retention-filters/CreateApmRetentionFilter.rb +20 -0
  30. data/examples/v2/apm-retention-filters/DeleteApmRetentionFilter.rb +8 -0
  31. data/examples/v2/apm-retention-filters/GetApmRetentionFilter.rb +8 -0
  32. data/examples/v2/apm-retention-filters/ListApmRetentionFilters.rb +5 -0
  33. data/examples/v2/apm-retention-filters/ReorderApmRetentionFilters.rb +18 -0
  34. data/examples/v2/apm-retention-filters/UpdateApmRetentionFilter.rb +24 -0
  35. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent.rb +0 -3
  36. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_129899466.rb +0 -8
  37. data/examples/v2/container-images/ListContainerImages.rb +8 -0
  38. data/examples/v2/container-images/ListContainerImages_3088586393.rb +11 -0
  39. data/examples/v2/container-images/ListContainerImages_3974828736.rb +11 -0
  40. data/examples/v2/downtimes/CancelDowntime.rb +0 -3
  41. data/examples/v2/downtimes/CreateDowntime.rb +0 -3
  42. data/examples/v2/downtimes/GetDowntime.rb +0 -3
  43. data/examples/v2/downtimes/ListDowntimes.rb +0 -3
  44. data/examples/v2/downtimes/ListDowntimes_805770330.rb +8 -0
  45. data/examples/v2/downtimes/ListMonitorDowntimes.rb +0 -3
  46. data/examples/v2/downtimes/ListMonitorDowntimes_128979780.rb +0 -3
  47. data/examples/v2/downtimes/UpdateDowntime.rb +0 -3
  48. data/examples/v2/gcp-integration/CreateGCPSTSAccount_109518525.rb +19 -0
  49. data/examples/v2/powerpack/CreatePowerpack.rb +47 -0
  50. data/examples/v2/powerpack/DeletePowerpack.rb +8 -0
  51. data/examples/v2/powerpack/GetPowerpack.rb +8 -0
  52. data/examples/v2/powerpack/ListPowerpacks.rb +8 -0
  53. data/examples/v2/powerpack/ListPowerpacks_1173755071.rb +8 -0
  54. data/examples/v2/powerpack/UpdatePowerpack.rb +50 -0
  55. data/examples/v2/rum/CreateRUMApplication.rb +1 -1
  56. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_1092490364.rb +1 -1
  57. data/examples/v2/security-monitoring/UpdateSecurityMonitoringRule_428087276.rb +1 -1
  58. data/examples/v2/service-accounts/CreateServiceAccountApplicationKey.rb +5 -7
  59. data/examples/v2/service-accounts/DeleteServiceAccountApplicationKey.rb +7 -1
  60. data/examples/v2/service-accounts/GetServiceAccountApplicationKey.rb +7 -1
  61. data/examples/v2/service-accounts/ListServiceAccountApplicationKeys.rb +4 -1
  62. data/examples/v2/service-accounts/UpdateServiceAccountApplicationKey.rb +11 -9
  63. data/examples/v2/service-definition/CreateOrUpdateServiceDefinitions.rb +23 -12
  64. data/examples/v2/service-definition/CreateOrUpdateServiceDefinitions_2621709423.rb +53 -0
  65. data/examples/v2/teams/ListTeams_3592098458.rb +8 -0
  66. data/examples/v2/users/ListUsers_4075885358.rb +8 -0
  67. data/lib/datadog_api_client/api_client.rb +19 -1
  68. data/lib/datadog_api_client/configuration.rb +1 -7
  69. data/lib/datadog_api_client/inflector.rb +81 -0
  70. data/lib/datadog_api_client/v1/api/dashboards_api.rb +25 -0
  71. data/lib/datadog_api_client/v1/api/monitors_api.rb +23 -20
  72. data/lib/datadog_api_client/v1/api/notebooks_api.rb +21 -0
  73. data/lib/datadog_api_client/v1/api/service_level_objective_corrections_api.rb +21 -0
  74. data/lib/datadog_api_client/v1/api/service_level_objectives_api.rb +21 -0
  75. data/lib/datadog_api_client/v1/api/synthetics_api.rb +25 -3
  76. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +6 -6
  77. data/lib/datadog_api_client/v1/api/webhooks_integration_api.rb +1 -1
  78. data/lib/datadog_api_client/v1/model_base.rb +1 -0
  79. data/lib/datadog_api_client/v1/models/heat_map_widget_request.rb +35 -1
  80. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +7 -4
  81. data/lib/datadog_api_client/v1/models/ip_prefixes_global.rb +94 -0
  82. data/lib/datadog_api_client/v1/models/ip_ranges.rb +11 -1
  83. data/lib/datadog_api_client/v1/models/list_stream_source.rb +1 -0
  84. data/lib/datadog_api_client/v1/models/monitor.rb +1 -1
  85. data/lib/datadog_api_client/v1/models/monitor_options.rb +1 -1
  86. data/lib/datadog_api_client/v1/models/monitor_options_custom_schedule.rb +82 -0
  87. data/lib/datadog_api_client/v1/models/monitor_options_custom_schedule_recurrence.rb +100 -0
  88. data/lib/datadog_api_client/v1/models/monitor_options_scheduling_options.rb +11 -1
  89. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +6 -0
  90. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +65 -5
  91. data/lib/datadog_api_client/v1/models/powerpack_template_variable_contents.rb +131 -0
  92. data/lib/datadog_api_client/v1/models/powerpack_template_variables.rb +94 -0
  93. data/lib/datadog_api_client/v1/models/powerpack_widget_definition.rb +169 -0
  94. data/lib/datadog_api_client/v1/models/powerpack_widget_definition_type.rb +26 -0
  95. data/lib/datadog_api_client/v1/models/split_config.rb +181 -0
  96. data/lib/datadog_api_client/v1/models/split_config_sort_compute.rb +119 -0
  97. data/lib/datadog_api_client/v1/models/split_dimension.rb +98 -0
  98. data/lib/datadog_api_client/v1/models/split_graph_source_widget_definition.rb +70 -0
  99. data/lib/datadog_api_client/v1/models/split_graph_viz_size.rb +29 -0
  100. data/lib/datadog_api_client/v1/models/split_graph_widget_definition.rb +191 -0
  101. data/lib/datadog_api_client/v1/models/split_graph_widget_definition_type.rb +26 -0
  102. data/lib/datadog_api_client/v1/models/split_sort.rb +108 -0
  103. data/lib/datadog_api_client/v1/models/split_vector_entry_item.rb +125 -0
  104. data/lib/datadog_api_client/v1/models/sunburst_widget_request.rb +14 -4
  105. data/lib/datadog_api_client/v1/models/synthetics_assertion_target.rb +11 -1
  106. data/lib/datadog_api_client/v1/models/synthetics_assertion_timings_scope.rb +27 -0
  107. data/lib/datadog_api_client/v1/models/usage_attribution_values.rb +4 -4
  108. data/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_hour.rb +8 -8
  109. data/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_response.rb +2 -2
  110. data/lib/datadog_api_client/v1/models/usage_profiling_hour.rb +12 -1
  111. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +168 -8
  112. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +168 -8
  113. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +168 -8
  114. data/lib/datadog_api_client/v1/models/widget_definition.rb +8 -6
  115. data/lib/datadog_api_client/v2/api/apm_retention_filters_api.rb +423 -0
  116. data/lib/datadog_api_client/v2/api/audit_api.rb +1 -1
  117. data/lib/datadog_api_client/v2/api/ci_visibility_pipelines_api.rb +5 -11
  118. data/lib/datadog_api_client/v2/api/ci_visibility_tests_api.rb +4 -4
  119. data/lib/datadog_api_client/v2/api/container_images_api.rb +129 -0
  120. data/lib/datadog_api_client/v2/api/downtimes_api.rb +25 -36
  121. data/lib/datadog_api_client/v2/api/events_api.rb +1 -1
  122. data/lib/datadog_api_client/v2/api/incidents_api.rb +1 -1
  123. data/lib/datadog_api_client/v2/api/logs_api.rb +1 -1
  124. data/lib/datadog_api_client/v2/api/powerpack_api.rb +383 -0
  125. data/lib/datadog_api_client/v2/api/processes_api.rb +1 -1
  126. data/lib/datadog_api_client/v2/api/rum_api.rb +1 -1
  127. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +3 -3
  128. data/lib/datadog_api_client/v2/api/service_definition_api.rb +4 -4
  129. data/lib/datadog_api_client/v2/api/spans_api.rb +1 -1
  130. data/lib/datadog_api_client/v2/api/teams_api.rb +22 -0
  131. data/lib/datadog_api_client/v2/api/usage_metering_api.rb +1 -1
  132. data/lib/datadog_api_client/v2/api/users_api.rb +22 -0
  133. data/lib/datadog_api_client/v2/model_base.rb +1 -0
  134. data/lib/datadog_api_client/v2/models/apm_retention_filter_type.rb +26 -0
  135. data/lib/datadog_api_client/v2/models/container_image.rb +100 -0
  136. data/lib/datadog_api_client/v2/models/container_image_attributes.rb +261 -0
  137. data/lib/datadog_api_client/v2/models/container_image_flavor.rb +120 -0
  138. data/lib/datadog_api_client/v2/models/container_image_group.rb +110 -0
  139. data/lib/datadog_api_client/v2/models/container_image_group_attributes.rb +100 -0
  140. data/lib/datadog_api_client/v2/models/container_image_group_images_relationships_link.rb +92 -0
  141. data/lib/datadog_api_client/v2/models/container_image_group_relationships.rb +80 -0
  142. data/lib/datadog_api_client/v2/models/container_image_group_relationships_links.rb +80 -0
  143. data/lib/datadog_api_client/v2/models/container_image_group_type.rb +26 -0
  144. data/lib/datadog_api_client/v2/models/container_image_item.rb +63 -0
  145. data/lib/datadog_api_client/v2/models/container_image_meta.rb +80 -0
  146. data/lib/datadog_api_client/v2/models/container_image_meta_page.rb +160 -0
  147. data/lib/datadog_api_client/v2/models/container_image_meta_page_type.rb +26 -0
  148. data/lib/datadog_api_client/v2/models/container_image_type.rb +26 -0
  149. data/lib/datadog_api_client/v2/models/container_image_vulnerabilities.rb +140 -0
  150. data/lib/datadog_api_client/v2/models/container_images_response.rb +102 -0
  151. data/lib/datadog_api_client/v2/models/container_images_response_links.rb +130 -0
  152. data/lib/datadog_api_client/v2/models/data_scalar_column.rb +2 -2
  153. data/lib/datadog_api_client/v2/models/downtime_relationships_monitor_data.rb +1 -1
  154. data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +13 -1
  155. data/lib/datadog_api_client/v2/models/group_scalar_column.rb +2 -2
  156. data/lib/datadog_api_client/v2/models/list_powerpacks_response.rb +114 -0
  157. data/lib/datadog_api_client/v2/models/powerpack.rb +80 -0
  158. data/lib/datadog_api_client/v2/models/powerpack_attributes.rb +164 -0
  159. data/lib/datadog_api_client/v2/models/powerpack_data.rb +110 -0
  160. data/lib/datadog_api_client/v2/models/powerpack_group_widget.rb +108 -0
  161. data/lib/datadog_api_client/v2/models/powerpack_group_widget_definition.rb +162 -0
  162. data/lib/datadog_api_client/v2/models/powerpack_group_widget_layout.rb +177 -0
  163. data/lib/datadog_api_client/v2/models/powerpack_inner_widget_layout.rb +177 -0
  164. data/lib/datadog_api_client/v2/models/powerpack_inner_widgets.rb +108 -0
  165. data/lib/datadog_api_client/v2/models/powerpack_relationships.rb +80 -0
  166. data/lib/datadog_api_client/v2/models/powerpack_response.rb +92 -0
  167. data/lib/datadog_api_client/v2/models/powerpack_response_links.rb +129 -0
  168. data/lib/datadog_api_client/v2/models/powerpack_template_variable.rb +110 -0
  169. data/lib/datadog_api_client/v2/models/powerpacks_response_meta.rb +80 -0
  170. data/lib/datadog_api_client/v2/models/powerpacks_response_meta_pagination.rb +150 -0
  171. data/lib/datadog_api_client/v2/models/reorder_retention_filters_request.rb +100 -0
  172. data/lib/datadog_api_client/v2/models/restriction_policy_binding.rb +1 -1
  173. data/lib/datadog_api_client/v2/models/retention_filter.rb +140 -0
  174. data/lib/datadog_api_client/v2/models/retention_filter_all.rb +140 -0
  175. data/lib/datadog_api_client/v2/models/retention_filter_all_attributes.rb +181 -0
  176. data/lib/datadog_api_client/v2/models/retention_filter_all_type.rb +28 -0
  177. data/lib/datadog_api_client/v2/models/retention_filter_attributes.rb +181 -0
  178. data/lib/datadog_api_client/v2/models/retention_filter_create_attributes.rb +183 -0
  179. data/lib/datadog_api_client/v2/models/retention_filter_create_data.rb +119 -0
  180. data/lib/datadog_api_client/v2/models/retention_filter_create_request.rb +98 -0
  181. data/lib/datadog_api_client/v2/models/retention_filter_response.rb +80 -0
  182. data/lib/datadog_api_client/v2/models/retention_filter_type.rb +26 -0
  183. data/lib/datadog_api_client/v2/models/retention_filter_update_data.rb +140 -0
  184. data/lib/datadog_api_client/v2/models/retention_filter_update_request.rb +98 -0
  185. data/lib/datadog_api_client/v2/models/retention_filter_without_attributes.rb +119 -0
  186. data/lib/datadog_api_client/v2/models/retention_filters_response.rb +100 -0
  187. data/lib/datadog_api_client/v2/models/scalar_column_type_group.rb +26 -0
  188. data/lib/datadog_api_client/v2/models/scalar_column_type_number.rb +26 -0
  189. data/lib/datadog_api_client/v2/models/scalar_meta.rb +8 -0
  190. data/lib/datadog_api_client/v2/models/service_definition_schema.rb +2 -1
  191. data/lib/datadog_api_client/v2/models/service_definition_schema_versions.rb +1 -0
  192. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2.rb +247 -0
  193. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_contact.rb +129 -0
  194. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_integrations.rb +90 -0
  195. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_link.rb +150 -0
  196. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_opsgenie.rb +108 -0
  197. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_opsgenie_region.rb +27 -0
  198. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_pagerduty.rb +80 -0
  199. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_type.rb +32 -0
  200. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_version.rb +26 -0
  201. data/lib/datadog_api_client/v2/models/service_definitions_create_request.rb +1 -0
  202. data/lib/datadog_api_client/v2/models/spans_filter.rb +80 -0
  203. data/lib/datadog_api_client/v2/models/spans_filter_create.rb +98 -0
  204. data/lib/datadog_api_client/version.rb +1 -1
  205. data/run-tests.sh +6 -5
  206. metadata +114 -9
  207. data/examples/v1/usage-metering/GetUsageCIApp_1064440884.rb +0 -8
  208. data/examples/v1/usage-metering/GetUsageCWS_736958514.rb +0 -8
  209. data/examples/v2/service-accounts/CreateServiceAccountApplicationKey_1761876297.rb +0 -17
  210. data/examples/v2/service-accounts/DeleteServiceAccountApplicationKey_992091161.rb +0 -11
  211. data/examples/v2/service-accounts/GetServiceAccountApplicationKey_819075131.rb +0 -11
  212. data/examples/v2/service-accounts/ListServiceAccountApplicationKeys_1268914341.rb +0 -8
  213. data/examples/v2/service-accounts/UpdateServiceAccountApplicationKey_768415790.rb +0 -22
@@ -495,6 +495,28 @@ module DatadogAPIClient::V2
495
495
  return data, status_code, headers
496
496
  end
497
497
 
498
+ # List all users.
499
+ #
500
+ # Provide a paginated version of {#list_users}, returning all items.
501
+ #
502
+ # To use it you need to use a block: list_users_with_pagination { |item| p item }
503
+ #
504
+ # @yield [User] Paginated items
505
+ def list_users_with_pagination(opts = {})
506
+ api_version = "V2"
507
+ page_size = @api_client.get_attribute_from_path(opts, "page_size", 10)
508
+ @api_client.set_attribute_from_path(api_version, opts, "page_size", Integer, page_size)
509
+ @api_client.set_attribute_from_path(api_version, opts, "page_number", Integer, 0)
510
+ while true do
511
+ response = list_users(opts)
512
+ @api_client.get_attribute_from_path(response, "data").each { |item| yield(item) }
513
+ if @api_client.get_attribute_from_path(response, "data").length < page_size
514
+ break
515
+ end
516
+ @api_client.set_attribute_from_path(api_version, opts, "page_number", Integer, @api_client.get_attribute_from_path(opts, "page_number", 0) + 1)
517
+ end
518
+ end
519
+
498
520
  # Send invitation emails.
499
521
  #
500
522
  # @see #send_invitations_with_http_info
@@ -94,6 +94,7 @@ module DatadogAPIClient::V2
94
94
  # @return [Object] Deserialized data
95
95
  # @!visibility private
96
96
  def _deserialize(type, value)
97
+ return nil if value == nil
97
98
  case type.to_sym
98
99
  when :Time
99
100
  Time.parse(value)
@@ -0,0 +1,26 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The type of the resource.
21
+ class ApmRetentionFilterType
22
+ include BaseEnumModel
23
+
24
+ apm_retention_filter = "apm_retention_filter".freeze
25
+ end
26
+ end
@@ -0,0 +1,100 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Container Image object.
21
+ class ContainerImage
22
+ include BaseGenericModel
23
+
24
+ # Attributes for a Container Image.
25
+ attr_accessor :attributes
26
+
27
+ # Container Image ID.
28
+ attr_accessor :id
29
+
30
+ # Type of Container Image.
31
+ attr_accessor :type
32
+
33
+ # Attribute mapping from ruby-style variable name to JSON key.
34
+ # @!visibility private
35
+ def self.attribute_map
36
+ {
37
+ :'attributes' => :'attributes',
38
+ :'id' => :'id',
39
+ :'type' => :'type'
40
+ }
41
+ end
42
+
43
+ # Attribute type mapping.
44
+ # @!visibility private
45
+ def self.openapi_types
46
+ {
47
+ :'attributes' => :'ContainerImageAttributes',
48
+ :'id' => :'String',
49
+ :'type' => :'ContainerImageType'
50
+ }
51
+ end
52
+
53
+ # Initializes the object
54
+ # @param attributes [Hash] Model attributes in the form of hash
55
+ # @!visibility private
56
+ def initialize(attributes = {})
57
+ if (!attributes.is_a?(Hash))
58
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ContainerImage` initialize method"
59
+ end
60
+
61
+ # check to see if the attribute exists and convert string to symbol for hash key
62
+ attributes = attributes.each_with_object({}) { |(k, v), h|
63
+ if (!self.class.attribute_map.key?(k.to_sym))
64
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::ContainerImage`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
65
+ end
66
+ h[k.to_sym] = v
67
+ }
68
+
69
+ if attributes.key?(:'attributes')
70
+ self.attributes = attributes[:'attributes']
71
+ end
72
+
73
+ if attributes.key?(:'id')
74
+ self.id = attributes[:'id']
75
+ end
76
+
77
+ if attributes.key?(:'type')
78
+ self.type = attributes[:'type']
79
+ end
80
+ end
81
+
82
+ # Checks equality by comparing each attribute.
83
+ # @param o [Object] Object to be compared
84
+ # @!visibility private
85
+ def ==(o)
86
+ return true if self.equal?(o)
87
+ self.class == o.class &&
88
+ attributes == o.attributes &&
89
+ id == o.id &&
90
+ type == o.type
91
+ end
92
+
93
+ # Calculates hash code according to all attributes.
94
+ # @return [Integer] Hash code
95
+ # @!visibility private
96
+ def hash
97
+ [attributes, id, type].hash
98
+ end
99
+ end
100
+ end
@@ -0,0 +1,261 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Attributes for a Container Image.
21
+ class ContainerImageAttributes
22
+ include BaseGenericModel
23
+
24
+ # Number of containers running the image.
25
+ attr_accessor :container_count
26
+
27
+ # List of platform-specific images associated with the image record.
28
+ # The list contains more than 1 entry for multi-architecture images.
29
+ attr_accessor :image_flavors
30
+
31
+ # List of image tags associated with the Container Image.
32
+ attr_accessor :image_tags
33
+
34
+ # List of build times associated with the Container Image.
35
+ # The list contains more than 1 entry for multi-architecture images.
36
+ attr_accessor :images_built_at
37
+
38
+ # Name of the Container Image.
39
+ attr_accessor :name
40
+
41
+ # List of Operating System architectures supported by the Container Image.
42
+ attr_accessor :os_architectures
43
+
44
+ # List of Operating System names supported by the Container Image.
45
+ attr_accessor :os_names
46
+
47
+ # List of Operating System versions supported by the Container Image.
48
+ attr_accessor :os_versions
49
+
50
+ # Time the image was pushed to the container registry.
51
+ attr_accessor :published_at
52
+
53
+ # Registry the Container Image was pushed to.
54
+ attr_accessor :registry
55
+
56
+ # Digest of the compressed image manifest.
57
+ attr_accessor :repo_digest
58
+
59
+ # Repository where the Container Image is stored in.
60
+ attr_accessor :repository
61
+
62
+ # Short version of the Container Image name.
63
+ attr_accessor :short_image
64
+
65
+ # List of size for each platform-specific image associated with the image record.
66
+ # The list contains more than 1 entry for multi-architecture images.
67
+ attr_accessor :sizes
68
+
69
+ # List of sources where the Container Image was collected from.
70
+ attr_accessor :sources
71
+
72
+ # List of tags associated with the Container Image.
73
+ attr_accessor :tags
74
+
75
+ # Vulnerability counts associated with the Container Image.
76
+ attr_accessor :vulnerability_count
77
+
78
+ # Attribute mapping from ruby-style variable name to JSON key.
79
+ # @!visibility private
80
+ def self.attribute_map
81
+ {
82
+ :'container_count' => :'container_count',
83
+ :'image_flavors' => :'image_flavors',
84
+ :'image_tags' => :'image_tags',
85
+ :'images_built_at' => :'images_built_at',
86
+ :'name' => :'name',
87
+ :'os_architectures' => :'os_architectures',
88
+ :'os_names' => :'os_names',
89
+ :'os_versions' => :'os_versions',
90
+ :'published_at' => :'published_at',
91
+ :'registry' => :'registry',
92
+ :'repo_digest' => :'repo_digest',
93
+ :'repository' => :'repository',
94
+ :'short_image' => :'short_image',
95
+ :'sizes' => :'sizes',
96
+ :'sources' => :'sources',
97
+ :'tags' => :'tags',
98
+ :'vulnerability_count' => :'vulnerability_count'
99
+ }
100
+ end
101
+
102
+ # Attribute type mapping.
103
+ # @!visibility private
104
+ def self.openapi_types
105
+ {
106
+ :'container_count' => :'Integer',
107
+ :'image_flavors' => :'Array<ContainerImageFlavor>',
108
+ :'image_tags' => :'Array<String>',
109
+ :'images_built_at' => :'Array<String>',
110
+ :'name' => :'String',
111
+ :'os_architectures' => :'Array<String>',
112
+ :'os_names' => :'Array<String>',
113
+ :'os_versions' => :'Array<String>',
114
+ :'published_at' => :'String',
115
+ :'registry' => :'String',
116
+ :'repo_digest' => :'String',
117
+ :'repository' => :'String',
118
+ :'short_image' => :'String',
119
+ :'sizes' => :'Array<Integer>',
120
+ :'sources' => :'Array<String>',
121
+ :'tags' => :'Array<String>',
122
+ :'vulnerability_count' => :'ContainerImageVulnerabilities'
123
+ }
124
+ end
125
+
126
+ # Initializes the object
127
+ # @param attributes [Hash] Model attributes in the form of hash
128
+ # @!visibility private
129
+ def initialize(attributes = {})
130
+ if (!attributes.is_a?(Hash))
131
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ContainerImageAttributes` initialize method"
132
+ end
133
+
134
+ # check to see if the attribute exists and convert string to symbol for hash key
135
+ attributes = attributes.each_with_object({}) { |(k, v), h|
136
+ if (!self.class.attribute_map.key?(k.to_sym))
137
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::ContainerImageAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
138
+ end
139
+ h[k.to_sym] = v
140
+ }
141
+
142
+ if attributes.key?(:'container_count')
143
+ self.container_count = attributes[:'container_count']
144
+ end
145
+
146
+ if attributes.key?(:'image_flavors')
147
+ if (value = attributes[:'image_flavors']).is_a?(Array)
148
+ self.image_flavors = value
149
+ end
150
+ end
151
+
152
+ if attributes.key?(:'image_tags')
153
+ if (value = attributes[:'image_tags']).is_a?(Array)
154
+ self.image_tags = value
155
+ end
156
+ end
157
+
158
+ if attributes.key?(:'images_built_at')
159
+ if (value = attributes[:'images_built_at']).is_a?(Array)
160
+ self.images_built_at = value
161
+ end
162
+ end
163
+
164
+ if attributes.key?(:'name')
165
+ self.name = attributes[:'name']
166
+ end
167
+
168
+ if attributes.key?(:'os_architectures')
169
+ if (value = attributes[:'os_architectures']).is_a?(Array)
170
+ self.os_architectures = value
171
+ end
172
+ end
173
+
174
+ if attributes.key?(:'os_names')
175
+ if (value = attributes[:'os_names']).is_a?(Array)
176
+ self.os_names = value
177
+ end
178
+ end
179
+
180
+ if attributes.key?(:'os_versions')
181
+ if (value = attributes[:'os_versions']).is_a?(Array)
182
+ self.os_versions = value
183
+ end
184
+ end
185
+
186
+ if attributes.key?(:'published_at')
187
+ self.published_at = attributes[:'published_at']
188
+ end
189
+
190
+ if attributes.key?(:'registry')
191
+ self.registry = attributes[:'registry']
192
+ end
193
+
194
+ if attributes.key?(:'repo_digest')
195
+ self.repo_digest = attributes[:'repo_digest']
196
+ end
197
+
198
+ if attributes.key?(:'repository')
199
+ self.repository = attributes[:'repository']
200
+ end
201
+
202
+ if attributes.key?(:'short_image')
203
+ self.short_image = attributes[:'short_image']
204
+ end
205
+
206
+ if attributes.key?(:'sizes')
207
+ if (value = attributes[:'sizes']).is_a?(Array)
208
+ self.sizes = value
209
+ end
210
+ end
211
+
212
+ if attributes.key?(:'sources')
213
+ if (value = attributes[:'sources']).is_a?(Array)
214
+ self.sources = value
215
+ end
216
+ end
217
+
218
+ if attributes.key?(:'tags')
219
+ if (value = attributes[:'tags']).is_a?(Array)
220
+ self.tags = value
221
+ end
222
+ end
223
+
224
+ if attributes.key?(:'vulnerability_count')
225
+ self.vulnerability_count = attributes[:'vulnerability_count']
226
+ end
227
+ end
228
+
229
+ # Checks equality by comparing each attribute.
230
+ # @param o [Object] Object to be compared
231
+ # @!visibility private
232
+ def ==(o)
233
+ return true if self.equal?(o)
234
+ self.class == o.class &&
235
+ container_count == o.container_count &&
236
+ image_flavors == o.image_flavors &&
237
+ image_tags == o.image_tags &&
238
+ images_built_at == o.images_built_at &&
239
+ name == o.name &&
240
+ os_architectures == o.os_architectures &&
241
+ os_names == o.os_names &&
242
+ os_versions == o.os_versions &&
243
+ published_at == o.published_at &&
244
+ registry == o.registry &&
245
+ repo_digest == o.repo_digest &&
246
+ repository == o.repository &&
247
+ short_image == o.short_image &&
248
+ sizes == o.sizes &&
249
+ sources == o.sources &&
250
+ tags == o.tags &&
251
+ vulnerability_count == o.vulnerability_count
252
+ end
253
+
254
+ # Calculates hash code according to all attributes.
255
+ # @return [Integer] Hash code
256
+ # @!visibility private
257
+ def hash
258
+ [container_count, image_flavors, image_tags, images_built_at, name, os_architectures, os_names, os_versions, published_at, registry, repo_digest, repository, short_image, sizes, sources, tags, vulnerability_count].hash
259
+ end
260
+ end
261
+ end
@@ -0,0 +1,120 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Container Image breakdown by supported platform.
21
+ class ContainerImageFlavor
22
+ include BaseGenericModel
23
+
24
+ # Time the platform-specific Container Image was built.
25
+ attr_accessor :built_at
26
+
27
+ # Operating System architecture supported by the Container Image.
28
+ attr_accessor :os_architecture
29
+
30
+ # Operating System name supported by the Container Image.
31
+ attr_accessor :os_name
32
+
33
+ # Operating System version supported by the Container Image.
34
+ attr_accessor :os_version
35
+
36
+ # Size of the platform-specific Container Image.
37
+ attr_accessor :size
38
+
39
+ # Attribute mapping from ruby-style variable name to JSON key.
40
+ # @!visibility private
41
+ def self.attribute_map
42
+ {
43
+ :'built_at' => :'built_at',
44
+ :'os_architecture' => :'os_architecture',
45
+ :'os_name' => :'os_name',
46
+ :'os_version' => :'os_version',
47
+ :'size' => :'size'
48
+ }
49
+ end
50
+
51
+ # Attribute type mapping.
52
+ # @!visibility private
53
+ def self.openapi_types
54
+ {
55
+ :'built_at' => :'String',
56
+ :'os_architecture' => :'String',
57
+ :'os_name' => :'String',
58
+ :'os_version' => :'String',
59
+ :'size' => :'Integer'
60
+ }
61
+ end
62
+
63
+ # Initializes the object
64
+ # @param attributes [Hash] Model attributes in the form of hash
65
+ # @!visibility private
66
+ def initialize(attributes = {})
67
+ if (!attributes.is_a?(Hash))
68
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ContainerImageFlavor` initialize method"
69
+ end
70
+
71
+ # check to see if the attribute exists and convert string to symbol for hash key
72
+ attributes = attributes.each_with_object({}) { |(k, v), h|
73
+ if (!self.class.attribute_map.key?(k.to_sym))
74
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::ContainerImageFlavor`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
75
+ end
76
+ h[k.to_sym] = v
77
+ }
78
+
79
+ if attributes.key?(:'built_at')
80
+ self.built_at = attributes[:'built_at']
81
+ end
82
+
83
+ if attributes.key?(:'os_architecture')
84
+ self.os_architecture = attributes[:'os_architecture']
85
+ end
86
+
87
+ if attributes.key?(:'os_name')
88
+ self.os_name = attributes[:'os_name']
89
+ end
90
+
91
+ if attributes.key?(:'os_version')
92
+ self.os_version = attributes[:'os_version']
93
+ end
94
+
95
+ if attributes.key?(:'size')
96
+ self.size = attributes[:'size']
97
+ end
98
+ end
99
+
100
+ # Checks equality by comparing each attribute.
101
+ # @param o [Object] Object to be compared
102
+ # @!visibility private
103
+ def ==(o)
104
+ return true if self.equal?(o)
105
+ self.class == o.class &&
106
+ built_at == o.built_at &&
107
+ os_architecture == o.os_architecture &&
108
+ os_name == o.os_name &&
109
+ os_version == o.os_version &&
110
+ size == o.size
111
+ end
112
+
113
+ # Calculates hash code according to all attributes.
114
+ # @return [Integer] Hash code
115
+ # @!visibility private
116
+ def hash
117
+ [built_at, os_architecture, os_name, os_version, size].hash
118
+ end
119
+ end
120
+ end
@@ -0,0 +1,110 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Container Image Group object.
21
+ class ContainerImageGroup
22
+ include BaseGenericModel
23
+
24
+ # Attributes for a Container Image Group.
25
+ attr_accessor :attributes
26
+
27
+ # Container Image Group ID.
28
+ attr_accessor :id
29
+
30
+ # Relationships inside a Container Image Group.
31
+ attr_accessor :relationships
32
+
33
+ # Type of Container Image Group.
34
+ attr_accessor :type
35
+
36
+ # Attribute mapping from ruby-style variable name to JSON key.
37
+ # @!visibility private
38
+ def self.attribute_map
39
+ {
40
+ :'attributes' => :'attributes',
41
+ :'id' => :'id',
42
+ :'relationships' => :'relationships',
43
+ :'type' => :'type'
44
+ }
45
+ end
46
+
47
+ # Attribute type mapping.
48
+ # @!visibility private
49
+ def self.openapi_types
50
+ {
51
+ :'attributes' => :'ContainerImageGroupAttributes',
52
+ :'id' => :'String',
53
+ :'relationships' => :'ContainerImageGroupRelationships',
54
+ :'type' => :'ContainerImageGroupType'
55
+ }
56
+ end
57
+
58
+ # Initializes the object
59
+ # @param attributes [Hash] Model attributes in the form of hash
60
+ # @!visibility private
61
+ def initialize(attributes = {})
62
+ if (!attributes.is_a?(Hash))
63
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ContainerImageGroup` initialize method"
64
+ end
65
+
66
+ # check to see if the attribute exists and convert string to symbol for hash key
67
+ attributes = attributes.each_with_object({}) { |(k, v), h|
68
+ if (!self.class.attribute_map.key?(k.to_sym))
69
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::ContainerImageGroup`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
70
+ end
71
+ h[k.to_sym] = v
72
+ }
73
+
74
+ if attributes.key?(:'attributes')
75
+ self.attributes = attributes[:'attributes']
76
+ end
77
+
78
+ if attributes.key?(:'id')
79
+ self.id = attributes[:'id']
80
+ end
81
+
82
+ if attributes.key?(:'relationships')
83
+ self.relationships = attributes[:'relationships']
84
+ end
85
+
86
+ if attributes.key?(:'type')
87
+ self.type = attributes[:'type']
88
+ end
89
+ end
90
+
91
+ # Checks equality by comparing each attribute.
92
+ # @param o [Object] Object to be compared
93
+ # @!visibility private
94
+ def ==(o)
95
+ return true if self.equal?(o)
96
+ self.class == o.class &&
97
+ attributes == o.attributes &&
98
+ id == o.id &&
99
+ relationships == o.relationships &&
100
+ type == o.type
101
+ end
102
+
103
+ # Calculates hash code according to all attributes.
104
+ # @return [Integer] Hash code
105
+ # @!visibility private
106
+ def hash
107
+ [attributes, id, relationships, type].hash
108
+ end
109
+ end
110
+ end