Skip to content

Commit 7f73c5c

Browse files
committed
feat: use sqlite as secondary resource storage
This pulls in cosi-project/state-sqlite#2 This is just PoC for now, it misses the migration step. See siderolabs#1770 See siderolabs#1768 Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
1 parent 084e813 commit 7f73c5c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

64 files changed

+217
-114
lines changed

client/api/omni/specs/cluster_machine_config.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ package specs
77
import (
88
"errors"
99

10-
"gopkg.in/yaml.v3"
10+
"go.yaml.in/yaml/v4"
1111
)
1212

1313
// MarshalJSON implements json.Marshaler interface.

client/api/omni/specs/cluster_machine_config_patches.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import (
1111
"iter"
1212

1313
"github.com/siderolabs/gen/xslices"
14-
"gopkg.in/yaml.v3"
14+
"go.yaml.in/yaml/v4"
1515

1616
"github.com/siderolabs/omni/client/pkg/constants"
1717
)

client/api/omni/specs/compression.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ import (
1212
"github.com/klauspost/compress/zstd"
1313
"github.com/siderolabs/gen/ensure"
1414
"github.com/siderolabs/gen/optional"
15+
"go.yaml.in/yaml/v4"
1516
"google.golang.org/protobuf/encoding/protojson"
1617
"google.golang.org/protobuf/proto"
17-
"gopkg.in/yaml.v3"
1818

1919
"github.com/siderolabs/omni/client/pkg/constants"
2020
)

client/api/omni/specs/config_patch.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ package specs
88
import (
99
"errors"
1010

11-
"gopkg.in/yaml.v3"
11+
"go.yaml.in/yaml/v4"
1212
)
1313

1414
// MarshalJSON marshals the ConfigPatchSpec to JSON, representing the compressed data as the regular data field.

client/api/omni/specs/omni_yaml.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
package specs
66

77
import (
8-
"gopkg.in/yaml.v3"
8+
"go.yaml.in/yaml/v4"
99
)
1010

1111
// MarshalYAML implements yaml.Marshaler interface.

client/api/omni/specs/redacted_cluster_machine_config.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ package specs
88
import (
99
"errors"
1010

11-
"gopkg.in/yaml.v3"
11+
"go.yaml.in/yaml/v4"
1212
)
1313

1414
// MarshalJSON implements json.Marshaler interface.

client/go.mod

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,12 @@ module github.com/siderolabs/omni/client
22

33
go 1.25.3
44

