in app/src/main/kotlin/io/klibs/app/indexing/GitHubIndexingService.kt [55:73]
fun syncOwnerWithGitHub() {
var selectedOwnerId: Int? = null
try {
val ownerToUpdate = scmOwnerRepository.findForUpdate() ?: return
if (ownerBackoffProvider.isBackedOff(ownerToUpdate.idNotNull)) {
logger.debug("Selected ownerId={} login={} is in backoff; skipping this run", ownerToUpdate.id, ownerToUpdate.login)
return
}
selectedOwnerId = ownerToUpdate.idNotNull
val updated = updateOwner(ownerToUpdate)
logger.debug("Updated GitHub owner: {}", updated)
ownerBackoffProvider.onSuccess(ownerToUpdate.idNotNull)
} catch (e: Exception) {
logger.error("Error while updating a GitHub owner", e)
selectedOwnerId?.let { ownerBackoffProvider.onFailure(it) }
}
}