Build API: Make autotest more generic.
BUG=chromium:933984
TEST=run_tests
Change-Id: I2764716ff89b8668db7621b3e9e6cfe808c8018a
Reviewed-on: https://chromium-review.googlesource.com/1480630
Commit-Ready: Alex Klein <saklein@chromium.org>
Tested-by: Alex Klein <saklein@chromium.org>
Reviewed-by: Alex Klein <saklein@chromium.org>
Reviewed-by: C Shapiro <shapiroc@chromium.org>
diff --git a/api/build_api.py b/api/build_api.py
index 00959eb..3df89e0 100644
--- a/api/build_api.py
+++ b/api/build_api.py
@@ -13,10 +13,10 @@
from google.protobuf import symbol_database
from chromite.api import service
-from chromite.api.gen import autotest_pb2
from chromite.api.gen import build_api_pb2
from chromite.api.gen import depgraph_pb2
from chromite.api.gen import image_pb2
+from chromite.api.gen import test_archive_pb2
from chromite.lib import commandline
from chromite.lib import cros_build_lib
from chromite.lib import osutils
@@ -232,9 +232,9 @@
Args:
router (Router): The router.
"""
- router.Register(autotest_pb2)
router.Register(depgraph_pb2)
router.Register(image_pb2)
+ router.Register(test_archive_pb2)
def main(argv):
diff --git a/api/gen/autotest_pb2.py b/api/gen/autotest_pb2.py
deleted file mode 100644
index 3faf323..0000000
--- a/api/gen/autotest_pb2.py
+++ /dev/null
@@ -1,183 +0,0 @@
-# Generated by the protocol buffer compiler. DO NOT EDIT!
-# source: autotest.proto
-
-import sys
-_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
-from google.protobuf import descriptor as _descriptor
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
-from google.protobuf import symbol_database as _symbol_database
-# @@protoc_insertion_point(imports)
-
-_sym_db = _symbol_database.Default()
-
-
-import build_api_pb2 as build__api__pb2
-import common_pb2 as common__pb2
-
-
-DESCRIPTOR = _descriptor.FileDescriptor(
- name='autotest.proto',
- package='chromite.api',
- syntax='proto3',
- serialized_options=None,
- serialized_pb=_b('\n\x0e\x61utotest.proto\x12\x0c\x63hromite.api\x1a\x0f\x62uild_api.proto\x1a\x0c\x63ommon.proto\"[\n\x1b\x43reateHwTestArchivesRequest\x12\"\n\x0c\x62uild_target\x18\x01 \x01(\x0b\x32\x0c.BuildTarget\x12\x18\n\x10output_directory\x18\x02 \x01(\t\"\x1b\n\x0b\x41rchiveFile\x12\x0c\n\x04path\x18\x01 \x01(\t\"H\n\x1c\x43reateHwTestArchivesResponse\x12(\n\x05\x66iles\x18\x01 \x03(\x0b\x32\x19.chromite.api.ArchiveFile2\x97\x01\n\x0e\x41rchiveService\x12m\n\x14\x43reateHwTestArchives\x12).chromite.api.CreateHwTestArchivesRequest\x1a*.chromite.api.CreateHwTestArchivesResponse\x1a\x16\xc2\xed\x1a\x12\n\x10\x61utotest_archiveb\x06proto3')
- ,
- dependencies=[build__api__pb2.DESCRIPTOR,common__pb2.DESCRIPTOR,])
-
-
-
-
-_CREATEHWTESTARCHIVESREQUEST = _descriptor.Descriptor(
- name='CreateHwTestArchivesRequest',
- full_name='chromite.api.CreateHwTestArchivesRequest',
- filename=None,
- file=DESCRIPTOR,
- containing_type=None,
- fields=[
- _descriptor.FieldDescriptor(
- name='build_target', full_name='chromite.api.CreateHwTestArchivesRequest.build_target', index=0,
- number=1, type=11, cpp_type=10, label=1,
- has_default_value=False, default_value=None,
- message_type=None, enum_type=None, containing_type=None,
- is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR),
- _descriptor.FieldDescriptor(
- name='output_directory', full_name='chromite.api.CreateHwTestArchivesRequest.output_directory', index=1,
- number=2, type=9, cpp_type=9, label=1,
- has_default_value=False, default_value=_b("").decode('utf-8'),
- message_type=None, enum_type=None, containing_type=None,
- is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR),
- ],
- extensions=[
- ],
- nested_types=[],
- enum_types=[
- ],
- serialized_options=None,
- is_extendable=False,
- syntax='proto3',
- extension_ranges=[],
- oneofs=[
- ],
- serialized_start=63,
- serialized_end=154,
-)
-
-
-_ARCHIVEFILE = _descriptor.Descriptor(
- name='ArchiveFile',
- full_name='chromite.api.ArchiveFile',
- filename=None,
- file=DESCRIPTOR,
- containing_type=None,
- fields=[
- _descriptor.FieldDescriptor(
- name='path', full_name='chromite.api.ArchiveFile.path', index=0,
- number=1, type=9, cpp_type=9, label=1,
- has_default_value=False, default_value=_b("").decode('utf-8'),
- message_type=None, enum_type=None, containing_type=None,
- is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR),
- ],
- extensions=[
- ],
- nested_types=[],
- enum_types=[
- ],
- serialized_options=None,
- is_extendable=False,
- syntax='proto3',
- extension_ranges=[],
- oneofs=[
- ],
- serialized_start=156,
- serialized_end=183,
-)
-
-
-_CREATEHWTESTARCHIVESRESPONSE = _descriptor.Descriptor(
- name='CreateHwTestArchivesResponse',
- full_name='chromite.api.CreateHwTestArchivesResponse',
- filename=None,
- file=DESCRIPTOR,
- containing_type=None,
- fields=[
- _descriptor.FieldDescriptor(
- name='files', full_name='chromite.api.CreateHwTestArchivesResponse.files', index=0,
- number=1, type=11, cpp_type=10, label=3,
- has_default_value=False, default_value=[],
- message_type=None, enum_type=None, containing_type=None,
- is_extension=False, extension_scope=None,
- serialized_options=None, file=DESCRIPTOR),
- ],
- extensions=[
- ],
- nested_types=[],
- enum_types=[
- ],
- serialized_options=None,
- is_extendable=False,
- syntax='proto3',
- extension_ranges=[],
- oneofs=[
- ],
- serialized_start=185,
- serialized_end=257,
-)
-
-_CREATEHWTESTARCHIVESREQUEST.fields_by_name['build_target'].message_type = common__pb2._BUILDTARGET
-_CREATEHWTESTARCHIVESRESPONSE.fields_by_name['files'].message_type = _ARCHIVEFILE
-DESCRIPTOR.message_types_by_name['CreateHwTestArchivesRequest'] = _CREATEHWTESTARCHIVESREQUEST
-DESCRIPTOR.message_types_by_name['ArchiveFile'] = _ARCHIVEFILE
-DESCRIPTOR.message_types_by_name['CreateHwTestArchivesResponse'] = _CREATEHWTESTARCHIVESRESPONSE
-_sym_db.RegisterFileDescriptor(DESCRIPTOR)
-
-CreateHwTestArchivesRequest = _reflection.GeneratedProtocolMessageType('CreateHwTestArchivesRequest', (_message.Message,), dict(
- DESCRIPTOR = _CREATEHWTESTARCHIVESREQUEST,
- __module__ = 'autotest_pb2'
- # @@protoc_insertion_point(class_scope:chromite.api.CreateHwTestArchivesRequest)
- ))
-_sym_db.RegisterMessage(CreateHwTestArchivesRequest)
-
-ArchiveFile = _reflection.GeneratedProtocolMessageType('ArchiveFile', (_message.Message,), dict(
- DESCRIPTOR = _ARCHIVEFILE,
- __module__ = 'autotest_pb2'
- # @@protoc_insertion_point(class_scope:chromite.api.ArchiveFile)
- ))
-_sym_db.RegisterMessage(ArchiveFile)
-
-CreateHwTestArchivesResponse = _reflection.GeneratedProtocolMessageType('CreateHwTestArchivesResponse', (_message.Message,), dict(
- DESCRIPTOR = _CREATEHWTESTARCHIVESRESPONSE,
- __module__ = 'autotest_pb2'
- # @@protoc_insertion_point(class_scope:chromite.api.CreateHwTestArchivesResponse)
- ))
-_sym_db.RegisterMessage(CreateHwTestArchivesResponse)
-
-
-
-_ARCHIVESERVICE = _descriptor.ServiceDescriptor(
- name='ArchiveService',
- full_name='chromite.api.ArchiveService',
- file=DESCRIPTOR,
- index=0,
- serialized_options=_b('\302\355\032\022\n\020autotest_archive'),
- serialized_start=260,
- serialized_end=411,
- methods=[
- _descriptor.MethodDescriptor(
- name='CreateHwTestArchives',
- full_name='chromite.api.ArchiveService.CreateHwTestArchives',
- index=0,
- containing_service=None,
- input_type=_CREATEHWTESTARCHIVESREQUEST,
- output_type=_CREATEHWTESTARCHIVESRESPONSE,
- serialized_options=None,
- ),
-])
-_sym_db.RegisterServiceDescriptor(_ARCHIVESERVICE)
-
-DESCRIPTOR.services_by_name['ArchiveService'] = _ARCHIVESERVICE
-
-# @@protoc_insertion_point(module_scope)
diff --git a/api/gen/test_archive_pb2.py b/api/gen/test_archive_pb2.py
new file mode 100644
index 0000000..7694718
--- /dev/null
+++ b/api/gen/test_archive_pb2.py
@@ -0,0 +1,183 @@
+# Generated by the protocol buffer compiler. DO NOT EDIT!
+# source: test_archive.proto
+
+import sys
+_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from google.protobuf import reflection as _reflection
+from google.protobuf import symbol_database as _symbol_database
+# @@protoc_insertion_point(imports)
+
+_sym_db = _symbol_database.Default()
+
+
+import build_api_pb2 as build__api__pb2
+import common_pb2 as common__pb2
+
+
+DESCRIPTOR = _descriptor.FileDescriptor(
+ name='test_archive.proto',
+ package='chromite.api',
+ syntax='proto3',
+ serialized_options=None,
+ serialized_pb=_b('\n\x12test_archive.proto\x12\x0c\x63hromite.api\x1a\x0f\x62uild_api.proto\x1a\x0c\x63ommon.proto\"T\n\x14\x43reateArchiveRequest\x12\"\n\x0c\x62uild_target\x18\x01 \x01(\x0b\x32\x0c.BuildTarget\x12\x18\n\x10output_directory\x18\x02 \x01(\t\"\x1b\n\x0b\x41rchiveFile\x12\x0c\n\x04path\x18\x01 \x01(\t\"A\n\x15\x43reateArchiveResponse\x12(\n\x05\x66iles\x18\x01 \x03(\x0b\x32\x19.chromite.api.ArchiveFile2\x89\x01\n\x0e\x41rchiveService\x12_\n\x14\x43reateHwTestArchives\x12\".chromite.api.CreateArchiveRequest\x1a#.chromite.api.CreateArchiveResponse\x1a\x16\xc2\xed\x1a\x12\n\x10\x61utotest_archiveb\x06proto3')
+ ,
+ dependencies=[build__api__pb2.DESCRIPTOR,common__pb2.DESCRIPTOR,])
+
+
+
+
+_CREATEARCHIVEREQUEST = _descriptor.Descriptor(
+ name='CreateArchiveRequest',
+ full_name='chromite.api.CreateArchiveRequest',
+ filename=None,
+ file=DESCRIPTOR,
+ containing_type=None,
+ fields=[
+ _descriptor.FieldDescriptor(
+ name='build_target', full_name='chromite.api.CreateArchiveRequest.build_target', index=0,
+ number=1, type=11, cpp_type=10, label=1,
+ has_default_value=False, default_value=None,
+ message_type=None, enum_type=None, containing_type=None,
+ is_extension=False, extension_scope=None,
+ serialized_options=None, file=DESCRIPTOR),
+ _descriptor.FieldDescriptor(
+ name='output_directory', full_name='chromite.api.CreateArchiveRequest.output_directory', index=1,
+ number=2, type=9, cpp_type=9, label=1,
+ has_default_value=False, default_value=_b("").decode('utf-8'),
+ message_type=None, enum_type=None, containing_type=None,
+ is_extension=False, extension_scope=None,
+ serialized_options=None, file=DESCRIPTOR),
+ ],
+ extensions=[
+ ],
+ nested_types=[],
+ enum_types=[
+ ],
+ serialized_options=None,
+ is_extendable=False,
+ syntax='proto3',
+ extension_ranges=[],
+ oneofs=[
+ ],
+ serialized_start=67,
+ serialized_end=151,
+)
+
+
+_ARCHIVEFILE = _descriptor.Descriptor(
+ name='ArchiveFile',
+ full_name='chromite.api.ArchiveFile',
+ filename=None,
+ file=DESCRIPTOR,
+ containing_type=None,
+ fields=[
+ _descriptor.FieldDescriptor(
+ name='path', full_name='chromite.api.ArchiveFile.path', index=0,
+ number=1, type=9, cpp_type=9, label=1,
+ has_default_value=False, default_value=_b("").decode('utf-8'),
+ message_type=None, enum_type=None, containing_type=None,
+ is_extension=False, extension_scope=None,
+ serialized_options=None, file=DESCRIPTOR),
+ ],
+ extensions=[
+ ],
+ nested_types=[],
+ enum_types=[
+ ],
+ serialized_options=None,
+ is_extendable=False,
+ syntax='proto3',
+ extension_ranges=[],
+ oneofs=[
+ ],
+ serialized_start=153,
+ serialized_end=180,
+)
+
+
+_CREATEARCHIVERESPONSE = _descriptor.Descriptor(
+ name='CreateArchiveResponse',
+ full_name='chromite.api.CreateArchiveResponse',
+ filename=None,
+ file=DESCRIPTOR,
+ containing_type=None,
+ fields=[
+ _descriptor.FieldDescriptor(
+ name='files', full_name='chromite.api.CreateArchiveResponse.files', index=0,
+ number=1, type=11, cpp_type=10, label=3,
+ has_default_value=False, default_value=[],
+ message_type=None, enum_type=None, containing_type=None,
+ is_extension=False, extension_scope=None,
+ serialized_options=None, file=DESCRIPTOR),
+ ],
+ extensions=[
+ ],
+ nested_types=[],
+ enum_types=[
+ ],
+ serialized_options=None,
+ is_extendable=False,
+ syntax='proto3',
+ extension_ranges=[],
+ oneofs=[
+ ],
+ serialized_start=182,
+ serialized_end=247,
+)
+
+_CREATEARCHIVEREQUEST.fields_by_name['build_target'].message_type = common__pb2._BUILDTARGET
+_CREATEARCHIVERESPONSE.fields_by_name['files'].message_type = _ARCHIVEFILE
+DESCRIPTOR.message_types_by_name['CreateArchiveRequest'] = _CREATEARCHIVEREQUEST
+DESCRIPTOR.message_types_by_name['ArchiveFile'] = _ARCHIVEFILE
+DESCRIPTOR.message_types_by_name['CreateArchiveResponse'] = _CREATEARCHIVERESPONSE
+_sym_db.RegisterFileDescriptor(DESCRIPTOR)
+
+CreateArchiveRequest = _reflection.GeneratedProtocolMessageType('CreateArchiveRequest', (_message.Message,), dict(
+ DESCRIPTOR = _CREATEARCHIVEREQUEST,
+ __module__ = 'test_archive_pb2'
+ # @@protoc_insertion_point(class_scope:chromite.api.CreateArchiveRequest)
+ ))
+_sym_db.RegisterMessage(CreateArchiveRequest)
+
+ArchiveFile = _reflection.GeneratedProtocolMessageType('ArchiveFile', (_message.Message,), dict(
+ DESCRIPTOR = _ARCHIVEFILE,
+ __module__ = 'test_archive_pb2'
+ # @@protoc_insertion_point(class_scope:chromite.api.ArchiveFile)
+ ))
+_sym_db.RegisterMessage(ArchiveFile)
+
+CreateArchiveResponse = _reflection.GeneratedProtocolMessageType('CreateArchiveResponse', (_message.Message,), dict(
+ DESCRIPTOR = _CREATEARCHIVERESPONSE,
+ __module__ = 'test_archive_pb2'
+ # @@protoc_insertion_point(class_scope:chromite.api.CreateArchiveResponse)
+ ))
+_sym_db.RegisterMessage(CreateArchiveResponse)
+
+
+
+_ARCHIVESERVICE = _descriptor.ServiceDescriptor(
+ name='ArchiveService',
+ full_name='chromite.api.ArchiveService',
+ file=DESCRIPTOR,
+ index=0,
+ serialized_options=_b('\302\355\032\022\n\020autotest_archive'),
+ serialized_start=250,
+ serialized_end=387,
+ methods=[
+ _descriptor.MethodDescriptor(
+ name='CreateHwTestArchives',
+ full_name='chromite.api.ArchiveService.CreateHwTestArchives',
+ index=0,
+ containing_service=None,
+ input_type=_CREATEARCHIVEREQUEST,
+ output_type=_CREATEARCHIVERESPONSE,
+ serialized_options=None,
+ ),
+])
+_sym_db.RegisterServiceDescriptor(_ARCHIVESERVICE)
+
+DESCRIPTOR.services_by_name['ArchiveService'] = _ARCHIVESERVICE
+
+# @@protoc_insertion_point(module_scope)
diff --git a/api/proto/autotest.proto b/api/proto/test_archive.proto
similarity index 70%
rename from api/proto/autotest.proto
rename to api/proto/test_archive.proto
index 4989bef..81f4a1a 100644
--- a/api/proto/autotest.proto
+++ b/api/proto/test_archive.proto
@@ -5,12 +5,12 @@
import "common.proto";
-// Autotest archive messages and service.
+// Test archive messages and service.
-// Message for creating Hardware Test archives.
+// Message for creating archives.
// Example Json:
// {"build_target":{"name":"board"},"output_directory":"/tmp/archives"}
-message CreateHwTestArchivesRequest {
+message CreateArchiveRequest {
// The board whose tarballs are being created.
BuildTarget build_target = 1;
// The directory where the completed archive(s) should be saved.
@@ -23,8 +23,8 @@
string path = 1;
}
-// Response from creating Hardware Test archives.
-message CreateHwTestArchivesResponse {
+// Response from creating archives.
+message CreateArchiveResponse {
// The created archive files.
repeated ArchiveFile files = 1;
}
@@ -37,6 +37,6 @@
};
// Create the HW Test archive.
- rpc CreateHwTestArchives(CreateHwTestArchivesRequest)
- returns (CreateHwTestArchivesResponse);
+ rpc CreateHwTestArchives(CreateArchiveRequest)
+ returns (CreateArchiveResponse);
}
diff --git a/api/service/autotest_archive.py b/api/service/test_archive.py
similarity index 73%
rename from api/service/autotest_archive.py
rename to api/service/test_archive.py
index b94aa79..cdcc380 100644
--- a/api/service/autotest_archive.py
+++ b/api/service/test_archive.py
@@ -3,7 +3,7 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
-"""Autotest archive creation service.
+"""Test archive creation service.
The CI system requires archives of autotest files for a number of stages.
This service handles the creation of those archives.
@@ -11,16 +11,16 @@
from __future__ import print_function
-from chromite.lib.api import autotest
from chromite.lib import cros_build_lib
+from chromite.lib.api import test_archive
def CreateHwTestArchives(input_proto, output_proto):
"""Create the HW Test archives.
Args:
- input_proto (CreateHwTestArchiveRequest): The input arguments message.
- output_proto (CreateHwTestArchiveResponse): The empty output message.
+ input_proto (CreateArchiveRequest): The input arguments message.
+ output_proto (CreateArchiveResponse): The empty output message.
"""
board = input_proto.build_target.name
output_dir = input_proto.output_directory
@@ -31,8 +31,8 @@
cros_build_lib.Die('An output directory must be specified.')
try:
- files = autotest.CreateHwTestArchives(board, output_dir)
- except autotest.ArchiveBaseDirNotFound as e:
+ files = test_archive.CreateHwTestArchives(board, output_dir)
+ except test_archive.ArchiveBaseDirNotFound as e:
cros_build_lib.Die(e.message)
for current in files.values():
diff --git a/lib/api/autotest.py b/lib/api/test_archive.py
similarity index 96%
rename from lib/api/autotest.py
rename to lib/api/test_archive.py
index a0e7d8e..fe06bda 100644
--- a/lib/api/autotest.py
+++ b/lib/api/test_archive.py
@@ -3,7 +3,7 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
-"""Autotest functionality."""
+"""Test archive functionality."""
from __future__ import print_function
@@ -34,7 +34,7 @@
def CreateHwTestArchives(board, output_directory):
- """Create the Autotest Hardware Test archives.
+ """Create the Hardware Test archives.
Args:
board (str): The name of the board whose artifacts are being created.