Skip to content

Commit 758d8f0

Browse files
authored
fix: use the latest runtime package to fix the none deterministic failure (#1392)
<!-- markdownlint-disable MD041 --> #### What this PR does / why we need it Fix the runner: https://github.com/open-component-model/open-component-model/actions/runs/20093305963/job/57645974622 #### Which issue(s) this PR fixes <!-- Usage: `Fixes #<issue number>`, or `Fixes (paste link of issue)`. --> --------- Signed-off-by: Gergely Brautigam <182850+Skarlso@users.noreply.github.com>
1 parent 78fed9a commit 758d8f0

3 files changed

Lines changed: 13 additions & 20 deletions

File tree

kubernetes/controller/go.mod

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ require (
3232

3333
require (
3434
github.com/cyberphone/json-canonicalization v0.0.0-20241213102144-19d51d7fe467
35+
github.com/docker/cli v28.5.2+incompatible
3536
github.com/hashicorp/golang-lru/v2 v2.0.7
3637
ocm.software/ocm v0.32.0
3738
ocm.software/open-component-model/bindings/go/blob v0.0.10
@@ -44,7 +45,7 @@ require (
4445
ocm.software/open-component-model/bindings/go/plugin v0.0.12
4546
ocm.software/open-component-model/bindings/go/repository v0.0.4
4647
ocm.software/open-component-model/bindings/go/rsa v0.0.0-20251204125915-cb295d402227
47-
ocm.software/open-component-model/bindings/go/runtime v0.0.4
48+
ocm.software/open-component-model/bindings/go/runtime v0.0.5
4849
ocm.software/open-component-model/bindings/go/signing v0.0.0-20251204125915-cb295d402227
4950
)
5051

@@ -159,7 +160,6 @@ require (
159160
github.com/digitorus/timestamp v0.0.0-20250524132541-c45532741eea // indirect
160161
github.com/dimchansky/utfbom v1.1.1 // indirect
161162
github.com/distribution/reference v0.6.0 // indirect
162-
github.com/docker/cli v28.5.2+incompatible // indirect
163163
github.com/docker/distribution v2.8.3+incompatible // indirect
164164
github.com/docker/docker v28.5.2+incompatible // indirect
165165
github.com/docker/docker-credential-helpers v0.9.4 // indirect

kubernetes/controller/go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2715,8 +2715,8 @@ ocm.software/open-component-model/bindings/go/repository v0.0.4 h1:pDh8tHTaE8PtB
27152715
ocm.software/open-component-model/bindings/go/repository v0.0.4/go.mod h1:v1ROvp4Hmq5q3t4Mg2gPUqoOJn4ENFaOVmd1XBXKdj4=
27162716
ocm.software/open-component-model/bindings/go/rsa v0.0.0-20251204125915-cb295d402227 h1:3Pr4hU1sxZGlYvrAuZi/GvqcWNIUvc4N6FkHxQuDbCg=
27172717
ocm.software/open-component-model/bindings/go/rsa v0.0.0-20251204125915-cb295d402227/go.mod h1:NpbI5rIIyPpN5xnTjb63xRX//NMAEVkIG8QqualCwJU=
2718-
ocm.software/open-component-model/bindings/go/runtime v0.0.4 h1:Z4r5MKj8tDXATzZNNnfJuTIpDw0/bvQ1XzuqcAcSRcE=
2719-
ocm.software/open-component-model/bindings/go/runtime v0.0.4/go.mod h1:iokVCXI30cn36PM05bBBaDGeXpz0hbgU9ObTtdP26Eo=
2718+
ocm.software/open-component-model/bindings/go/runtime v0.0.5 h1:z/gU2EMKZc8nPziSReG/KHtRTZJBkoOlR+B+XsaAmZ4=
2719+
ocm.software/open-component-model/bindings/go/runtime v0.0.5/go.mod h1:9rDFSoH49kO95qKwG5o/lFsIb4Q9JR/le9QzxcVW+hk=
27202720
ocm.software/open-component-model/bindings/go/signing v0.0.0-20251204125915-cb295d402227 h1:6nVRVoPEnK6DA3n+5XtNIXyJEeM/S833vpgI1P6TNh0=
27212721
ocm.software/open-component-model/bindings/go/signing v0.0.0-20251204125915-cb295d402227/go.mod h1:+QR/3GRsKLdA63aSmqE/ajOnvp+2GH7D05iyBnXDQIo=
27222722
oras.land/oras-go/v2 v2.6.0 h1:X4ELRsiGkrbeox69+9tzTu492FMUu7zJQW6eJU+I2oc=

kubernetes/controller/internal/configuration/config.go

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -62,43 +62,36 @@ func createConfigFromDockerConfig(data []byte) (*genericv1.Config, error) {
6262
}
6363

6464
dockerConfig := &v1.DockerConfig{}
65-
66-
// Set the default type for the DockerConfig object.
6765
if _, err := credentials.Scheme.DefaultType(dockerConfig); err != nil {
68-
return nil, fmt.Errorf("failed to get default type for docker config type")
66+
return nil, fmt.Errorf("failed to get default type for docker config type %T: %w", dockerConfig, err)
6967
}
7068

71-
// Assign the raw Docker configuration data to the DockerConfig object.
7269
dockerConfig.DockerConfig = string(data)
73-
74-
// Convert the DockerConfig object into a runtime.Raw object.
7570
raw := &runtime.Raw{}
7671
if err := credentials.Scheme.Convert(dockerConfig, raw); err != nil {
77-
return nil, fmt.Errorf("failed to convert docker config to raw")
72+
return nil, fmt.Errorf("failed to convert docker config to raw: %w", err)
7873
}
7974

80-
// Init a scheme for the credential type to use it converting later
8175
credScheme := runtime.NewScheme()
8276
credentialsv1.MustRegister(credScheme)
83-
84-
credConfig := &credentialsv1.Config{}
77+
credConfig := &credentialsv1.Config{
78+
Repositories: []credentialsv1.RepositoryConfigEntry{{raw}},
79+
}
8580
if _, err := credScheme.DefaultType(credConfig); err != nil {
86-
return nil, fmt.Errorf("failed to get default type for credential config type")
81+
return nil, fmt.Errorf("failed to get default type for credentials config: %w", err)
8782
}
8883

89-
credConfig.Repositories = []credentialsv1.RepositoryConfigEntry{{raw}}
90-
9184
rawCreds := &runtime.Raw{}
9285
if err := credScheme.Convert(credConfig, rawCreds); err != nil {
93-
return nil, fmt.Errorf("failed to convert credential config to raw")
86+
return nil, fmt.Errorf("failed to convert credential config to raw type: %w", err)
9487
}
9588

96-
cfg := genericv1.Config{
89+
cfg := &genericv1.Config{
9790
Type: runtime.Type{Version: genericv1.Version, Name: genericv1.ConfigType},
9891
Configurations: []*runtime.Raw{rawCreds},
9992
}
10093

101-
return &cfg, nil
94+
return cfg, nil
10295
}
10396

10497
// GetConfigFromConfigMap extracts and decodes OCM configuration from a Kubernetes ConfigMap.

0 commit comments

Comments
 (0)