mirror of
https://github.com/TheAnachronism/docspell.git
synced 2025-06-22 02:18:26 +00:00
Store solr migration state in a solr document
This commit is contained in:
@ -18,7 +18,9 @@ object FtsWork {
|
||||
def reInitializeTasks[F[_]: Monad]: FtsWork[F] =
|
||||
FtsWork { ctx =>
|
||||
val migrations =
|
||||
ctx.fts.initialize.map(fm => fm.changeResult(_ => FtsMigration.Result.workDone))
|
||||
ctx.fts.initializeNew.map(fm =>
|
||||
fm.changeResult(_ => FtsMigration.Result.workDone)
|
||||
)
|
||||
|
||||
NonEmptyList.fromList(migrations) match {
|
||||
case Some(nel) =>
|
||||
|
@ -20,8 +20,10 @@ object MigrationTask {
|
||||
.log[F, Unit](_.info(s"Running full-text-index migrations now"))
|
||||
.flatMap(_ =>
|
||||
Task(ctx =>
|
||||
Migration[F](cfg, fts, ctx.store, ctx.logger)
|
||||
.run(migrationTasks[F](fts))
|
||||
for {
|
||||
migs <- migrationTasks[F](fts)
|
||||
res <- Migration[F](cfg, fts, ctx.store, ctx.logger).run(migs)
|
||||
} yield res
|
||||
)
|
||||
)
|
||||
|
||||
@ -44,7 +46,7 @@ object MigrationTask {
|
||||
Some(DocspellSystem.migrationTaskTracker)
|
||||
)
|
||||
|
||||
def migrationTasks[F[_]: Effect](fts: FtsClient[F]): List[Migration[F]] =
|
||||
fts.initialize.map(fm => Migration.from(fm))
|
||||
def migrationTasks[F[_]: Effect](fts: FtsClient[F]): F[List[Migration[F]]] =
|
||||
fts.initialize.map(_.map(fm => Migration.from(fm)))
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user