Skip to content

Commit 46d8c74

Browse files
authored
Revert "[datadog_security_monitoring_suppression] Add Start to Suppressions" (#2777)
* Revert "Security Monitoring - Add Start to Suppressions (#2764)" This reverts commit 876e571. * Revert "[datadog_azure_integration] Support metric filitering (#2757)" (#2778) This reverts commit 468f5ff.
1 parent d9520d5 commit 46d8c74

17 files changed

+362
-1480
lines changed

datadog/fwprovider/data_source_security_monitoring_suppression.go

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -72,12 +72,6 @@ func (r *securityMonitoringSuppressionDataSource) Read(ctx context.Context, requ
7272
suppressionModel.RuleQuery = types.StringValue(attributes.GetRuleQuery())
7373
suppressionModel.SuppressionQuery = types.StringValue(attributes.GetSuppressionQuery())
7474

75-
if attributes.StartDate == nil {
76-
suppressionModel.StartDate = types.StringNull()
77-
} else {
78-
startDate := time.UnixMilli(*attributes.StartDate).Format(time.RFC3339)
79-
suppressionModel.StartDate = types.StringValue(startDate)
80-
}
8175
if attributes.ExpirationDate == nil {
8276
suppressionModel.ExpirationDate = types.StringNull()
8377
} else {
@@ -118,7 +112,6 @@ func (*securityMonitoringSuppressionDataSource) Schema(_ context.Context, _ data
118112
"name": types.StringType,
119113
"description": types.StringType,
120114
"enabled": types.BoolType,
121-
"start_date": types.StringType,
122115
"expiration_date": types.StringType,
123116
"rule_query": types.StringType,
124117
"suppression_query": types.StringType,

datadog/fwprovider/resource_datadog_security_monitoring_suppression.go

Lines changed: 9 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ type securityMonitoringSuppressionModel struct {
2424
Name types.String `tfsdk:"name"`
2525
Description types.String `tfsdk:"description"`
2626
Enabled types.Bool `tfsdk:"enabled"`
27-
StartDate types.String `tfsdk:"start_date"`
2827
ExpirationDate types.String `tfsdk:"expiration_date"`
2928
RuleQuery types.String `tfsdk:"rule_query"`
3029
SuppressionQuery types.String `tfsdk:"suppression_query"`
@@ -69,10 +68,6 @@ func (r *securityMonitoringSuppressionResource) Schema(_ context.Context, _ reso
6968
Required: true,
7069
Description: "Whether the suppression rule is enabled.",
7170
},
72-
"start_date": schema.StringAttribute{
73-
Optional: true,
74-
Description: "A RFC3339 timestamp giving a start date for the suppression rule. Before this date, it doesn't suppress signals.",
75-
},
7671
"expiration_date": schema.StringAttribute{
7772
Optional: true,
7873
Description: "A RFC3339 timestamp giving an expiration date for the suppression rule. After this date, it won't suppress signals anymore.",
@@ -209,7 +204,7 @@ func (r *securityMonitoringSuppressionResource) Delete(ctx context.Context, requ
209204
}
210205

211206
func (r *securityMonitoringSuppressionResource) buildCreateSecurityMonitoringSuppressionPayload(state *securityMonitoringSuppressionModel) (*datadogV2.SecurityMonitoringSuppressionCreateRequest, error) {
212-
name, description, enabled, startDate, expirationDate, ruleQuery, suppressionQuery, dataExclusionQuery, err := r.extractSuppressionAttributesFromResource(state)
207+
name, description, enabled, expirationDate, ruleQuery, suppressionQuery, dataExclusionQuery, err := r.extractSuppressionAttributesFromResource(state)
213208

214209
if err != nil {
215210
return nil, err
@@ -219,15 +214,14 @@ func (r *securityMonitoringSuppressionResource) buildCreateSecurityMonitoringSup
219214
attributes.SuppressionQuery = suppressionQuery
220215
attributes.DataExclusionQuery = dataExclusionQuery
221216
attributes.Description = description
222-
attributes.StartDate = startDate
223217
attributes.ExpirationDate = expirationDate
224218

225219
data := datadogV2.NewSecurityMonitoringSuppressionCreateData(*attributes, datadogV2.SECURITYMONITORINGSUPPRESSIONTYPE_SUPPRESSIONS)
226220
return datadogV2.NewSecurityMonitoringSuppressionCreateRequest(*data), nil
227221
}
228222

229223
func (r *securityMonitoringSuppressionResource) buildUpdateSecurityMonitoringSuppressionPayload(state *securityMonitoringSuppressionModel) (*datadogV2.SecurityMonitoringSuppressionUpdateRequest, error) {
230-
name, description, enabled, startDate, expirationDate, ruleQuery, suppressionQuery, dataExclusionQuery, err := r.extractSuppressionAttributesFromResource(state)
224+
name, description, enabled, expirationDate, ruleQuery, suppressionQuery, dataExclusionQuery, err := r.extractSuppressionAttributesFromResource(state)
231225

232226
if err != nil {
233227
return nil, err
@@ -237,11 +231,6 @@ func (r *securityMonitoringSuppressionResource) buildUpdateSecurityMonitoringSup
237231
attributes.SetName(name)
238232
attributes.Description = description
239233
attributes.SetEnabled(enabled)
240-
if startDate != nil {
241-
attributes.SetStartDate(*startDate)
242-
} else {
243-
attributes.SetStartDateNil()
244-
}
245234
if expirationDate != nil {
246235
attributes.SetExpirationDate(*expirationDate)
247236
} else {
@@ -265,7 +254,7 @@ func (r *securityMonitoringSuppressionResource) buildUpdateSecurityMonitoringSup
265254
return datadogV2.NewSecurityMonitoringSuppressionUpdateRequest(*data), nil
266255
}
267256

268-
func (r *securityMonitoringSuppressionResource) extractSuppressionAttributesFromResource(state *securityMonitoringSuppressionModel) (string, *string, bool, *int64, *int64, string, *string, *string, error) {
257+
func (r *securityMonitoringSuppressionResource) extractSuppressionAttributesFromResource(state *securityMonitoringSuppressionModel) (string, *string, bool, *int64, string, *string, *string, error) {
269258
// Mandatory fields
270259

271260
name := state.Name.ValueString()
@@ -277,36 +266,21 @@ func (r *securityMonitoringSuppressionResource) extractSuppressionAttributesFrom
277266
description := state.Description.ValueStringPointer()
278267
suppressionQuery := state.SuppressionQuery.ValueStringPointer()
279268
dataExclusionQuery := state.DataExclusionQuery.ValueStringPointer()
280-
281-
var startDate *int64
282-
283-
if tfStartDate := state.StartDate.ValueStringPointer(); tfStartDate != nil {
284-
startDateTime, err := time.Parse(time.RFC3339, *tfStartDate)
285-
286-
if err != nil {
287-
return "", nil, false, nil, nil, "", nil, nil, err
288-
}
289-
290-
startDateTimestamp := startDateTime.UnixMilli()
291-
startDate = &startDateTimestamp
292-
293-
}
294-
295269
var expirationDate *int64
296270

297271
if tfExpirationDate := state.ExpirationDate.ValueStringPointer(); tfExpirationDate != nil {
298272
expirationDateTime, err := time.Parse(time.RFC3339, *tfExpirationDate)
299273

300274
if err != nil {
301-
return "", nil, false, nil, nil, "", nil, nil, err
275+
return "", nil, false, nil, "", nil, nil, err
302276
}
303277

304278
expirationDateTimestamp := expirationDateTime.UnixMilli()
305279
expirationDate = &expirationDateTimestamp
306280

307281
}
308282

309-
return name, description, enabled, startDate, expirationDate, ruleQuery, suppressionQuery, dataExclusionQuery, nil
283+
return name, description, enabled, expirationDate, ruleQuery, suppressionQuery, dataExclusionQuery, nil
310284
}
311285

312286
func (r *securityMonitoringSuppressionResource) updateStateFromResponse(ctx context.Context, state *securityMonitoringSuppressionModel, res *datadogV2.SecurityMonitoringSuppressionResponse) {
@@ -339,35 +313,21 @@ func (r *securityMonitoringSuppressionResource) updateStateFromResponse(ctx cont
339313
state.DataExclusionQuery = types.StringNull()
340314
}
341315

342-
// For the StartDate and the ExpirationDate
343-
// The API only requires a millisecond timestamp, it does not care about timezones.
344-
// If the timestamp string written by the user has the same millisecond value as the one returned by the API,
345-
// we keep the user-defined one in the state.
346-
if attributes.StartDate != nil {
347-
responseStartDate := time.UnixMilli(*attributes.StartDate).UTC()
348-
startDate := responseStartDate.Format(time.RFC3339)
349-
350-
if userStartDateStr := state.StartDate.ValueString(); userStartDateStr != "" {
351-
if userStartDate, err := time.Parse(time.RFC3339, userStartDateStr); err == nil {
352-
if userStartDate.UnixMilli() == responseStartDate.UnixMilli() {
353-
startDate = userStartDateStr
354-
}
355-
}
356-
}
357-
state.StartDate = types.StringValue(startDate)
358-
}
359-
360316
if attributes.ExpirationDate != nil {
361317
responseExpirationDate := time.UnixMilli(*attributes.ExpirationDate).UTC()
362318
expirationDate := responseExpirationDate.Format(time.RFC3339)
363319

364320
if userExpirationDateStr := state.ExpirationDate.ValueString(); userExpirationDateStr != "" {
365321
if userExpirationDate, err := time.Parse(time.RFC3339, userExpirationDateStr); err == nil {
322+
// The API only requires a millisecond timestamp, it does not care about timezones.
323+
// If the timestamp string written by the user has the same millisecond value as the one returned by the API,
324+
// we keep the user-defined one in the state.
366325
if userExpirationDate.UnixMilli() == responseExpirationDate.UnixMilli() {
367326
expirationDate = userExpirationDateStr
368327
}
369328
}
370329
}
330+
371331
state.ExpirationDate = types.StringValue(expirationDate)
372332
}
373333
}
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2025-01-14T08:56:59.064434+01:00
1+
2024-04-12T14:55:24.193307+02:00

0 commit comments

Comments
 (0)