datadog_api_client 2.18.0 → 2.19.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (123) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/conftest.py +1 -1
  4. data/.generator/poetry.lock +69 -69
  5. data/.generator/schemas/v1/openapi.yaml +189 -11
  6. data/.generator/schemas/v2/openapi.yaml +1321 -188
  7. data/.generator/src/generator/templates/model_generic.j2 +2 -2
  8. data/CHANGELOG.md +18 -0
  9. data/examples/v1/azure-integration/CreateAzureIntegration.rb +4 -4
  10. data/examples/v1/azure-integration/DeleteAzureIntegration.rb +2 -15
  11. data/examples/v1/azure-integration/UpdateAzureIntegration.rb +4 -4
  12. data/examples/v1/gcp-integration/CreateGCPIntegration.rb +4 -5
  13. data/examples/v1/gcp-integration/DeleteGCPIntegration.rb +2 -14
  14. data/examples/v1/gcp-integration/UpdateGCPIntegration.rb +4 -5
  15. data/examples/v1/service-level-objectives/CreateSLO_3765703239.rb +46 -0
  16. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent.rb +0 -3
  17. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_129899466.rb +0 -3
  18. data/examples/v2/cloud-cost-management/CreateCostAWSCURConfig.rb +18 -0
  19. data/examples/v2/cloud-cost-management/CreateCostAzureUCConfigs.rb +29 -0
  20. data/examples/v2/cloud-cost-management/DeleteCostAWSCURConfig.rb +5 -0
  21. data/examples/v2/cloud-cost-management/DeleteCostAzureUCConfig.rb +5 -0
  22. data/examples/v2/cloud-cost-management/GetCloudCostActivity.rb +5 -0
  23. data/examples/v2/cloud-cost-management/ListAWSRelatedAccounts.rb +5 -0
  24. data/examples/v2/cloud-cost-management/ListCostAWSCURConfigs.rb +5 -0
  25. data/examples/v2/cloud-cost-management/ListCostAzureUCConfigs.rb +5 -0
  26. data/examples/v2/cloud-cost-management/UpdateCostAWSCURConfig.rb +14 -0
  27. data/examples/v2/cloud-cost-management/UpdateCostAzureUCConfigs.rb +14 -0
  28. data/examples/v2/cloudflare-integration/CreateCloudflareAccount.rb +1 -1
  29. data/examples/v2/cloudflare-integration/UpdateCloudflareAccount.rb +4 -1
  30. data/examples/v2/downtimes/ListMonitorDowntimes_3316718253.rb +5 -0
  31. data/examples/v2/gcp-integration/CreateGCPSTSAccount_130557025.rb +16 -0
  32. data/examples/v2/gcp-integration/CreateGCPSTSAccount_2597004741.rb +16 -0
  33. data/examples/v2/gcp-integration/CreateGCPSTSAccount_4235664992.rb +17 -0
  34. data/examples/v2/gcp-integration/UpdateGCPSTSAccount_3205636354.rb +19 -0
  35. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_3367706049.rb +46 -0
  36. data/examples/v2/sensitive-data-scanner/CreateScanningRule.rb +7 -0
  37. data/examples/v2/sensitive-data-scanner/UpdateScanningRule.rb +7 -10
  38. data/examples/v2/teams/CreateTeamMembership.rb +6 -0
  39. data/lib/datadog_api_client/configuration.rb +0 -1
  40. data/lib/datadog_api_client/inflector.rb +52 -0
  41. data/lib/datadog_api_client/v1/api/downtimes_api.rb +28 -7
  42. data/lib/datadog_api_client/v1/api/monitors_api.rb +1 -1
  43. data/lib/datadog_api_client/v1/models/gcp_account.rb +22 -2
  44. data/lib/datadog_api_client/v1/models/organization.rb +1 -1
  45. data/lib/datadog_api_client/v1/models/service_level_objective.rb +11 -1
  46. data/lib/datadog_api_client/v1/models/service_level_objective_request.rb +11 -1
  47. data/lib/datadog_api_client/v1/models/slo_data_source_query_definition.rb +62 -0
  48. data/lib/datadog_api_client/v1/models/slo_formula.rb +98 -0
  49. data/lib/datadog_api_client/v1/models/slo_response_data.rb +11 -1
  50. data/lib/datadog_api_client/v1/models/slo_sli_spec.rb +62 -0
  51. data/lib/datadog_api_client/v1/models/slo_time_slice_comparator.rb +29 -0
  52. data/lib/datadog_api_client/v1/models/slo_time_slice_condition.rb +141 -0
  53. data/lib/datadog_api_client/v1/models/slo_time_slice_query.rb +131 -0
  54. data/lib/datadog_api_client/v1/models/slo_time_slice_spec.rb +99 -0
  55. data/lib/datadog_api_client/v1/models/slo_type.rb +1 -0
  56. data/lib/datadog_api_client/v1/models/slo_type_numeric.rb +1 -0
  57. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +11 -1
  58. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +11 -1
  59. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +11 -1
  60. data/lib/datadog_api_client/v2/api/ci_visibility_pipelines_api.rb +0 -6
  61. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +680 -0
  62. data/lib/datadog_api_client/v2/api/downtimes_api.rb +25 -0
  63. data/lib/datadog_api_client/v2/api/metrics_api.rb +3 -2
  64. data/lib/datadog_api_client/v2/models/aws_cur_config.rb +129 -0
  65. data/lib/datadog_api_client/v2/models/aws_cur_config_attributes.rb +305 -0
  66. data/lib/datadog_api_client/v2/models/aws_cur_config_patch_data.rb +119 -0
  67. data/lib/datadog_api_client/v2/models/aws_cur_config_patch_request.rb +98 -0
  68. data/lib/datadog_api_client/v2/models/aws_cur_config_patch_request_attributes.rb +98 -0
  69. data/lib/datadog_api_client/v2/models/aws_cur_config_patch_request_type.rb +26 -0
  70. data/lib/datadog_api_client/v2/models/aws_cur_config_post_data.rb +119 -0
  71. data/lib/datadog_api_client/v2/models/aws_cur_config_post_request.rb +98 -0
  72. data/lib/datadog_api_client/v2/models/aws_cur_config_post_request_attributes.rb +202 -0
  73. data/lib/datadog_api_client/v2/models/aws_cur_config_post_request_type.rb +26 -0
  74. data/lib/datadog_api_client/v2/models/aws_cur_config_response.rb +80 -0
  75. data/lib/datadog_api_client/v2/models/aws_cur_config_type.rb +26 -0
  76. data/lib/datadog_api_client/v2/models/aws_cur_configs_response.rb +82 -0
  77. data/lib/datadog_api_client/v2/models/aws_related_account.rb +129 -0
  78. data/lib/datadog_api_client/v2/models/aws_related_account_attributes.rb +90 -0
  79. data/lib/datadog_api_client/v2/models/aws_related_account_type.rb +26 -0
  80. data/lib/datadog_api_client/v2/models/aws_related_accounts_response.rb +82 -0
  81. data/lib/datadog_api_client/v2/models/azure_uc_config.rb +378 -0
  82. data/lib/datadog_api_client/v2/models/azure_uc_config_pair.rb +129 -0
  83. data/lib/datadog_api_client/v2/models/azure_uc_config_pair_attributes.rb +110 -0
  84. data/lib/datadog_api_client/v2/models/azure_uc_config_pair_type.rb +26 -0
  85. data/lib/datadog_api_client/v2/models/azure_uc_config_pairs_response.rb +80 -0
  86. data/lib/datadog_api_client/v2/models/azure_uc_config_patch_data.rb +119 -0
  87. data/lib/datadog_api_client/v2/models/azure_uc_config_patch_request.rb +98 -0
  88. data/lib/datadog_api_client/v2/models/azure_uc_config_patch_request_attributes.rb +98 -0
  89. data/lib/datadog_api_client/v2/models/azure_uc_config_patch_request_type.rb +26 -0
  90. data/lib/datadog_api_client/v2/models/azure_uc_config_post_data.rb +119 -0
  91. data/lib/datadog_api_client/v2/models/azure_uc_config_post_request.rb +98 -0
  92. data/lib/datadog_api_client/v2/models/azure_uc_config_post_request_attributes.rb +192 -0
  93. data/lib/datadog_api_client/v2/models/azure_uc_config_post_request_type.rb +26 -0
  94. data/lib/datadog_api_client/v2/models/azure_uc_configs_response.rb +82 -0
  95. data/lib/datadog_api_client/v2/models/bill_config.rb +161 -0
  96. data/lib/datadog_api_client/v2/models/ci_app_git_info.rb +2 -2
  97. data/lib/datadog_api_client/v2/models/cloud_cost_activity.rb +119 -0
  98. data/lib/datadog_api_client/v2/models/cloud_cost_activity_attributes.rb +98 -0
  99. data/lib/datadog_api_client/v2/models/cloud_cost_activity_response.rb +80 -0
  100. data/lib/datadog_api_client/v2/models/cloud_cost_activity_type.rb +26 -0
  101. data/lib/datadog_api_client/v2/models/cloudflare_account_create_request_attributes.rb +28 -4
  102. data/lib/datadog_api_client/v2/models/cloudflare_account_response_attributes.rb +28 -4
  103. data/lib/datadog_api_client/v2/models/cloudflare_account_update_request_attributes.rb +28 -4
  104. data/lib/datadog_api_client/v2/models/dora_git_info.rb +2 -2
  105. data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +25 -5
  106. data/lib/datadog_api_client/v2/models/relationship_to_user_team_team.rb +98 -0
  107. data/lib/datadog_api_client/v2/models/relationship_to_user_team_team_data.rb +119 -0
  108. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +14 -4
  109. data/lib/datadog_api_client/v2/models/security_monitoring_rule_third_party_options.rb +114 -0
  110. data/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb +13 -1
  111. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_create_payload.rb +13 -1
  112. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_response.rb +13 -1
  113. data/lib/datadog_api_client/v2/models/security_monitoring_third_party_root_query.rb +92 -0
  114. data/lib/datadog_api_client/v2/models/security_monitoring_third_party_rule_case.rb +112 -0
  115. data/lib/datadog_api_client/v2/models/security_monitoring_third_party_rule_case_create.rb +130 -0
  116. data/lib/datadog_api_client/v2/models/sensitive_data_scanner_included_keyword_configuration.rb +134 -0
  117. data/lib/datadog_api_client/v2/models/sensitive_data_scanner_rule_attributes.rb +46 -1
  118. data/lib/datadog_api_client/v2/models/sensitive_data_scanner_standard_pattern_attributes.rb +33 -1
  119. data/lib/datadog_api_client/v2/models/user_team_attributes.rb +24 -1
  120. data/lib/datadog_api_client/v2/models/user_team_relationships.rb +11 -1
  121. data/lib/datadog_api_client/v2/models/user_team_team_type.rb +26 -0
  122. data/lib/datadog_api_client/version.rb +1 -1
  123. metadata +71 -2
