private def execPostUpdateHook()

in modules/core/src/main/scala/org/scalasteward/core/edit/hooks/HookExecutor.scala [59:84]


  private def execPostUpdateHook(
      repo: Repo,
      update: Update.Single,
      hook: PostUpdateHook,
      signoffCommits: Option[Boolean]
  ): F[EditAttempt] =
    for {
      _ <- logger.info(
        s"Executing post-update hook for ${update.groupId}:${update.mainArtifactId} with command ${hook.showCommand}"
      )
      repoDir <- workspaceAlg.repoDir(repo)
      result <- logger.attemptWarn.log("Post-update hook failed") {
        val slurpOptions = SlurpOptions.ignoreBufferOverflow
        processAlg
          .execMaybeSandboxed(hook.useSandbox)(hook.command, repoDir, slurpOptions = slurpOptions)
          .void
      }
      commitMessage = hook
        .commitMessage(update)
        .appendParagraph(s"Executed command: ${hook.command.mkString_(" ")}")
      maybeHookCommit <- gitAlg.commitAllIfDirty(repo, commitMessage, signoffCommits)
      maybeBlameIgnoreCommit <-
        maybeHookCommit.flatTraverse(
          addToGitBlameIgnoreRevs(repo, repoDir, hook, _, commitMessage, signoffCommits)
        )
    } yield HookEdit(hook, result, maybeHookCommit.toList ++ maybeBlameIgnoreCommit.toList)