5-
// forked go-yaml that introduces RawYAML interface, which can be used to populate YAML fields using bytes
6-
// which are then encoded as a valid YAML blocks with proper indentiation
7-
replace gopkg.in/yaml.v3 => github.com/unix4ever/yaml v0.0.0-20220527175918-f17b0f05cf2c
8-
95
require (
106
github.com/ProtonMail/gopenpgp/v2 v2.9.0
117
github.com/adrg/xdg v0.5.3
128
github.com/blang/semver/v4 v4.0.0
139
github.com/containers/image/v5 v5.36.2
14-
github.com/cosi-project/runtime v1.11.0
10+
github.com/cosi-project/runtime v1.12.0
1511
github.com/dustin/go-humanize v1.0.1
1612
github.com/fatih/color v1.18.0
1713
github.com/gertd/go-pluralize v0.2.1
@@ -21,28 +17,27 @@ require (
2117
github.com/hashicorp/go-multierror v1.1.1
2218
github.com/hexops/gotextdiff v1.0.3
2319
github.com/jxskiss/base62 v1.1.0
24-
github.com/klauspost/compress v1.18.0
20+
github.com/klauspost/compress v1.18.1
2521
github.com/mattn/go-isatty v0.0.20
2622
github.com/planetscale/vtprotobuf v0.6.1-0.20241121165744-79df5c4772f2
2723
github.com/sergi/go-diff v1.4.0
28-
github.com/siderolabs/gen v0.8.5
24+
github.com/siderolabs/gen v0.8.6
2925
github.com/siderolabs/go-api-signature v0.3.9
3026
github.com/siderolabs/go-kubeconfig v0.1.1
3127
github.com/siderolabs/go-pointer v1.0.1
3228
github.com/siderolabs/image-factory v0.8.4
3329
github.com/siderolabs/proto-codec v0.1.2
3430
github.com/siderolabs/siderolink v0.3.15
35-
github.com/siderolabs/talos/pkg/machinery v1.12.0-alpha.2
31+
github.com/siderolabs/talos/pkg/machinery v1.12.0-alpha.2.0.20251104112157-92eeaa4826cf
3632
github.com/spf13/cobra v1.10.1
3733
github.com/stretchr/testify v1.11.1
3834
github.com/xlab/treeprint v1.2.0
3935
go.uber.org/zap v1.27.0
36+
go.yaml.in/yaml/v4 v4.0.0-rc.2
4037
golang.org/x/sync v0.17.0
4138
golang.org/x/term v0.36.0
4239
google.golang.org/grpc v1.76.0
4340
google.golang.org/protobuf v1.36.10
44-
gopkg.in/yaml.v2 v2.4.0
45-
gopkg.in/yaml.v3 v3.0.3
4641
k8s.io/client-go v0.35.0-alpha.1
4742
)
4843

@@ -116,6 +111,8 @@ require (
116111
google.golang.org/genproto/googleapis/api v0.0.0-20251020155222-88f65dc88635 // indirect
117112
google.golang.org/genproto/googleapis/rpc v0.0.0-20251020155222-88f65dc88635 // indirect
118113
gopkg.in/inf.v0 v0.9.1 // indirect
114+
gopkg.in/yaml.v2 v2.4.0 // indirect
115+
gopkg.in/yaml.v3 v3.0.1 // indirect
119116
k8s.io/apimachinery v0.35.0-alpha.1 // indirect
120117
k8s.io/klog/v2 v2.130.1 // indirect
121118
k8s.io/kube-openapi v0.0.0-20250910181357-589584f1c912 // indirect

client/go.sum

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@ github.com/containers/image/v5 v5.36.2 h1:GcxYQyAHRF/pLqR4p4RpvKllnNL8mOBn0eZnqJ
2828
github.com/containers/image/v5 v5.36.2/go.mod h1:b4GMKH2z/5t6/09utbse2ZiLK/c72GuGLFdp7K69eA4=
2929
github.com/containers/storage v1.59.1 h1:11Zu68MXsEQGBBd+GadPrHPpWeqjKS8hJDGiAHgIqDs=
3030
github.com/containers/storage v1.59.1/go.mod h1:KoAYHnAjP3/cTsRS+mmWZGkufSY2GACiKQ4V3ZLQnR0=
31-
github.com/cosi-project/runtime v1.11.0 h1:PHinl/uQvl31ESQBy3sClHq1dcfNf2dlRKPwBByiJkY=
32-
github.com/cosi-project/runtime v1.11.0/go.mod h1:GcP14NES5Kyh4ikX6X9ARuU1ucXH02FAnYlbSqLDy2k=
31+
github.com/cosi-project/runtime v1.12.0 h1:fsX1VKn9atthccDMhWDHM+t1hdW6eDKAPa2t/Rd/dfI=
32+
github.com/cosi-project/runtime v1.12.0/go.mod h1:/9fspODJfZrO5dQatMRgN440K8DjWP1jFSgiLX+FmQc=
3333
github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
3434
github.com/cpuguy83/go-md2man/v2 v2.0.7 h1:zbFlGlXEAKlwXpmvle3d8Oe3YnkKIK4xSRTd3sHPnBo=
3535
github.com/cpuguy83/go-md2man/v2 v2.0.7/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
@@ -127,8 +127,8 @@ github.com/jxskiss/base62 v1.1.0 h1:A5zbF8v8WXx2xixnAKD2w+abC+sIzYJX+nxmhA6HWFw=
127127
github.com/jxskiss/base62 v1.1.0/go.mod h1:HhWAlUXvxKThfOlZbcuFzsqwtF5TcqS9ru3y5GfjWAc=
128128
github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8=
129129
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
130-
github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo=
131-
github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ=
130+
github.com/klauspost/compress v1.18.1 h1:bcSGx7UbpBqMChDtsF28Lw6v/G94LPrrbMbdC3JH2co=
131+
github.com/klauspost/compress v1.18.1/go.mod h1:ZQFFVG+MdnR0P+l6wpXgIL4NTtwiKIdBnrBd8Nrxr+0=
132132
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
133133
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
134134
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
@@ -194,8 +194,8 @@ github.com/sergi/go-diff v1.4.0 h1:n/SP9D5ad1fORl+llWyN+D6qoUETXNZARKjyY2/KVCw=
194194
github.com/sergi/go-diff v1.4.0/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4=
195195
github.com/siderolabs/crypto v0.6.4 h1:uMoe/X/mABOv6yOgvKcjmjIMdv6U8JegBXlPKtyjn3g=
196196
github.com/siderolabs/crypto v0.6.4/go.mod h1:39B7Mdrd8qTfEYOjsWPQOk7gLTWrEI30isAW+YYj9nk=
197-
github.com/siderolabs/gen v0.8.5 h1:xlWXTynnGD/epaj7uplvKvmAkBH+Fp51bLnw1JC0xME=
198-
github.com/siderolabs/gen v0.8.5/go.mod h1:CRrktDXQf3yDJI7xKv+cDYhBbKdfd/YE16OpgcHoT9E=
197+
github.com/siderolabs/gen v0.8.6 h1:pE6shuqov3L+5rEcAUJ/kY6iJofimljQw5G95P8a5c4=
198+
github.com/siderolabs/gen v0.8.6/go.mod h1:J9IbusbES2W6QWjtSHpDV9iPGZHc978h1+KJ4oQRspQ=
199199
github.com/siderolabs/go-api-signature v0.3.9 h1:JfXTR0J9LOsvQXT0kIdnSm+F3qe+ustLnBuC65H0qvc=
200200
github.com/siderolabs/go-api-signature v0.3.9/go.mod h1:VcilCqp2k2bYjFhzsxdc2JPqGIcOkHjeG2bLLm1NGeA=
201201
github.com/siderolabs/go-kubeconfig v0.1.1 h1:tZlgpelj/OqrcHVUwISPN0NRgObcflpH9WtE41mtQZ0=
@@ -214,8 +214,8 @@ github.com/siderolabs/protoenc v0.2.4 h1:D3Fpn2nQSQOhl8ZlAxijZAf7K6F8CM1uZq0afIG
214214
github.com/siderolabs/protoenc v0.2.4/go.mod h1:i5XLHjfv5vyi7LhQrSEo19HCA+lYtDd7CWxsoWp9XE8=
215215
github.com/siderolabs/siderolink v0.3.15 h1:WSsgKQGJY/ObIKjTcYYGEaGfRMyox+r/Ft+9lIgJqOI=
216216
github.com/siderolabs/siderolink v0.3.15/go.mod h1:iWdlsHji90zotgDg4+a2zJL2ZMNJckQ8/VwqR39ThBM=
217-
github.com/siderolabs/talos/pkg/machinery v1.12.0-alpha.2 h1:7lSOPX6wfIbP6gyB7yCpXo5KmZIGzXVTQlJogoXd1RQ=
218-
github.com/siderolabs/talos/pkg/machinery v1.12.0-alpha.2/go.mod h1:1o88OOhsajk1kZ1JbF8K3iD7nCDEbrAkCjlioyNPWRA=
217+
github.com/siderolabs/talos/pkg/machinery v1.12.0-alpha.2.0.20251104112157-92eeaa4826cf h1:UVyr8c5Ee1RbGRE4aAAgi89ulJlHTvXtcoaYU5oEbwM=
218+
github.com/siderolabs/talos/pkg/machinery v1.12.0-alpha.2.0.20251104112157-92eeaa4826cf/go.mod h1:n2aIyxoNdNXE46hSp4V2w2R6rVzWC2K+9I2PsutRjT8=
219219
github.com/spf13/cobra v1.10.1 h1:lJeBwCfmrnXthfAupyUTzJ/J4Nc1RsHC/mSRU2dll/s=
220220
github.com/spf13/cobra v1.10.1/go.mod h1:7SmJGaTHFVBY0jW4NXGluQoLvhqFQM+6XSKD+P4XaB0=
221221
github.com/spf13/pflag v1.0.9/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
@@ -236,8 +236,6 @@ github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO
236236
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
237237
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
238238
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
239-
github.com/unix4ever/yaml v0.0.0-20220527175918-f17b0f05cf2c h1:Vn6nVVu9MdOYvXPkJP83iX5jVIfvxFC9v9xIKb+DlaQ=
240-
github.com/unix4ever/yaml v0.0.0-20220527175918-f17b0f05cf2c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
241239
github.com/vishvananda/netns v0.0.5 h1:DfiHV+j8bA32MFM7bfEunvT8IAqQ/NzSJHtcmW5zdEY=
242240
github.com/vishvananda/netns v0.0.5/go.mod h1:SpkAiCQRtJ6TvvxPnOSyH3BMl6unz3xZlaprSwhNNJM=
243241
github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM=
@@ -269,6 +267,8 @@ go.yaml.in/yaml/v2 v2.4.3 h1:6gvOSjQoTB3vt1l+CU+tSyi/HOjfOjRLJ4YwYZGwRO0=
269267
go.yaml.in/yaml/v2 v2.4.3/go.mod h1:zSxWcmIDjOzPXpjlTTbAsKokqkDNAVtZO0WOMiT90s8=
270268
go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc=
271269
go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg=
270+
go.yaml.in/yaml/v4 v4.0.0-rc.2 h1:/FrI8D64VSr4HtGIlUtlFMGsm7H7pWTbj6vOLVZcA6s=
271+
go.yaml.in/yaml/v4 v4.0.0-rc.2/go.mod h1:aZqd9kCMsGL7AuUv/m/PvWLdg5sjJsZ4oHDEnfPPfY0=
272272
go4.org/netipx v0.0.0-20231129151722-fdeea329fbba h1:0b9z3AuHCjxk0x/opv64kcgZLBseWJUpBw5I82+2U4M=
273273
go4.org/netipx v0.0.0-20231129151722-fdeea329fbba/go.mod h1:PLyyIXexvUFg3Owu6p/WfdlivPbZJsZdgWZlrGope/Y=
274274
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
@@ -366,6 +366,9 @@ gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw=
366366
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
367367
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
368368
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
369+
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
370+
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
371+
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
369372
gvisor.dev/gvisor v0.0.0-20250503011706-39ed1f5ac29c h1:m/r7OM+Y2Ty1sgBQ7Qb27VgIMBW8ZZhT4gLnUyDIhzI=
370373
gvisor.dev/gvisor v0.0.0-20250503011706-39ed1f5ac29c/go.mod h1:3r5CMtNQMKIvBlrmM9xWUNamjKBYPOWyXOjmg5Kts3g=
371374
k8s.io/api v0.35.0-alpha.1 h1:aL5Q6ZV4MQ2NZMmlnAsV7wj9a30gLhlLnGbx6GUmuBs=

client/pkg/clusterimport/clusterimport.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ import (
3434
configres "github.com/siderolabs/talos/pkg/machinery/resources/config"
3535
"github.com/siderolabs/talos/pkg/machinery/resources/k8s"
3636
"github.com/siderolabs/talos/pkg/machinery/resources/runtime"
37-
"gopkg.in/yaml.v3"
37+
"go.yaml.in/yaml/v4"
3838

3939
"github.com/siderolabs/omni/client/pkg/constants"
4040
"github.com/siderolabs/omni/client/pkg/image"

client/pkg/compression/compression_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import (
1111
"testing"
1212

1313
"github.com/stretchr/testify/require"
14-
"gopkg.in/yaml.v3"
14+
"go.yaml.in/yaml/v4"
1515

1616
"github.com/siderolabs/omni/client/api/omni/specs"
1717
"github.com/siderolabs/omni/client/pkg/constants"

0 commit comments

Comments
 (0)