Skip to content

Commit 2956117

Browse files
authored
Merge pull request lichess-org#14342 from lichess-org/puzzle-issue-cli
set puzzle issue from cli
2 parents 6582dbe + 8c2798a commit 2956117

File tree

4 files changed

+14
-3
lines changed

4 files changed

+14
-3
lines changed

app/views/dev.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,4 +84,5 @@ eval-cache drop standard 8/8/1k6/8/2K5/1P6/8/8 w - - 0 1
8484
disposable test msumain.edu.ph
8585
disposable reload msumain.edu.ph
8686
video sheet
87+
puzzle issue {id} {issue}
8788
"""

modules/api/src/main/Cli.scala

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,6 @@ final private[api] class Cli(
4646
case None =>
4747
fuccess:
4848
"Invalid announce. Format: `announce <length> <unit> <words...>` or just `announce cancel` to cancel it"
49-
case "puzzle" :: "opening" :: "recompute" :: "all" :: Nil =>
50-
puzzle.opening.recomputeAll
51-
fuccess("started in background")
5249
case "threads" :: Nil =>
5350
fuccess:
5451
val threads = ornicar.scalalib.Jvm.threadGroups()
@@ -70,6 +67,7 @@ final private[api] class Cli(
7067
studySearch.cli.process orElse
7168
evalCache.cli.process orElse
7269
plan.cli.process orElse
70+
puzzle.cli.process orElse
7371
msg.cli.process orElse
7472
video.cli.process orElse
7573
team.cli.process orElse

modules/puzzle/src/main/Env.scala

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,15 @@ final class Env(
8585

8686
private lazy val tagger = wire[PuzzleTagger]
8787

88+
def cli = new lila.common.Cli:
89+
def process =
90+
case "puzzle" :: "opening" :: "recompute" :: "all" :: Nil =>
91+
opening.recomputeAll
92+
fuccess("started in background")
93+
case "puzzle" :: "issue" :: id :: issue :: Nil =>
94+
api.puzzle.setIssue(PuzzleId(id), issue) map: res =>
95+
if res then "done" else "not found"
96+
8897
scheduler.scheduleAtFixedRate(10 minutes, 1 day): () =>
8998
tagger.addAllMissing
9099

modules/puzzle/src/main/PuzzleApi.scala

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ final class PuzzleApi(
3333
MaxPerPage(30)
3434
)
3535

36+
def setIssue(id: PuzzleId, issue: String): Fu[Boolean] =
37+
colls.puzzle(_.updateField($id(id), Puzzle.BSONFields.issue, issue).map(_.n > 0))
38+
3639
private[puzzle] object round:
3740

3841
def find(user: User, puzzleId: PuzzleId): Fu[Option[PuzzleRound]] =

0 commit comments

Comments
 (0)