Skip to content

Commit 8fa3fa6

Browse files
committed
fix: updated commercetools go sdk
1 parent f916960 commit 8fa3fa6

File tree

9 files changed

+46
-48
lines changed

9 files changed

+46
-48
lines changed
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
kind: Fixed
2+
body: Updated to commercetools-go-sdk 1.9.0
3+
time: 2026-04-10T11:32:16.447617502+02:00

.github/workflows/tests.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99

1010
services:
1111
commercetools:
12-
image: labdigital/commercetools-mock-server:3.0.0-beta.1
12+
image: labdigital/commercetools-mock-server:3.0.0-beta.3
1313
ports:
1414
- 8989:8989
1515

docker-compose.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
services:
22
commercetools:
3-
image: labdigital/commercetools-mock-server:3.0.0-beta.1
3+
image: labdigital/commercetools-mock-server:3.0.0-beta.3
4+
environment:
5+
EXPERIMENTAL_SQLITE_STORAGE: "false"
46
ports:
57
- 8989:8989

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ require (
1515
github.com/hashicorp/terraform-plugin-go v0.31.0
1616
github.com/hashicorp/terraform-plugin-mux v0.23.0
1717
github.com/hashicorp/terraform-plugin-sdk/v2 v2.40.0
18-
github.com/labd/commercetools-go-sdk v1.8.0
18+
github.com/labd/commercetools-go-sdk v1.9.0
1919
github.com/mitchellh/mapstructure v1.5.0
2020
github.com/stretchr/testify v1.11.1
2121
golang.org/x/oauth2 v0.36.0

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -150,8 +150,8 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
150150
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
151151
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
152152
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
153-
github.com/labd/commercetools-go-sdk v1.8.0 h1:Y/KM2T2yFOAIntL/XC1ZV9qFX2GhvofY5Z71fKSqEoc=
154-
github.com/labd/commercetools-go-sdk v1.8.0/go.mod h1:bdmryE8EngnaYJXt3CYZ1Dcob7HufD6KASZYX1Aa4Kk=
153+
github.com/labd/commercetools-go-sdk v1.9.0 h1:ZeAtYM5RL7uNb+STvIr6rKJGMMWYZAjyKg6sWWrmrFk=
154+
github.com/labd/commercetools-go-sdk v1.9.0/go.mod h1:QMG2KGTVY7uyVDJTKvaaFnw8h5lZwq/SEBlPVPrMrQ0=
155155
github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
156156
github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4=
157157
github.com/mattn/go-colorable v0.1.14 h1:9A9LHSqF/7dyVVX6g0U9cwm9pG3kP9gSzcuIPHPsaIE=

internal/resources/project/model.go

Lines changed: 21 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,9 @@ import (
1313
)
1414

1515
const (
16-
DefaultDeleteDaysAfterCreation = 15
17-
DefaultDaysAfterLastModification = 90
16+
DefaultMessagesDeleteDaysAfterCreation = 15
17+
DefaultCartsDeleteDaysAfterLastModification = 90
18+
DefaultShoppingListsDeleteDaysAfterLastModification = 360
1819
)
1920

2021
type Project struct {
@@ -52,7 +53,7 @@ func IsDefaultShoppingListsConfiguration(c *platform.ShoppingListsConfiguration)
5253
return true
5354
}
5455

55-
return c.DeleteDaysAfterLastModification == nil || *c.DeleteDaysAfterLastModification == DefaultDaysAfterLastModification
56+
return c.DeleteDaysAfterLastModification == 0 || c.DeleteDaysAfterLastModification == DefaultShoppingListsDeleteDaysAfterLastModification
5657
}
5758

