(
*,
settings: Settings,
query: str,
after: str | None = None,
)
| 119 | |
| 120 | |
| 121 | def get_graphql_response( |
| 122 | *, |
| 123 | settings: Settings, |
| 124 | query: str, |
| 125 | after: str | None = None, |
| 126 | ) -> dict[str, Any]: |
| 127 | headers = {"Authorization": f"token {settings.github_token.get_secret_value()}"} |
| 128 | variables = {"after": after} |
| 129 | response = httpx.post( |
| 130 | github_graphql_url, |
| 131 | headers=headers, |
| 132 | timeout=settings.httpx_timeout, |
| 133 | json={"query": query, "variables": variables, "operationName": "Q"}, |
| 134 | ) |
| 135 | if response.status_code != 200: |
| 136 | logging.error(f"Response was not 200, after: {after}") |
| 137 | logging.error(response.text) |
| 138 | raise RuntimeError(response.text) |
| 139 | data = response.json() |
| 140 | if "errors" in data: |
| 141 | logging.error(f"Errors in response, after: {after}") |
| 142 | logging.error(data["errors"]) |
| 143 | logging.error(response.text) |
| 144 | raise RuntimeError(response.text) |
| 145 | return data |
| 146 | |
| 147 | |
| 148 | def get_graphql_pr_edges( |
no test coverage detected
searching dependent graphs…