@@ -31,8 +31,8 @@ func TestMigrate(t *testing.T) {
3131 image .SimpleReference ("test.registry/bar-operator/bar-bundle:v0.2.0" ): "testdata/bar-bundle-v0.2.0" ,
3232 }
3333
34- tmpDir := t .TempDir ()
35- dbFile := filepath .Join (tmpDir , "index.db" )
34+ sqliteDBDir := t .TempDir ()
35+ dbFile := filepath .Join (sqliteDBDir , "index.db" )
3636 err := generateSqliteFile (dbFile , sqliteBundles )
3737 require .NoError (t , err )
3838
@@ -44,7 +44,6 @@ func TestMigrate(t *testing.T) {
4444 name : "SqliteImage/Success" ,
4545 migrate : action.Migrate {
4646 CatalogRef : "test.registry/migrate/catalog:sqlite" ,
47- OutputDir : filepath .Join (tmpDir , "sqlite-image" ),
4847 WriteFunc : declcfg .WriteYAML ,
4948 FileExt : ".yaml" ,
5049 Registry : reg ,
@@ -58,7 +57,6 @@ func TestMigrate(t *testing.T) {
5857 name : "SqliteFile/Success" ,
5958 migrate : action.Migrate {
6059 CatalogRef : dbFile ,
61- OutputDir : filepath .Join (tmpDir , "sqlite-file" ),
6260 WriteFunc : declcfg .WriteYAML ,
6361 FileExt : ".yaml" ,
6462 Registry : reg ,
@@ -72,7 +70,6 @@ func TestMigrate(t *testing.T) {
7270 name : "DeclcfgImage/Success" ,
7371 migrate : action.Migrate {
7472 CatalogRef : "test.registry/foo-operator/foo-index-declcfg:v0.2.0" ,
75- OutputDir : filepath .Join (tmpDir , "declcfg-image" ),
7673 WriteFunc : declcfg .WriteYAML ,
7774 FileExt : ".yaml" ,
7875 Registry : reg ,
@@ -85,7 +82,6 @@ func TestMigrate(t *testing.T) {
8582 name : "DeclcfgDir/Success" ,
8683 migrate : action.Migrate {
8784 CatalogRef : "testdata/foo-index-v0.2.0-declcfg" ,
88- OutputDir : filepath .Join (tmpDir , "declcfg-dir" ),
8985 WriteFunc : declcfg .WriteYAML ,
9086 FileExt : ".yaml" ,
9187 Registry : reg ,
@@ -98,16 +94,31 @@ func TestMigrate(t *testing.T) {
9894 name : "BundleImage/Failure" ,
9995 migrate : action.Migrate {
10096 CatalogRef : "test.registry/foo-operator/foo-bundle:v0.1.0" ,
101- OutputDir : filepath .Join (tmpDir , "bundle-image" ),
10297 WriteFunc : declcfg .WriteYAML ,
10398 FileExt : ".yaml" ,
10499 Registry : reg ,
105100 },
106101 expectErr : action .ErrNotAllowed ,
107102 },
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+ },
108117 }
109118 for _ , s := range specs {
110119 t .Run (s .name , func (t * testing.T ) {
120+ s .migrate .OutputDir = t .TempDir ()
121+
111122 err := s .migrate .Run (context .Background ())
112123 require .ErrorIs (t , err , s .expectErr )
113124 if s .expectErr != nil {
@@ -224,18 +235,12 @@ properties:
224235 value:
225236 packageName: bar
226237 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=
239244relatedImages:
240245- image: test.registry/foo-operator/foo-bundle:v0.1.0
241246 name: ""
@@ -265,18 +270,12 @@ properties:
265270 value:
266271 packageName: bar
267272 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
280279relatedImages:
281280- image: test.registry/foo-operator/foo-2:v0.2.0
282281 name: ""
@@ -292,6 +291,7 @@ relatedImages:
292291 name: operator
293292schema: olm.bundle
294293`
294+
295295}
296296
297297func migrateBarCatalogSqlite () string {
@@ -323,15 +323,12 @@ properties:
323323 value:
324324 packageName: bar
325325 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=
335332relatedImages:
336333- image: test.registry/bar-operator/bar-bundle:v0.1.0
337334 name: ""
@@ -352,17 +349,12 @@ properties:
352349 value:
353350 packageName: bar
354351 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=
366358relatedImages:
367359- image: test.registry/bar-operator/bar-bundle:v0.2.0
368360 name: ""
@@ -434,18 +426,12 @@ properties:
434426 value:
435427 packageName: bar
436428 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
449435relatedImages:
450436- image: test.registry/foo-operator/foo-bundle:v0.1.0
451437 name: ""
@@ -475,18 +461,12 @@ properties:
475461 value:
476462 packageName: bar
477463 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
490470relatedImages:
491471- image: test.registry/foo-operator/foo-2:v0.2.0
492472 name: ""
0 commit comments