5859
func NewProjectFromNative(n *platform.Project) Project {
@@ -81,9 +82,14 @@ func NewProjectFromNative(n *platform.Project) Project {
8182
BusinessUnits: []BusinessUnits{},
8283
}
8384

85+
var cartsDeleteDaysAfterLastModification = DefaultCartsDeleteDaysAfterLastModification
86+
if n.Carts.DeleteDaysAfterLastModification != 0 {
87+
cartsDeleteDaysAfterLastModification = n.Carts.DeleteDaysAfterLastModification
88+
}
89+
8490
res.Carts = []Carts{
8591
{
86-
DeleteDaysAfterLastModification: utils.FromOptionalInt(n.Carts.DeleteDaysAfterLastModification),
92+
DeleteDaysAfterLastModification: types.Int64Value(int64(cartsDeleteDaysAfterLastModification)),
8793
CountryTaxRateFallbackEnabled: utils.FromOptionalBool(n.Carts.CountryTaxRateFallbackEnabled),
8894
PriceRoundingMode: utils.FromOptionalString((*string)(n.Carts.PriceRoundingMode)),
8995
TaxRoundingMode: utils.FromOptionalString((*string)(n.Carts.TaxRoundingMode)),
@@ -93,7 +99,7 @@ func NewProjectFromNative(n *platform.Project) Project {
9399
if !IsDefaultShoppingListsConfiguration(n.ShoppingLists) {
94100
res.ShoppingLists = []ShoppingList{
95101
{
96-
DeleteDaysAfterLastModification: utils.FromOptionalInt(n.ShoppingLists.DeleteDaysAfterLastModification),
102+
DeleteDaysAfterLastModification: types.Int64Value(int64(n.ShoppingLists.DeleteDaysAfterLastModification)),
97103
},
98104
}
99105
}
@@ -118,7 +124,7 @@ func NewProjectFromNative(n *platform.Project) Project {
118124
// If delete_days_after_creation is nil (before version 1.6) then we set it
119125
// to the commercetools default of 15
120126
if res.Messages[0].DeleteDaysAfterCreation.IsNull() {
121-
res.Messages[0].DeleteDaysAfterCreation = types.Int64Value(DefaultDeleteDaysAfterCreation)
127+
res.Messages[0].DeleteDaysAfterCreation = types.Int64Value(DefaultMessagesDeleteDaysAfterCreation)
122128
}
123129

124130
if n.SearchIndexing != nil && n.SearchIndexing.Products != nil && n.SearchIndexing.Products.Status != nil {
@@ -188,7 +194,7 @@ func (p *Project) setStateData(o Project) {
188194

189195
// The commercetools default for delete_days_after_creation is 15, so if the
190196
if len(p.Messages) > 0 && len(o.Messages) > 0 {
191-
if p.Messages[0].DeleteDaysAfterCreation.ValueInt64() == DefaultDeleteDaysAfterCreation && o.Messages[0].DeleteDaysAfterCreation.IsNull() {
197+
if p.Messages[0].DeleteDaysAfterCreation.ValueInt64() == DefaultCartsDeleteDaysAfterLastModification && o.Messages[0].DeleteDaysAfterCreation.IsNull() {
192198
p.Messages[0].DeleteDaysAfterCreation = o.Messages[0].DeleteDaysAfterCreation
193199
}
194200
}
@@ -214,7 +220,7 @@ func (p *Project) updateActions(plan Project) (platform.ProjectUpdate, error) {
214220
result.Actions = append(result.Actions,
215221
platform.ProjectChangeCartsConfigurationAction{
216222
CartsConfiguration: platform.CartsConfiguration{
217-
DeleteDaysAfterLastModification: utils.IntRef(DefaultDaysAfterLastModification),
223+
DeleteDaysAfterLastModification: DefaultCartsDeleteDaysAfterLastModification,
218224
},
219225
},
220226
platform.ProjectChangeCountryTaxRateFallbackEnabledAction{
@@ -252,7 +258,7 @@ func (p *Project) updateActions(plan Project) (platform.ProjectUpdate, error) {
252258
result.Actions = append(result.Actions,
253259
platform.ProjectChangeShoppingListsConfigurationAction{
254260
ShoppingListsConfiguration: platform.ShoppingListsConfiguration{
255-
DeleteDaysAfterLastModification: utils.IntRef(DefaultDaysAfterLastModification),
261+
DeleteDaysAfterLastModification: DefaultShoppingListsDeleteDaysAfterLastModification,
256262
},
257263
},
258264
)
@@ -307,16 +313,6 @@ func (p *Project) updateActions(plan Project) (platform.ProjectUpdate, error) {
307313
MessagesConfiguration: plan.Messages[0].toNative(),
308314
},
309315
)
310-
} else {
311-
// Set message configuration to the default values
312-
result.Actions = append(result.Actions,
313-
platform.ProjectChangeMessagesConfigurationAction{
314-
MessagesConfiguration: platform.MessagesConfigurationDraft{
315-
Enabled: false,
316-
DeleteDaysAfterCreation: DefaultDeleteDaysAfterCreation,
317-
},
318-
},
319-
)
320316
}
321317
}
322318

@@ -491,7 +487,7 @@ type Messages struct {
491487
}
492488

493489
func (m Messages) toNative() platform.MessagesConfigurationDraft {
494-
days := DefaultDeleteDaysAfterCreation // Commercetools default
490+
days := DefaultMessagesDeleteDaysAfterCreation // Commercetools default
495491

496492
if !m.DeleteDaysAfterCreation.IsNull() {
497493
days = int(m.DeleteDaysAfterCreation.ValueInt64())
@@ -503,7 +499,7 @@ func (m Messages) toNative() platform.MessagesConfigurationDraft {
503499
}
504500
}
505501
func (m Messages) isDefault() bool {
506-
return !m.toNative().Enabled && m.DeleteDaysAfterCreation.ValueInt64() == DefaultDeleteDaysAfterCreation
502+
return !m.toNative().Enabled && m.DeleteDaysAfterCreation.ValueInt64() == DefaultMessagesDeleteDaysAfterCreation
507503
}
508504

509505
type ExternalOAuth struct {
@@ -527,7 +523,7 @@ type Carts struct {
527523

528524
func (c Carts) isDefault() bool {
529525
return !c.CountryTaxRateFallbackEnabled.ValueBool() &&
530-
c.DeleteDaysAfterLastModification.ValueInt64() == DefaultDaysAfterLastModification &&
526+
c.DeleteDaysAfterLastModification.ValueInt64() == DefaultCartsDeleteDaysAfterLastModification &&
531527
(c.PriceRoundingMode.IsNull() || c.PriceRoundingMode.ValueString() == string(platform.RoundingModeHalfEven)) &&
532528
(c.TaxRoundingMode.IsNull() || c.TaxRoundingMode.ValueString() == string(platform.RoundingModeHalfEven))
533529
}
@@ -537,7 +533,7 @@ func (c Carts) toNative() platform.CartsConfiguration {
537533
taxRoundingMode := platform.RoundingMode(c.TaxRoundingMode.ValueString())
538534

539535
return platform.CartsConfiguration{
540-
DeleteDaysAfterLastModification: utils.OptionalInt(c.DeleteDaysAfterLastModification),
536+
DeleteDaysAfterLastModification: int(c.DeleteDaysAfterLastModification.ValueInt64()),
541537
CountryTaxRateFallbackEnabled: utils.BoolRef(c.CountryTaxRateFallbackEnabled.ValueBool()),
542538
PriceRoundingMode: &priceRoundingMode,
543539
TaxRoundingMode: &taxRoundingMode,
@@ -549,12 +545,12 @@ type ShoppingList struct {
549545
}
550546

551547
func (c ShoppingList) isDefault() bool {
552-
return c.DeleteDaysAfterLastModification.ValueInt64() == DefaultDaysAfterLastModification
548+
return c.DeleteDaysAfterLastModification.ValueInt64() == DefaultShoppingListsDeleteDaysAfterLastModification
553549
}
554550

555551
func (c ShoppingList) toNative() platform.ShoppingListsConfiguration {
556552
return platform.ShoppingListsConfiguration{
557-
DeleteDaysAfterLastModification: utils.OptionalInt(c.DeleteDaysAfterLastModification),
553+
DeleteDaysAfterLastModification: int(c.DeleteDaysAfterLastModification.ValueInt64()),
558554
}
559555
}
560556

internal/resources/project/model_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -43,15 +43,15 @@ func TestNewProjectFromNative(t *testing.T) {
4343
Carts: []Carts{
4444
{
4545
CountryTaxRateFallbackEnabled: types.BoolNull(),
46-
DeleteDaysAfterLastModification: types.Int64Null(),
46+
DeleteDaysAfterLastModification: types.Int64Value(DefaultCartsDeleteDaysAfterLastModification),
4747
PriceRoundingMode: types.StringNull(),
4848
TaxRoundingMode: types.StringNull(),
4949
},
5050
},
5151
Messages: []Messages{
5252
{
5353
Enabled: types.BoolValue(false),
54-
DeleteDaysAfterCreation: types.Int64Value(DefaultDeleteDaysAfterCreation),
54+
DeleteDaysAfterCreation: types.Int64Value(DefaultMessagesDeleteDaysAfterCreation),
5555
},
5656
},
5757
ShippingRateCartClassificationValue: []models.CustomFieldLocalizedEnumValue{},
@@ -158,7 +158,7 @@ func TestUpdateActions(t *testing.T) {
158158
Actions: []platform.ProjectUpdateAction{
159159
platform.ProjectChangeCartsConfigurationAction{
160160
CartsConfiguration: platform.CartsConfiguration{
161-
DeleteDaysAfterLastModification: utils.Ref(90),
161+
DeleteDaysAfterLastModification: 90,
162162
CountryTaxRateFallbackEnabled: utils.Ref(false),
163163
PriceRoundingMode: utils.Ref(platform.RoundingModeHalfEven),
164164
TaxRoundingMode: utils.Ref(platform.RoundingModeHalfEven),
@@ -532,7 +532,7 @@ func IsDefaultShoppingListsConfiguration_Nil(t *testing.T) {
532532

533533
func IsDefaultShoppingListsConfiguration_DefaultValue(t *testing.T) {
534534
c := &platform.ShoppingListsConfiguration{
535-
DeleteDaysAfterLastModification: utils.IntRef(DefaultDaysAfterLastModification),
535+
DeleteDaysAfterLastModification: DefaultCartsDeleteDaysAfterLastModification,
536536
}
537537
assert.True(t, IsDefaultShoppingListsConfiguration(c))
538538
}
@@ -544,7 +544,7 @@ func IsDefaultShoppingListsConfiguration_NilDeleteDays(t *testing.T) {
544544

545545
func IsDefaultShoppingListsConfiguration_NonDefaultDeleteDays(t *testing.T) {
546546
c := &platform.ShoppingListsConfiguration{
547-
DeleteDaysAfterLastModification: utils.IntRef(30),
547+
DeleteDaysAfterLastModification: 30,
548548
}
549549
assert.False(t, IsDefaultShoppingListsConfiguration(c))
550550
}

internal/resources/project/resource.go

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@ import (
1414
"github.com/hashicorp/terraform-plugin-framework/path"
1515
"github.com/hashicorp/terraform-plugin-framework/resource"
1616
"github.com/hashicorp/terraform-plugin-framework/resource/schema"
17-
"github.com/hashicorp/terraform-plugin-framework/resource/schema/boolplanmodifier"
18-
"github.com/hashicorp/terraform-plugin-framework/resource/schema/int64planmodifier"
1917
"github.com/hashicorp/terraform-plugin-framework/resource/schema/listplanmodifier"
2018
"github.com/hashicorp/terraform-plugin-framework/resource/schema/planmodifier"
2119
"github.com/hashicorp/terraform-plugin-framework/resource/schema/stringplanmodifier"
@@ -175,16 +173,14 @@ func (r *projectResource) Schema(_ context.Context, _ resource.SchemaRequest, re
175173
"enabled": schema.BoolAttribute{
176174
MarkdownDescription: "When true the creation of messages on the Messages Query HTTP API is enabled",
177175
Optional: true,
178-
PlanModifiers: []planmodifier.Bool{
179-
boolplanmodifier.UseStateForUnknown(),
180-
},
176+
Computed: true,
177+
Default: booldefault.StaticBool(false),
181178
},
182179
"delete_days_after_creation": schema.Int64Attribute{
183180
MarkdownDescription: "Specifies the number of days each Message should be available via the Messages Query API",
184181
Optional: true,
185-
PlanModifiers: []planmodifier.Int64{
186-
int64planmodifier.UseStateForUnknown(),
187-
},
182+
Computed: true,
183+
Default: int64default.StaticInt64(15),
188184
Validators: []validator.Int64{
189185
int64validator.Between(1, 90),
190186
},

internal/resources/project/resource_test.go

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
99
"github.com/hashicorp/terraform-plugin-sdk/v2/terraform"
1010
"github.com/labd/commercetools-go-sdk/platform"
11+
"github.com/labd/terraform-provider-commercetools/internal/resources/project"
1112
"github.com/stretchr/testify/assert"
1213

1314
"github.com/labd/terraform-provider-commercetools/internal/acctest"
@@ -64,12 +65,12 @@ func TestAccProjectCreate_basic(t *testing.T) {
6465
assert.EqualValues(t, []string{"nl", "de", "en", "en-US"}, result.Languages)
6566
assert.EqualValues(t, []string{"EUR", "USD"}, result.Currencies)
6667
assert.EqualValues(t, false, result.Messages.Enabled)
67-
assert.EqualValues(t, utils.IntRef(15), result.Messages.DeleteDaysAfterCreation)
68-
assert.Equal(t, 90, *result.Carts.DeleteDaysAfterLastModification)
68+
assert.EqualValues(t, project.DefaultMessagesDeleteDaysAfterCreation, *result.Messages.DeleteDaysAfterCreation)
69+
assert.Equal(t, 90, result.Carts.DeleteDaysAfterLastModification)
6970
assert.Equal(t, false, *result.Carts.CountryTaxRateFallbackEnabled)
70-
assert.Equal(t, utils.Ref(platform.RoundingModeHalfEven), result.Carts.PriceRoundingMode)
71-
assert.Equal(t, utils.Ref(platform.RoundingModeHalfEven), result.Carts.TaxRoundingMode)
72-
assert.Equal(t, 90, *result.ShoppingLists.DeleteDaysAfterLastModification)
71+
assert.Equal(t, new(platform.RoundingModeHalfEven), result.Carts.PriceRoundingMode)
72+
assert.Equal(t, new(platform.RoundingModeHalfEven), result.Carts.TaxRoundingMode)
73+
assert.Equal(t, 360, result.ShoppingLists.DeleteDaysAfterLastModification)
7374
assert.Nil(t, result.ShippingRateInputType)
7475
return nil
7576
},

0 commit comments

Comments
 (0)