17 lines
449 B
Python
17 lines
449 B
Python
from typing import Iterable
|
|
|
|
import requests
|
|
from funcy import chunks, flatten
|
|
|
|
from pyinfra.server.receiver.receiver import Receiver
|
|
|
|
|
|
class RestReceiver(Receiver):
|
|
def __init__(self, chunk_size=3):
|
|
self.chunk_size = chunk_size
|
|
|
|
def __call__(self, responses: Iterable[requests.Response]):
|
|
for response in flatten(chunks(self.chunk_size, responses)):
|
|
response.raise_for_status()
|
|
yield response.json()
|