@@ -13,6 +13,7 @@ import (
13
13
"github.com/scylladb/gocqlx/v2"
14
14
"github.com/scylladb/gocqlx/v2/gocqlxtest"
15
15
"github.com/scylladb/gocqlx/v2/migrate"
16
+ "github.com/scylladb/gocqlx/v2/migrate/example/cql"
16
17
)
17
18
18
19
// Running examples locally:
@@ -21,40 +22,40 @@ import (
21
22
func TestExample (t * testing.T ) {
22
23
const ks = "migrate_example"
23
24
25
+ // Create keyspace
24
26
cluster := gocqlxtest .CreateCluster ()
25
27
cluster .Keyspace = ks
26
-
27
28
if err := gocqlxtest .CreateKeyspace (cluster , ks ); err != nil {
28
29
t .Fatal ("CreateKeyspace:" , err )
29
30
}
31
+
32
+ // Create session using the keyspace
30
33
session , err := gocqlx .WrapSession (cluster .CreateSession ())
31
34
if err != nil {
32
35
t .Fatal ("CreateSession:" , err )
33
36
}
34
37
defer session .Close ()
35
38
36
39
// Add callback prints
37
- printEvent := func (ctx context.Context , session gocqlx.Session , ev migrate.CallbackEvent , name string ) error {
40
+ log := func (ctx context.Context , session gocqlx.Session , ev migrate.CallbackEvent , name string ) error {
38
41
t .Log (ev , name )
39
42
return nil
40
43
}
41
-
42
44
reg := migrate.CallbackRegister {}
43
- reg .Add (migrate .BeforeMigration , "m1.cql" , printEvent )
44
- reg .Add (migrate .AfterMigration , "m1.cql" , printEvent )
45
- reg .Add (migrate .CallComment , "1" , printEvent )
46
- reg .Add (migrate .CallComment , "2" , printEvent )
47
- reg .Add (migrate .CallComment , "3" , printEvent )
48
-
45
+ reg .Add (migrate .BeforeMigration , "m1.cql" , log )
46
+ reg .Add (migrate .AfterMigration , "m1.cql" , log )
47
+ reg .Add (migrate .CallComment , "1" , log )
48
+ reg .Add (migrate .CallComment , "2" , log )
49
+ reg .Add (migrate .CallComment , "3" , log )
49
50
migrate .Callback = reg .Callback
50
51
51
52
// First run prints data
52
- if err := migrate .Migrate (context .Background (), session , "migrations" ); err != nil {
53
+ if err := migrate .FromFS (context .Background (), session , cql . Files ); err != nil {
53
54
t .Fatal ("Migrate:" , err )
54
55
}
55
56
56
57
// Second run skips the processed files
57
- if err := migrate .Migrate (context .Background (), session , "migrations" ); err != nil {
58
+ if err := migrate .FromFS (context .Background (), session , cql . Files ); err != nil {
58
59
t .Fatal ("Migrate:" , err )
59
60
}
60
61
}
0 commit comments