diff --git a/.github/workflows/ghcr-build.yml b/.github/workflows/ghcr-build.yml index 74f67b6e69..72eec7a8a9 100644 --- a/.github/workflows/ghcr-build.yml +++ b/.github/workflows/ghcr-build.yml @@ -225,7 +225,7 @@ jobs: SANDBOX_RUNTIME_CONTAINER_IMAGE=$image_name \ TEST_IN_CI=true \ RUN_AS_OPENHANDS=false \ - poetry run pytest -n 7 -raRs --reruns 2 --reruns-delay 5 -s ./tests/runtime --ignore=tests/runtime/test_browsergym_envs.py --durations=10 + poetry run pytest -n 0 -raRs --reruns 2 --reruns-delay 5 -s ./tests/runtime --ignore=tests/runtime/test_browsergym_envs.py --durations=10 env: DEBUG: "1" @@ -284,7 +284,7 @@ jobs: SANDBOX_RUNTIME_CONTAINER_IMAGE=$image_name \ TEST_IN_CI=true \ RUN_AS_OPENHANDS=true \ - poetry run pytest -n 7 -raRs --reruns 2 --reruns-delay 5 -s ./tests/runtime --ignore=tests/runtime/test_browsergym_envs.py --durations=10 + poetry run pytest -n 0 -raRs --reruns 2 --reruns-delay 5 -s ./tests/runtime --ignore=tests/runtime/test_browsergym_envs.py --durations=10 env: DEBUG: "1" diff --git a/openhands/integrations/gitlab/gitlab_service.py b/openhands/integrations/gitlab/gitlab_service.py index 8c0589c3fa..216ee92fed 100644 --- a/openhands/integrations/gitlab/gitlab_service.py +++ b/openhands/integrations/gitlab/gitlab_service.py @@ -161,6 +161,9 @@ class GitLabService(BaseGitService, GitService): if 'Link' in response.headers: headers['Link'] = response.headers['Link'] + if 'X-Total' in response.headers: + headers['X-Total'] = response.headers['X-Total'] + content_type = response.headers.get('Content-Type', '') if 'application/json' in content_type: return response.json(), headers @@ -599,12 +602,11 @@ class GitLabService(BaseGitService, GitService): ) branches.append(branch) - # Parse pagination headers has_next_page = False total_count = None - - if 'X-Next-Page' in headers and headers['X-Next-Page']: + if headers.get('Link', ''): has_next_page = True + if 'X-Total' in headers: try: total_count = int(headers['X-Total']) diff --git a/tests/unit/integrations/gitlab/test_gitlab_branches.py b/tests/unit/integrations/gitlab/test_gitlab_branches.py index e903aef3fd..c23f86d53a 100644 --- a/tests/unit/integrations/gitlab/test_gitlab_branches.py +++ b/tests/unit/integrations/gitlab/test_gitlab_branches.py @@ -25,8 +25,8 @@ async def test_get_paginated_branches_gitlab_headers_and_parsing(): ] headers = { - 'X-Next-Page': '3', # indicates has next page 'X-Total': '42', + 'Link': '; rel="next"', # indicates has next page } with patch.object(service, '_make_request', return_value=(mock_response, headers)):