mirror of
https://github.com/All-Hands-AI/OpenHands.git
synced 2026-01-10 07:18:10 -05:00
Forgejo integration (#11111)
Co-authored-by: johba <admin@noreply.localhost> Co-authored-by: openhands <openhands@all-hands.dev> Co-authored-by: johba <johba@harb.eth> Co-authored-by: enyst <engel.nyst@gmail.com> Co-authored-by: Graham Neubig <neubig@gmail.com> Co-authored-by: MrGeorgen <65063405+MrGeorgen@users.noreply.github.com> Co-authored-by: MrGeorgen <moinl6162@gmail.com>
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
from types import MappingProxyType
|
||||
from typing import cast
|
||||
from typing import Annotated, cast
|
||||
|
||||
from fastapi import APIRouter, Depends, Query, status
|
||||
from fastapi.responses import JSONResponse
|
||||
@@ -67,7 +67,7 @@ async def get_user_installations(
|
||||
@app.get('/repositories', response_model=list[Repository])
|
||||
async def get_user_repositories(
|
||||
sort: str = 'pushed',
|
||||
selected_provider: ProviderType | None = None,
|
||||
selected_provider: Annotated[ProviderType | None, Query()] = None,
|
||||
page: int | None = None,
|
||||
per_page: int | None = None,
|
||||
installation_id: str | None = None,
|
||||
@@ -137,7 +137,7 @@ async def search_repositories(
|
||||
per_page: int = 5,
|
||||
sort: str = 'stars',
|
||||
order: str = 'desc',
|
||||
selected_provider: ProviderType | None = None,
|
||||
selected_provider: Annotated[ProviderType | None, Query()] = None,
|
||||
provider_tokens: PROVIDER_TOKEN_TYPE | None = Depends(get_provider_tokens),
|
||||
access_token: SecretStr | None = Depends(get_access_token),
|
||||
user_id: str | None = Depends(get_user_id),
|
||||
@@ -171,7 +171,7 @@ async def search_branches(
|
||||
repository: str,
|
||||
query: str,
|
||||
per_page: int = 30,
|
||||
selected_provider: ProviderType | None = None,
|
||||
selected_provider: Annotated[ProviderType | None, Query()] = None,
|
||||
provider_tokens: PROVIDER_TOKEN_TYPE | None = Depends(get_provider_tokens),
|
||||
access_token: SecretStr | None = Depends(get_access_token),
|
||||
user_id: str | None = Depends(get_user_id),
|
||||
@@ -243,6 +243,7 @@ async def get_repository_branches(
|
||||
repository: str,
|
||||
page: int = 1,
|
||||
per_page: int = 30,
|
||||
selected_provider: Annotated[ProviderType | None, Query()] = None,
|
||||
provider_tokens: PROVIDER_TOKEN_TYPE | None = Depends(get_provider_tokens),
|
||||
access_token: SecretStr | None = Depends(get_access_token),
|
||||
user_id: str | None = Depends(get_user_id),
|
||||
@@ -253,6 +254,7 @@ async def get_repository_branches(
|
||||
repository: The repository name in the format 'owner/repo'
|
||||
page: Page number for pagination (default: 1)
|
||||
per_page: Number of branches per page (default: 30)
|
||||
selected_provider: Optional provider hint to avoid trying other providers
|
||||
|
||||
Returns:
|
||||
A paginated response with branches for the repository
|
||||
@@ -263,7 +265,10 @@ async def get_repository_branches(
|
||||
)
|
||||
try:
|
||||
branches_response: PaginatedBranchesResponse = await client.get_branches(
|
||||
repository, page=page, per_page=per_page
|
||||
repository,
|
||||
specified_provider=selected_provider,
|
||||
page=page,
|
||||
per_page=per_page,
|
||||
)
|
||||
return branches_response
|
||||
|
||||
|
||||
Reference in New Issue
Block a user