@@ -0,0 +1,192 @@
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 Azure config Post Request.
21
+ class AzureUCConfigPostRequestAttributes
22
+ include BaseGenericModel
23
+
24
+ # The tenant ID of the azure account.
25
+ attr_reader :account_id
26
+
27
+ # Bill config.
28
+ attr_reader :actual_bill_config
29
+
30
+ # Bill config.
31
+ attr_reader :amortized_bill_config
32
+
33
+ # The client ID of the azure account.
34
+ attr_reader :client_id
35
+
36
+ # Whether or not the Cloud Cost Management account is enabled.
37
+ attr_accessor :is_enabled
38
+
39
+ # The scope of your observed subscription.
40
+ attr_reader :scope
41
+
42
+ # Attribute mapping from ruby-style variable name to JSON key.
43
+ # @!visibility private
44
+ def self.attribute_map
45
+ {
46
+ :'account_id' => :'account_id',
47
+ :'actual_bill_config' => :'actual_bill_config',
48
+ :'amortized_bill_config' => :'amortized_bill_config',
49
+ :'client_id' => :'client_id',
50
+ :'is_enabled' => :'is_enabled',
51
+ :'scope' => :'scope'
52
+ }
53
+ end
54
+
55
+ # Attribute type mapping.
56
+ # @!visibility private
57
+ def self.openapi_types
58
+ {
59
+ :'account_id' => :'String',
60
+ :'actual_bill_config' => :'BillConfig',
61
+ :'amortized_bill_config' => :'BillConfig',
62
+ :'client_id' => :'String',
63
+ :'is_enabled' => :'Boolean',
64
+ :'scope' => :'String'
65
+ }
66
+ end
67
+
68
+ # Initializes the object
69
+ # @param attributes [Hash] Model attributes in the form of hash
70
+ # @!visibility private
71
+ def initialize(attributes = {})
72
+ if (!attributes.is_a?(Hash))
73
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::AzureUCConfigPostRequestAttributes` initialize method"
74
+ end
75
+
76
+ # check to see if the attribute exists and convert string to symbol for hash key
77
+ attributes = attributes.each_with_object({}) { |(k, v), h|
78
+ if (!self.class.attribute_map.key?(k.to_sym))
79
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::AzureUCConfigPostRequestAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
80
+ end
81
+ h[k.to_sym] = v
82
+ }
83
+
84
+ if attributes.key?(:'account_id')
85
+ self.account_id = attributes[:'account_id']
86
+ end
87
+
88
+ if attributes.key?(:'actual_bill_config')
89
+ self.actual_bill_config = attributes[:'actual_bill_config']
90
+ end
91
+
92
+ if attributes.key?(:'amortized_bill_config')
93
+ self.amortized_bill_config = attributes[:'amortized_bill_config']
94
+ end
95
+
96
+ if attributes.key?(:'client_id')
97
+ self.client_id = attributes[:'client_id']
98
+ end
99
+
100
+ if attributes.key?(:'is_enabled')
101
+ self.is_enabled = attributes[:'is_enabled']
102
+ end
103
+
104
+ if attributes.key?(:'scope')
105
+ self.scope = attributes[:'scope']
106
+ end
107
+ end
108
+
109
+ # Check to see if the all the properties in the model are valid
110
+ # @return true if the model is valid
111
+ # @!visibility private
112
+ def valid?
113
+ return false if @account_id.nil?
114
+ return false if @actual_bill_config.nil?
115
+ return false if @amortized_bill_config.nil?
116
+ return false if @client_id.nil?
117
+ return false if @scope.nil?
118
+ true
119
+ end
120
+
121
+ # Custom attribute writer method with validation
122
+ # @param account_id [Object] Object to be assigned
123
+ # @!visibility private
124
+ def account_id=(account_id)
125
+ if account_id.nil?
126
+ fail ArgumentError, 'invalid value for "account_id", account_id cannot be nil.'
127
+ end
128
+ @account_id = account_id
129
+ end
130
+
131
+ # Custom attribute writer method with validation
132
+ # @param actual_bill_config [Object] Object to be assigned
133
+ # @!visibility private
134
+ def actual_bill_config=(actual_bill_config)
135
+ if actual_bill_config.nil?
136
+ fail ArgumentError, 'invalid value for "actual_bill_config", actual_bill_config cannot be nil.'
137
+ end
138
+ @actual_bill_config = actual_bill_config
139
+ end
140
+
141
+ # Custom attribute writer method with validation
142
+ # @param amortized_bill_config [Object] Object to be assigned
143
+ # @!visibility private
144
+ def amortized_bill_config=(amortized_bill_config)
145
+ if amortized_bill_config.nil?
146
+ fail ArgumentError, 'invalid value for "amortized_bill_config", amortized_bill_config cannot be nil.'
147
+ end
148
+ @amortized_bill_config = amortized_bill_config
149
+ end
150
+
151
+ # Custom attribute writer method with validation
152
+ # @param client_id [Object] Object to be assigned
153
+ # @!visibility private
154
+ def client_id=(client_id)
155
+ if client_id.nil?
156
+ fail ArgumentError, 'invalid value for "client_id", client_id cannot be nil.'
157
+ end
158
+ @client_id = client_id
159
+ end
160
+
161
+ # Custom attribute writer method with validation
162
+ # @param scope [Object] Object to be assigned
163
+ # @!visibility private
164
+ def scope=(scope)
165
+ if scope.nil?
166
+ fail ArgumentError, 'invalid value for "scope", scope cannot be nil.'
167
+ end
168
+ @scope = scope
169
+ end
170
+
171
+ # Checks equality by comparing each attribute.
172
+ # @param o [Object] Object to be compared
173
+ # @!visibility private
174
+ def ==(o)
175
+ return true if self.equal?(o)
176
+ self.class == o.class &&
177
+ account_id == o.account_id &&
178
+ actual_bill_config == o.actual_bill_config &&
179
+ amortized_bill_config == o.amortized_bill_config &&
180
+ client_id == o.client_id &&
181
+ is_enabled == o.is_enabled &&
182
+ scope == o.scope
183
+ end
184
+
185
+ # Calculates hash code according to all attributes.
186
+ # @return [Integer] Hash code
187
+ # @!visibility private
188
+ def hash
189
+ [account_id, actual_bill_config, amortized_bill_config, client_id, is_enabled, scope].hash
190
+ end
191
+ end
192
+ end
@@ -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
+ # Type of Azure config Post Request.
21
+ class AzureUCConfigPostRequestType
22
+ include BaseEnumModel
23
+
24
+ AZURE_UC_CONFIG_POST_REQUEST = "azure_uc_config_post_request".freeze
25
+ end
26
+ end
@@ -0,0 +1,82 @@
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
+ # List of Azure accounts with configs.
21
+ class AzureUCConfigsResponse
22
+ include BaseGenericModel
23
+
24
+ # An Azure config pair.
25
+ attr_accessor :data
26
+
27
+ # Attribute mapping from ruby-style variable name to JSON key.
28
+ # @!visibility private
29
+ def self.attribute_map
30
+ {
31
+ :'data' => :'data'
32
+ }
33
+ end
34
+
35
+ # Attribute type mapping.
36
+ # @!visibility private
37
+ def self.openapi_types
38
+ {
39
+ :'data' => :'Array<AzureUCConfigPair>'
40
+ }
41
+ end
42
+
43
+ # Initializes the object
44
+ # @param attributes [Hash] Model attributes in the form of hash
45
+ # @!visibility private
46
+ def initialize(attributes = {})
47
+ if (!attributes.is_a?(Hash))
48
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::AzureUCConfigsResponse` initialize method"
49
+ end
50
+
51
+ # check to see if the attribute exists and convert string to symbol for hash key
52
+ attributes = attributes.each_with_object({}) { |(k, v), h|
53
+ if (!self.class.attribute_map.key?(k.to_sym))
54
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::AzureUCConfigsResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
55
+ end
56
+ h[k.to_sym] = v
57
+ }
58
+
59
+ if attributes.key?(:'data')
60
+ if (value = attributes[:'data']).is_a?(Array)
61
+ self.data = value
62
+ end
63
+ end
64
+ end
65
+
66
+ # Checks equality by comparing each attribute.
67
+ # @param o [Object] Object to be compared
68
+ # @!visibility private
69
+ def ==(o)
70
+ return true if self.equal?(o)
71
+ self.class == o.class &&
72
+ data == o.data
73
+ end
74
+
75
+ # Calculates hash code according to all attributes.
76
+ # @return [Integer] Hash code
77
+ # @!visibility private
78
+ def hash
79
+ [data].hash
80
+ end
81
+ end
82
+ end
@@ -0,0 +1,161 @@
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
+ # Bill config.
21
+ class BillConfig
22
+ include BaseGenericModel
23
+
24
+ # The name of the configured Azure Export.
25
+ attr_reader :export_name
26
+
27
+ # The path where the Azure Export is saved.
28
+ attr_reader :export_path
29
+
30
+ # The name of the storage account where the Azure Export is saved.
31
+ attr_reader :storage_account
32
+
33
+ # The name of the storage container where the Azure Export is saved.
34
+ attr_reader :storage_container
35
+
36
+ # Attribute mapping from ruby-style variable name to JSON key.
37
+ # @!visibility private
38
+ def self.attribute_map
39
+ {
40
+ :'export_name' => :'export_name',
41
+ :'export_path' => :'export_path',
42
+ :'storage_account' => :'storage_account',
43
+ :'storage_container' => :'storage_container'
44
+ }
45
+ end
46
+
47
+ # Attribute type mapping.
48
+ # @!visibility private
49
+ def self.openapi_types
50
+ {
51
+ :'export_name' => :'String',
52
+ :'export_path' => :'String',
53
+ :'storage_account' => :'String',
54
+ :'storage_container' => :'String'
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::BillConfig` 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::BillConfig`. 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?(:'export_name')
75
+ self.export_name = attributes[:'export_name']
76
+ end
77
+
78
+ if attributes.key?(:'export_path')
79
+ self.export_path = attributes[:'export_path']
80
+ end
81
+
82
+ if attributes.key?(:'storage_account')
83
+ self.storage_account = attributes[:'storage_account']
84
+ end
85
+
86
+ if attributes.key?(:'storage_container')
87
+ self.storage_container = attributes[:'storage_container']
88
+ end
89
+ end
90
+
91
+ # Check to see if the all the properties in the model are valid
92
+ # @return true if the model is valid
93
+ # @!visibility private
94
+ def valid?
95
+ return false if @export_name.nil?
96
+ return false if @export_path.nil?
97
+ return false if @storage_account.nil?
98
+ return false if @storage_container.nil?
99
+ true
100
+ end
101
+
102
+ # Custom attribute writer method with validation
103
+ # @param export_name [Object] Object to be assigned
104
+ # @!visibility private
105
+ def export_name=(export_name)
106
+ if export_name.nil?
107
+ fail ArgumentError, 'invalid value for "export_name", export_name cannot be nil.'
108
+ end
109
+ @export_name = export_name
110
+ end
111
+
112
+ # Custom attribute writer method with validation
113
+ # @param export_path [Object] Object to be assigned
114
+ # @!visibility private
115
+ def export_path=(export_path)
116
+ if export_path.nil?
117
+ fail ArgumentError, 'invalid value for "export_path", export_path cannot be nil.'
118
+ end
119
+ @export_path = export_path
120
+ end
121
+
122
+ # Custom attribute writer method with validation
123
+ # @param storage_account [Object] Object to be assigned
124
+ # @!visibility private
125
+ def storage_account=(storage_account)
126
+ if storage_account.nil?
127
+ fail ArgumentError, 'invalid value for "storage_account", storage_account cannot be nil.'
128
+ end
129
+ @storage_account = storage_account
130
+ end
131
+
132
+ # Custom attribute writer method with validation
133
+ # @param storage_container [Object] Object to be assigned
134
+ # @!visibility private
135
+ def storage_container=(storage_container)
136
+ if storage_container.nil?
137
+ fail ArgumentError, 'invalid value for "storage_container", storage_container cannot be nil.'
138
+ end
139
+ @storage_container = storage_container
140
+ end
141
+
142
+ # Checks equality by comparing each attribute.
143
+ # @param o [Object] Object to be compared
144
+ # @!visibility private
145
+ def ==(o)
146
+ return true if self.equal?(o)
147
+ self.class == o.class &&
148
+ export_name == o.export_name &&
149
+ export_path == o.export_path &&
150
+ storage_account == o.storage_account &&
151
+ storage_container == o.storage_container
152
+ end
153
+
154
+ # Calculates hash code according to all attributes.
155
+ # @return [Integer] Hash code
156
+ # @!visibility private
157
+ def hash
158
+ [export_name, export_path, storage_account, storage_container].hash
159
+ end
160
+ end
161
+ end
@@ -184,7 +184,7 @@ module DatadogAPIClient::V2
184
184
  return false if @author_email.nil?
185
185
  return false if @repository_url.nil?
186
186
  return false if @sha.nil?
187
- pattern = Regexp.new("^[a-fA-F0-9]{40}$")
187
+ pattern = Regexp.new(/^[a-fA-F0-9]{40}$/)
188
188
  return false if @sha !~ pattern
189
189
  true
190
190
  end
@@ -216,7 +216,7 @@ module DatadogAPIClient::V2
216
216
  if sha.nil?
217
217
  fail ArgumentError, 'invalid value for "sha", sha cannot be nil.'
218
218
  end
219
- pattern = Regexp.new("^[a-fA-F0-9]{40}$")
219
+ pattern = Regexp.new(/^[a-fA-F0-9]{40}$/)
220
220
  if sha !~ pattern
221
221
  fail ArgumentError, "invalid value for \"sha\", must conform to the pattern #{pattern}."
222
222
  end
@@ -0,0 +1,119 @@
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
+ # Cloud Cost Activity.
21
+ class CloudCostActivity
22
+ include BaseGenericModel
23
+
24
+ # Attributes for Cloud Cost activity.
25
+ attr_reader :attributes
26
+
27
+ # Type of Cloud Cost Activity.
28
+ attr_reader :type
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ # @!visibility private
32
+ def self.attribute_map
33
+ {
34
+ :'attributes' => :'attributes',
35
+ :'type' => :'type'
36
+ }
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ # @!visibility private
41
+ def self.openapi_types
42
+ {
43
+ :'attributes' => :'CloudCostActivityAttributes',
44
+ :'type' => :'CloudCostActivityType'
45
+ }
46
+ end
47
+
48
+ # Initializes the object
49
+ # @param attributes [Hash] Model attributes in the form of hash
50
+ # @!visibility private
51
+ def initialize(attributes = {})
52
+ if (!attributes.is_a?(Hash))
53
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::CloudCostActivity` initialize method"
54
+ end
55
+
56
+ # check to see if the attribute exists and convert string to symbol for hash key
57
+ attributes = attributes.each_with_object({}) { |(k, v), h|
58
+ if (!self.class.attribute_map.key?(k.to_sym))
59
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::CloudCostActivity`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
60
+ end
61
+ h[k.to_sym] = v
62
+ }
63
+
64
+ if attributes.key?(:'attributes')
65
+ self.attributes = attributes[:'attributes']
66
+ end
67
+
68
+ if attributes.key?(:'type')
69
+ self.type = attributes[:'type']
70
+ end
71
+ end
72
+
73
+ # Check to see if the all the properties in the model are valid
74
+ # @return true if the model is valid
75
+ # @!visibility private
76
+ def valid?
77
+ return false if @attributes.nil?
78
+ return false if @type.nil?
79
+ true
80
+ end
81
+
82
+ # Custom attribute writer method with validation
83
+ # @param attributes [Object] Object to be assigned
84
+ # @!visibility private
85
+ def attributes=(attributes)
86
+ if attributes.nil?
87
+ fail ArgumentError, 'invalid value for "attributes", attributes cannot be nil.'
88
+ end
89
+ @attributes = attributes
90
+ end
91
+
92
+ # Custom attribute writer method with validation
93
+ # @param type [Object] Object to be assigned
94
+ # @!visibility private
95
+ def type=(type)
96
+ if type.nil?
97
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
98
+ end
99
+ @type = type
100
+ end
101
+
102
+ # Checks equality by comparing each attribute.
103
+ # @param o [Object] Object to be compared
104
+ # @!visibility private
105
+ def ==(o)
106
+ return true if self.equal?(o)
107
+ self.class == o.class &&
108
+ attributes == o.attributes &&
109
+ type == o.type
110
+ end
111
+
112
+ # Calculates hash code according to all attributes.
113
+ # @return [Integer] Hash code
114
+ # @!visibility private
115
+ def hash
116
+ [attributes, type].hash
117
+ end
118
+ end
119
+ end
@@ -0,0 +1,98 @@
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 Cloud Cost activity.
21
+ class CloudCostActivityAttributes
22
+ include BaseGenericModel
23
+
24
+ # Whether or not the cloud account is enabled.
25
+ attr_reader :is_enabled
26
+
27
+ # Attribute mapping from ruby-style variable name to JSON key.
28
+ # @!visibility private
29
+ def self.attribute_map
30
+ {
31
+ :'is_enabled' => :'is_enabled'
32
+ }
33
+ end
34
+
35
+ # Attribute type mapping.
36
+ # @!visibility private
37
+ def self.openapi_types
38
+ {
39
+ :'is_enabled' => :'Boolean'
40
+ }
41
+ end
42
+
43
+ # Initializes the object
44
+ # @param attributes [Hash] Model attributes in the form of hash
45
+ # @!visibility private
46
+ def initialize(attributes = {})
47
+ if (!attributes.is_a?(Hash))
48
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::CloudCostActivityAttributes` initialize method"
49
+ end
50
+
51
+ # check to see if the attribute exists and convert string to symbol for hash key
52
+ attributes = attributes.each_with_object({}) { |(k, v), h|
53
+ if (!self.class.attribute_map.key?(k.to_sym))
54
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::CloudCostActivityAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
55
+ end
56
+ h[k.to_sym] = v
57
+ }
58
+
59
+ if attributes.key?(:'is_enabled')
60
+ self.is_enabled = attributes[:'is_enabled']
61
+ end
62
+ end
63
+
64
+ # Check to see if the all the properties in the model are valid
65
+ # @return true if the model is valid
66
+ # @!visibility private
67
+ def valid?
68
+ return false if @is_enabled.nil?
69
+ true
70
+ end
71
+
72
+ # Custom attribute writer method with validation
73
+ # @param is_enabled [Object] Object to be assigned
74
+ # @!visibility private
75
+ def is_enabled=(is_enabled)
76
+ if is_enabled.nil?
77
+ fail ArgumentError, 'invalid value for "is_enabled", is_enabled cannot be nil.'
78
+ end
79
+ @is_enabled = is_enabled
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
+ is_enabled == o.is_enabled
89
+ end
90
+
91
+ # Calculates hash code according to all attributes.
92
+ # @return [Integer] Hash code
93
+ # @!visibility private
94
+ def hash
95
+ [is_enabled].hash
96
+ end
97
+ end
98
+ end