api: Fix type hints in sdk controller.
BUG=None
TEST=CQ
Change-Id: I6328c977ad7645d08c3b09c3c8aae69eed22c072
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/4619035
Tested-by: Alex Klein <saklein@chromium.org>
Commit-Queue: Alex Klein <saklein@chromium.org>
Commit-Queue: Cindy Lin <xcl@google.com>
Auto-Submit: Alex Klein <saklein@chromium.org>
Reviewed-by: Cindy Lin <xcl@google.com>
diff --git a/api/controller/sdk.py b/api/controller/sdk.py
index c4ed316..4837967 100644
--- a/api/controller/sdk.py
+++ b/api/controller/sdk.py
@@ -5,7 +5,7 @@
"""SDK chroot operations."""
import os
-from typing import Dict, Union
+from typing import Dict, TYPE_CHECKING, Union
from chromite.api import controller
from chromite.api import faux
@@ -16,6 +16,11 @@
from chromite.service import sdk
+if TYPE_CHECKING:
+ from chromite.api import api_config
+ from chromite.api.gen.chromite.api import sdk_pb2
+
+
def _ChrootVersionResponse(_input_proto, output_proto, _config):
"""Add a fake chroot version to a successful response."""
output_proto.version.version = 168
@@ -39,8 +44,8 @@
@validate.require("chroot")
@validate.validation_complete
def BuildSdkTarball(
- input_proto: "BuildSdkTarballRequest",
- output_proto: "BuildSdkTarballResponse",
+ input_proto: "sdk_pb2.BuildSdkTarballRequest",
+ output_proto: "sdk_pb2.BuildSdkTarballResponse",
_config: "api_config.ApiConfig",
) -> None:
chroot = controller_util.ParseChroot(input_proto.chroot)
@@ -60,8 +65,8 @@
@validate.require("dest_dir")
@validate.validation_complete
def CreateManifestFromSdk(
- input_proto: "CreateManifestFromSdkRequest",
- output_proto: "CreateManifestFromSdkResponse",
+ input_proto: "sdk_pb2.CreateManifestFromSdkRequest",
+ output_proto: "sdk_pb2.CreateManifestFromSdkResponse",
_config: "api_config.ApiConfig",
) -> None:
"""Create a manifest file showing the ebuilds in an SDK."""
@@ -90,8 +95,8 @@
@faux.success(_ChrootVersionResponse)
@faux.empty_error
def Create(
- input_proto: "CreateRequest",
- output_proto: "CreateResponse",
+ input_proto: "sdk_pb2.CreateRequest",
+ output_proto: "sdk_pb2.CreateResponse",
config: "api_config.ApiConfig",
) -> Union[int, None]:
"""Chroot creation, includes support for replacing an existing chroot.
@@ -139,8 +144,8 @@
@validate.require_each("toolchain_targets", ["name"])
@validate.validation_complete
def Update(
- input_proto: "UpdateRequest",
- output_proto: "UpdateResponse",
+ input_proto: "sdk_pb2.UpdateRequest",
+ output_proto: "sdk_pb2.UpdateResponse",
_config: "api_config.ApiConfig",
):
"""Update the chroot.
@@ -273,8 +278,8 @@
)
@validate.validation_complete
def CreateBinhostCLs(
- input_proto: "CreateBinhostCLsRequest",
- output_proto: "CreateBinhostCLsResponse",
+ input_proto: "sdk_pb2.CreateBinhostCLsRequest",
+ output_proto: "sdk_pb2.CreateBinhostCLsResponse",
_config: "api_config.ApiConfig",
) -> None:
"""Create CLs to update the binhost to point at uploaded prebuilts."""