Retryable uns a code block, and retries it when an exception occurs. It's great when working with flakey webservices (for example). It's configured using four optional parameters :tries, :on, :sleep, :matching, :ensure, :exception_cb and runs the passed block. Should an exception occur, it'll retry for (n-1) times. Should the number of retries be reached without success, the last exception will be raised. WWW: https://github.com/nfedyashev/retryable