@@ -31,8 +31,8 @@ func TestMigrate(t *testing.T) {
31
31
image .SimpleReference ("test.registry/bar-operator/bar-bundle:v0.2.0" ): "testdata/bar-bundle-v0.2.0" ,
32
32
}
33
33
34
- tmpDir := t .TempDir ()
35
- dbFile := filepath .Join (tmpDir , "index.db" )
34
+ sqliteDBDir := t .TempDir ()
35
+ dbFile := filepath .Join (sqliteDBDir , "index.db" )
36
36
err := generateSqliteFile (dbFile , sqliteBundles )
37
37
require .NoError (t , err )
38
38
@@ -44,7 +44,6 @@ func TestMigrate(t *testing.T) {
44
44
name : "SqliteImage/Success" ,
45
45
migrate : action.Migrate {
46
46
CatalogRef : "test.registry/migrate/catalog:sqlite" ,
47
- OutputDir : filepath .Join (tmpDir , "sqlite-image" ),
48
47
WriteFunc : declcfg .WriteYAML ,
49
48
FileExt : ".yaml" ,
50
49
Registry : reg ,
@@ -58,7 +57,6 @@ func TestMigrate(t *testing.T) {
58
57
name : "SqliteFile/Success" ,
59
58
migrate : action.Migrate {
60
59
CatalogRef : dbFile ,
61
- OutputDir : filepath .Join (tmpDir , "sqlite-file" ),
62
60
WriteFunc : declcfg .WriteYAML ,
63
61
FileExt : ".yaml" ,
64
62
Registry : reg ,
@@ -72,7 +70,6 @@ func TestMigrate(t *testing.T) {
72
70
name : "DeclcfgImage/Success" ,
73
71
migrate : action.Migrate {
74
72
CatalogRef : "test.registry/foo-operator/foo-index-declcfg:v0.2.0" ,
75
- OutputDir : filepath .Join (tmpDir , "declcfg-image" ),
76
73
WriteFunc : declcfg .WriteYAML ,
77
74
FileExt : ".yaml" ,
78
75
Registry : reg ,
@@ -85,7 +82,6 @@ func TestMigrate(t *testing.T) {
85
82
name : "DeclcfgDir/Success" ,
86
83
migrate : action.Migrate {
87
84
CatalogRef : "testdata/foo-index-v0.2.0-declcfg" ,
88
- OutputDir : filepath .Join (tmpDir , "declcfg-dir" ),
89
85
WriteFunc : declcfg .WriteYAML ,
90
86
FileExt : ".yaml" ,
91
87
Registry : reg ,
@@ -98,16 +94,31 @@ func TestMigrate(t *testing.T) {
98
94
name : "BundleImage/Failure" ,
99
95
migrate : action.Migrate {
100
96
CatalogRef : "test.registry/foo-operator/foo-bundle:v0.1.0" ,
101
- OutputDir : filepath .Join (tmpDir , "bundle-image" ),
102
97
WriteFunc : declcfg .WriteYAML ,
103
98
FileExt : ".yaml" ,
104
99
Registry : reg ,
105
100
},
106
101
expectErr : action .ErrNotAllowed ,
107
102
},
103
+ {
104
+ name : "SqliteImage/Success/NoMigrations" ,
105
+ migrate : action.Migrate {
106
+ CatalogRef : "test.registry/migrate/catalog:sqlite" ,
107
+ WriteFunc : declcfg .WriteYAML ,
108
+ FileExt : ".yaml" ,
109
+ Registry : reg ,
110
+ Migrations : nil ,
111
+ },
112
+ expectedFiles : map [string ]string {
113
+ "foo/catalog.yaml" : migrateFooCatalogSqlite (),
114
+ "bar/catalog.yaml" : migrateBarCatalogSqlite (),
115
+ },
116
+ },
108
117
}
109
118
for _ , s := range specs {
110
119
t .Run (s .name , func (t * testing.T ) {
120
+ s .migrate .OutputDir = t .TempDir ()
121
+
111
122
err := s .migrate .Run (context .Background ())
112
123
require .ErrorIs (t , err , s .expectErr )
113
124
if s .expectErr != nil {
@@ -224,18 +235,12 @@ properties:
224
235
value:
225
236
packageName: bar
226
237
versionRange: <0.1.0
227
- - type: olm.csv.metadata
228
- value:
229
- annotations:
230
- olm.skipRange: <0.1.0
231
- apiServiceDefinitions: {}
232
- crdDescriptions:
233
- owned:
234
- - kind: Foo
235
- name: foos.test.foo
236
- version: v1
237
- displayName: Foo Operator
238
- provider: {}
238
+ - type: olm.bundle.object
239
+ value:
240
+ data: eyJhcGlWZXJzaW9uIjoiYXBpZXh0ZW5zaW9ucy5rOHMuaW8vdjEiLCJraW5kIjoiQ3VzdG9tUmVzb3VyY2VEZWZpbml0aW9uIiwibWV0YWRhdGEiOnsibmFtZSI6ImZvb3MudGVzdC5mb28ifSwic3BlYyI6eyJncm91cCI6InRlc3QuZm9vIiwibmFtZXMiOnsia2luZCI6IkZvbyIsInBsdXJhbCI6ImZvb3MifSwidmVyc2lvbnMiOlt7Im5hbWUiOiJ2MSJ9XX19
241
+ - type: olm.bundle.object
242
+ value:
243
+ data: eyJhcGlWZXJzaW9uIjoib3BlcmF0b3JzLmNvcmVvcy5jb20vdjFhbHBoYTEiLCJraW5kIjoiQ2x1c3RlclNlcnZpY2VWZXJzaW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsib2xtLnNraXBSYW5nZSI6Ilx1MDAzYzAuMS4wIn0sIm5hbWUiOiJmb28udjAuMS4wIn0sInNwZWMiOnsiY3VzdG9tcmVzb3VyY2VkZWZpbml0aW9ucyI6eyJvd25lZCI6W3siZ3JvdXAiOiJ0ZXN0LmZvbyIsImtpbmQiOiJGb28iLCJuYW1lIjoiZm9vcy50ZXN0LmZvbyIsInZlcnNpb24iOiJ2MSJ9XX0sImRpc3BsYXlOYW1lIjoiRm9vIE9wZXJhdG9yIiwicmVsYXRlZEltYWdlcyI6W3siaW1hZ2UiOiJ0ZXN0LnJlZ2lzdHJ5L2Zvby1vcGVyYXRvci9mb286djAuMS4wIiwibmFtZSI6Im9wZXJhdG9yIn1dLCJ2ZXJzaW9uIjoiMC4xLjAifX0=
239
244
relatedImages:
240
245
- image: test.registry/foo-operator/foo-bundle:v0.1.0
241
246
name: ""
@@ -265,18 +270,12 @@ properties:
265
270
value:
266
271
packageName: bar
267
272
versionRange: <0.1.0
268
- - type: olm.csv.metadata
269
- value:
270
- annotations:
271
- olm.skipRange: <0.2.0
272
- apiServiceDefinitions: {}
273
- crdDescriptions:
274
- owned:
275
- - kind: Foo
276
- name: foos.test.foo
277
- version: v1
278
- displayName: Foo Operator
279
- provider: {}
273
+ - type: olm.bundle.object
274
+ value:
275
+ data: eyJhcGlWZXJzaW9uIjoiYXBpZXh0ZW5zaW9ucy5rOHMuaW8vdjEiLCJraW5kIjoiQ3VzdG9tUmVzb3VyY2VEZWZpbml0aW9uIiwibWV0YWRhdGEiOnsibmFtZSI6ImZvb3MudGVzdC5mb28ifSwic3BlYyI6eyJncm91cCI6InRlc3QuZm9vIiwibmFtZXMiOnsia2luZCI6IkZvbyIsInBsdXJhbCI6ImZvb3MifSwidmVyc2lvbnMiOlt7Im5hbWUiOiJ2MSJ9XX19
276
+ - type: olm.bundle.object
277
+ value:
278
+ data: eyJhcGlWZXJzaW9uIjoib3BlcmF0b3JzLmNvcmVvcy5jb20vdjFhbHBoYTEiLCJraW5kIjoiQ2x1c3RlclNlcnZpY2VWZXJzaW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsib2xtLnNraXBSYW5nZSI6Ilx1MDAzYzAuMi4wIn0sIm5hbWUiOiJmb28udjAuMi4wIn0sInNwZWMiOnsiY3VzdG9tcmVzb3VyY2VkZWZpbml0aW9ucyI6eyJvd25lZCI6W3siZ3JvdXAiOiJ0ZXN0LmZvbyIsImtpbmQiOiJGb28iLCJuYW1lIjoiZm9vcy50ZXN0LmZvbyIsInZlcnNpb24iOiJ2MSJ9XX0sImRpc3BsYXlOYW1lIjoiRm9vIE9wZXJhdG9yIiwiaW5zdGFsbCI6eyJzcGVjIjp7ImRlcGxveW1lbnRzIjpbeyJuYW1lIjoiZm9vLW9wZXJhdG9yIiwic3BlYyI6eyJ0ZW1wbGF0ZSI6eyJzcGVjIjp7ImNvbnRhaW5lcnMiOlt7ImltYWdlIjoidGVzdC5yZWdpc3RyeS9mb28tb3BlcmF0b3IvZm9vOnYwLjIuMCJ9XSwiaW5pdENvbnRhaW5lcnMiOlt7ImltYWdlIjoidGVzdC5yZWdpc3RyeS9mb28tb3BlcmF0b3IvZm9vLWluaXQ6djAuMi4wIn1dfX19fSx7Im5hbWUiOiJmb28tb3BlcmF0b3ItMiIsInNwZWMiOnsidGVtcGxhdGUiOnsic3BlYyI6eyJjb250YWluZXJzIjpbeyJpbWFnZSI6InRlc3QucmVnaXN0cnkvZm9vLW9wZXJhdG9yL2Zvby0yOnYwLjIuMCJ9XSwiaW5pdENvbnRhaW5lcnMiOlt7ImltYWdlIjoidGVzdC5yZWdpc3RyeS9mb28tb3BlcmF0b3IvZm9vLWluaXQtMjp2MC4yLjAifV19fX19XX0sInN0cmF0ZWd5IjoiZGVwbG95bWVudCJ9LCJyZWxhdGVkSW1hZ2VzIjpbeyJpbWFnZSI6InRlc3QucmVnaXN0cnkvZm9vLW9wZXJhdG9yL2Zvbzp2MC4yLjAiLCJuYW1lIjoib3BlcmF0b3IifSx7ImltYWdlIjoidGVzdC5yZWdpc3RyeS9mb28tb3BlcmF0b3IvZm9vLW90aGVyOnYwLjIuMCIsIm5hbWUiOiJvdGhlciJ9XSwicmVwbGFjZXMiOiJmb28udjAuMS4wIiwic2tpcHMiOlsiZm9vLnYwLjEuMSIsImZvby52MC4xLjIiXSwidmVyc2lvbiI6IjAuMi4wIn19
280
279
relatedImages:
281
280
- image: test.registry/foo-operator/foo-2:v0.2.0
282
281
name: ""
@@ -292,6 +291,7 @@ relatedImages:
292
291
name: operator
293
292
schema: olm.bundle
294
293
`
294
+
295
295
}
296
296
297
297
func migrateBarCatalogSqlite () string {
@@ -323,15 +323,12 @@ properties:
323
323
value:
324
324
packageName: bar
325
325
version: 0.1.0
326
- - type: olm.csv.metadata
327
- value:
328
- apiServiceDefinitions: {}
329
- crdDescriptions:
330
- owned:
331
- - kind: Bar
332
- name: bars.test.bar
333
- version: v1alpha1
334
- provider: {}
326
+ - type: olm.bundle.object
327
+ value:
328
+ data: eyJhcGlWZXJzaW9uIjoiYXBpZXh0ZW5zaW9ucy5rOHMuaW8vdjEiLCJraW5kIjoiQ3VzdG9tUmVzb3VyY2VEZWZpbml0aW9uIiwibWV0YWRhdGEiOnsibmFtZSI6ImJhcnMudGVzdC5iYXIifSwic3BlYyI6eyJncm91cCI6InRlc3QuYmFyIiwibmFtZXMiOnsia2luZCI6IkJhciIsInBsdXJhbCI6ImJhcnMifSwidmVyc2lvbnMiOlt7Im5hbWUiOiJ2MWFscGhhMSJ9XX19
329
+ - type: olm.bundle.object
330
+ value:
331
+ data: eyJhcGlWZXJzaW9uIjoib3BlcmF0b3JzLmNvcmVvcy5jb20vdjFhbHBoYTEiLCJraW5kIjoiQ2x1c3RlclNlcnZpY2VWZXJzaW9uIiwibWV0YWRhdGEiOnsibmFtZSI6ImJhci52MC4xLjAifSwic3BlYyI6eyJjdXN0b21yZXNvdXJjZWRlZmluaXRpb25zIjp7Im93bmVkIjpbeyJncm91cCI6InRlc3QuYmFyIiwia2luZCI6IkJhciIsIm5hbWUiOiJiYXJzLnRlc3QuYmFyIiwidmVyc2lvbiI6InYxYWxwaGExIn1dfSwicmVsYXRlZEltYWdlcyI6W3siaW1hZ2UiOiJ0ZXN0LnJlZ2lzdHJ5L2Jhci1vcGVyYXRvci9iYXI6djAuMS4wIiwibmFtZSI6Im9wZXJhdG9yIn1dLCJ2ZXJzaW9uIjoiMC4xLjAifX0=
335
332
relatedImages:
336
333
- image: test.registry/bar-operator/bar-bundle:v0.1.0
337
334
name: ""
@@ -352,17 +349,12 @@ properties:
352
349
value:
353
350
packageName: bar
354
351
version: 0.2.0
355
- - type: olm.csv.metadata
356
- value:
357
- annotations:
358
- olm.skipRange: <0.2.0
359
- apiServiceDefinitions: {}
360
- crdDescriptions:
361
- owned:
362
- - kind: Bar
363
- name: bars.test.bar
364
- version: v1alpha1
365
- provider: {}
352
+ - type: olm.bundle.object
353
+ value:
354
+ data: eyJhcGlWZXJzaW9uIjoiYXBpZXh0ZW5zaW9ucy5rOHMuaW8vdjEiLCJraW5kIjoiQ3VzdG9tUmVzb3VyY2VEZWZpbml0aW9uIiwibWV0YWRhdGEiOnsibmFtZSI6ImJhcnMudGVzdC5iYXIifSwic3BlYyI6eyJncm91cCI6InRlc3QuYmFyIiwibmFtZXMiOnsia2luZCI6IkJhciIsInBsdXJhbCI6ImJhcnMifSwidmVyc2lvbnMiOlt7Im5hbWUiOiJ2MWFscGhhMSJ9XX19
355
+ - type: olm.bundle.object
356
+ value:
357
+ data: eyJhcGlWZXJzaW9uIjoib3BlcmF0b3JzLmNvcmVvcy5jb20vdjFhbHBoYTEiLCJraW5kIjoiQ2x1c3RlclNlcnZpY2VWZXJzaW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsib2xtLnNraXBSYW5nZSI6Ilx1MDAzYzAuMi4wIn0sIm5hbWUiOiJiYXIudjAuMi4wIn0sInNwZWMiOnsiY3VzdG9tcmVzb3VyY2VkZWZpbml0aW9ucyI6eyJvd25lZCI6W3siZ3JvdXAiOiJ0ZXN0LmJhciIsImtpbmQiOiJCYXIiLCJuYW1lIjoiYmFycy50ZXN0LmJhciIsInZlcnNpb24iOiJ2MWFscGhhMSJ9XX0sInJlbGF0ZWRJbWFnZXMiOlt7ImltYWdlIjoidGVzdC5yZWdpc3RyeS9iYXItb3BlcmF0b3IvYmFyOnYwLjIuMCIsIm5hbWUiOiJvcGVyYXRvciJ9XSwic2tpcHMiOlsiYmFyLnYwLjEuMCJdLCJ2ZXJzaW9uIjoiMC4yLjAifX0=
366
358
relatedImages:
367
359
- image: test.registry/bar-operator/bar-bundle:v0.2.0
368
360
name: ""
@@ -434,18 +426,12 @@ properties:
434
426
value:
435
427
packageName: bar
436
428
versionRange: <0.1.0
437
- - type: olm.csv.metadata
438
- value:
439
- annotations:
440
- olm.skipRange: <0.1.0
441
- apiServiceDefinitions: {}
442
- crdDescriptions:
443
- owned:
444
- - kind: Foo
445
- name: foos.test.foo
446
- version: v1
447
- displayName: Foo Operator
448
- provider: {}
429
+ - type: olm.bundle.object
430
+ value:
431
+ data: eyJhcGlWZXJzaW9uIjoib3BlcmF0b3JzLmNvcmVvcy5jb20vdjFhbHBoYTEiLCJraW5kIjoiQ2x1c3RlclNlcnZpY2VWZXJzaW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsib2xtLnNraXBSYW5nZSI6Ilx1MDAzYzAuMS4wIn0sIm5hbWUiOiJmb28udjAuMS4wIn0sInNwZWMiOnsiY3VzdG9tcmVzb3VyY2VkZWZpbml0aW9ucyI6eyJvd25lZCI6W3siZ3JvdXAiOiJ0ZXN0LmZvbyIsImtpbmQiOiJGb28iLCJuYW1lIjoiZm9vcy50ZXN0LmZvbyIsInZlcnNpb24iOiJ2MSJ9XX0sImRpc3BsYXlOYW1lIjoiRm9vIE9wZXJhdG9yIiwicmVsYXRlZEltYWdlcyI6W3siaW1hZ2UiOiJ0ZXN0LnJlZ2lzdHJ5L2Zvby1vcGVyYXRvci9mb286djAuMS4wIiwibmFtZSI6Im9wZXJhdG9yIn1dLCJ2ZXJzaW9uIjoiMC4xLjAifX0=
432
+ - type: olm.bundle.object
433
+ value:
434
+ data: eyJhcGlWZXJzaW9uIjoiYXBpZXh0ZW5zaW9ucy5rOHMuaW8vdjEiLCJraW5kIjoiQ3VzdG9tUmVzb3VyY2VEZWZpbml0aW9uIiwibWV0YWRhdGEiOnsibmFtZSI6ImZvb3MudGVzdC5mb28ifSwic3BlYyI6eyJncm91cCI6InRlc3QuZm9vIiwibmFtZXMiOnsia2luZCI6IkZvbyIsInBsdXJhbCI6ImZvb3MifSwidmVyc2lvbnMiOlt7Im5hbWUiOiJ2MSJ9XX19
449
435
relatedImages:
450
436
- image: test.registry/foo-operator/foo-bundle:v0.1.0
451
437
name: ""
@@ -475,18 +461,12 @@ properties:
475
461
value:
476
462
packageName: bar
477
463
versionRange: <0.1.0
478
- - type: olm.csv.metadata
479
- value:
480
- annotations:
481
- olm.skipRange: <0.2.0
482
- apiServiceDefinitions: {}
483
- crdDescriptions:
484
- owned:
485
- - kind: Foo
486
- name: foos.test.foo
487
- version: v1
488
- displayName: Foo Operator
489
- provider: {}
464
+ - type: olm.bundle.object
465
+ value:
466
+ data: eyJhcGlWZXJzaW9uIjoib3BlcmF0b3JzLmNvcmVvcy5jb20vdjFhbHBoYTEiLCJraW5kIjoiQ2x1c3RlclNlcnZpY2VWZXJzaW9uIiwibWV0YWRhdGEiOnsiYW5ub3RhdGlvbnMiOnsib2xtLnNraXBSYW5nZSI6Ilx1MDAzYzAuMi4wIn0sIm5hbWUiOiJmb28udjAuMi4wIn0sInNwZWMiOnsiY3VzdG9tcmVzb3VyY2VkZWZpbml0aW9ucyI6eyJvd25lZCI6W3siZ3JvdXAiOiJ0ZXN0LmZvbyIsImtpbmQiOiJGb28iLCJuYW1lIjoiZm9vcy50ZXN0LmZvbyIsInZlcnNpb24iOiJ2MSJ9XX0sImRpc3BsYXlOYW1lIjoiRm9vIE9wZXJhdG9yIiwiaW5zdGFsbCI6eyJzcGVjIjp7ImRlcGxveW1lbnRzIjpbeyJuYW1lIjoiZm9vLW9wZXJhdG9yIiwic3BlYyI6eyJ0ZW1wbGF0ZSI6eyJzcGVjIjp7ImNvbnRhaW5lcnMiOlt7ImltYWdlIjoidGVzdC5yZWdpc3RyeS9mb28tb3BlcmF0b3IvZm9vOnYwLjIuMCJ9XSwiaW5pdENvbnRhaW5lcnMiOlt7ImltYWdlIjoidGVzdC5yZWdpc3RyeS9mb28tb3BlcmF0b3IvZm9vLWluaXQ6djAuMi4wIn1dfX19fSx7Im5hbWUiOiJmb28tb3BlcmF0b3ItMiIsInNwZWMiOnsidGVtcGxhdGUiOnsic3BlYyI6eyJjb250YWluZXJzIjpbeyJpbWFnZSI6InRlc3QucmVnaXN0cnkvZm9vLW9wZXJhdG9yL2Zvby0yOnYwLjIuMCJ9XSwiaW5pdENvbnRhaW5lcnMiOlt7ImltYWdlIjoidGVzdC5yZWdpc3RyeS9mb28tb3BlcmF0b3IvZm9vLWluaXQtMjp2MC4yLjAifV19fX19XX0sInN0cmF0ZWd5IjoiZGVwbG95bWVudCJ9LCJyZWxhdGVkSW1hZ2VzIjpbeyJpbWFnZSI6InRlc3QucmVnaXN0cnkvZm9vLW9wZXJhdG9yL2Zvbzp2MC4yLjAiLCJuYW1lIjoib3BlcmF0b3IifSx7ImltYWdlIjoidGVzdC5yZWdpc3RyeS9mb28tb3BlcmF0b3IvZm9vLW90aGVyOnYwLjIuMCIsIm5hbWUiOiJvdGhlciJ9XSwicmVwbGFjZXMiOiJmb28udjAuMS4wIiwic2tpcHMiOlsiZm9vLnYwLjEuMSIsImZvby52MC4xLjIiXSwidmVyc2lvbiI6IjAuMi4wIn19
467
+ - type: olm.bundle.object
468
+ value:
469
+ data: eyJhcGlWZXJzaW9uIjoiYXBpZXh0ZW5zaW9ucy5rOHMuaW8vdjEiLCJraW5kIjoiQ3VzdG9tUmVzb3VyY2VEZWZpbml0aW9uIiwibWV0YWRhdGEiOnsibmFtZSI6ImZvb3MudGVzdC5mb28ifSwic3BlYyI6eyJncm91cCI6InRlc3QuZm9vIiwibmFtZXMiOnsia2luZCI6IkZvbyIsInBsdXJhbCI6ImZvb3MifSwidmVyc2lvbnMiOlt7Im5hbWUiOiJ2MSJ9XX19
490
470
relatedImages:
491
471
- image: test.registry/foo-operator/foo-2:v0.2.0
492
472
name: ""
0 commit comments