summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2018-09-11 18:40:46 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2018-09-11 18:40:46 +0000
commitc5efdf258199ebac5019213ccc062ba41b070d35 (patch)
treeba0e1956528c5fd493b9d8b0474d91872e27d4e2
parent5772ef433b66655fd7a48926e42f490f6d43c7b5 (diff)
parentd3ee37bffb157438d6cf9c41e439337ef9e3fc55 (diff)
downloadtest_serving-c5efdf258199ebac5019213ccc062ba41b070d35.tar.gz
Merge "Update OpenAPI documents' name."
-rw-r--r--gae/build_infov1openapi.json92
-rw-r--r--gae/buildv1openapi.json (renamed from gae/schedule_infov1openapi.json)135
-rw-r--r--gae/host_infov1openapi.json100
-rw-r--r--gae/hostv1openapi.json243
-rw-r--r--gae/jobv1openapi.json718
-rw-r--r--gae/lab_infov1openapi.json118
-rw-r--r--gae/labv1openapi.json408
-rw-r--r--gae/schedulev1openapi.json545
8 files changed, 2005 insertions, 354 deletions
diff --git a/gae/build_infov1openapi.json b/gae/build_infov1openapi.json
deleted file mode 100644
index 2cda81e..0000000
--- a/gae/build_infov1openapi.json
+++ /dev/null
@@ -1,92 +0,0 @@
-{
- "basePath": "/_ah/api",
- "consumes": [
- "application/json"
- ],
- "definitions": {
- "WebappSrcProtoModelBuildInfoMessage": {
- "properties": {
- "artifact_type": {
- "type": "string"
- },
- "artifacts": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "build_id": {
- "type": "string"
- },
- "build_target": {
- "type": "string"
- },
- "build_type": {
- "type": "string"
- },
- "manifest_branch": {
- "type": "string"
- }
- },
- "type": "object"
- },
- "WebappSrcProtoModelDefaultResponse": {
- "properties": {
- "return_code": {
- "enum": [
- "SUCCESS",
- "FAIL"
- ],
- "type": "string"
- }
- },
- "type": "object"
- }
- },
- "host": "vtslab-schedule-prod.appspot.com",
- "info": {
- "description": "Endpoint API for build_info.",
- "title": "build_info",
- "version": "v1"
- },
- "paths": {
- "/build_info/v1/set": {
- "post": {
- "operationId": "BuildInfoApi_set",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "schema": {
- "$ref": "#/definitions/WebappSrcProtoModelBuildInfoMessage"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "A successful response",
- "schema": {
- "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
- }
- }
- }
- }
- }
- },
- "produces": [
- "application/json"
- ],
- "schemes": [
- "https"
- ],
- "securityDefinitions": {
- "google_id_token": {
- "authorizationUrl": "",
- "flow": "implicit",
- "type": "oauth2",
- "x-google-issuer": "https://accounts.google.com",
- "x-google-jwks_uri": "https://www.googleapis.com/oauth2/v3/certs"
- }
- },
- "swagger": "2.0"
-} \ No newline at end of file
diff --git a/gae/schedule_infov1openapi.json b/gae/buildv1openapi.json
index d03cc4c..a59a137 100644
--- a/gae/schedule_infov1openapi.json
+++ b/gae/buildv1openapi.json
@@ -4,72 +4,96 @@
"application/json"
],
"definitions": {
- "WebappSrcProtoModelDefaultResponse": {
+ "WebappSrcProtoModelBuildInfoMessage": {
"properties": {
- "return_code": {
- "enum": [
- "SUCCESS",
- "FAIL"
- ],
- "type": "string"
- }
- },
- "type": "object"
- },
- "WebappSrcProtoModelScheduleInfoMessage": {
- "properties": {
- "build_target": {
+ "artifact_type": {
"type": "string"
},
- "device": {
+ "artifacts": {
"items": {
"type": "string"
},
"type": "array"
},
- "gsi_branch": {
+ "build_id": {
"type": "string"
},
- "gsi_build_target": {
+ "build_target": {
"type": "string"
},
- "gsi_pab_account_id": {
+ "build_type": {
"type": "string"
},
"manifest_branch": {
"type": "string"
},
- "param": {
+ "signed": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelBuildResponseMessage": {
+ "properties": {
+ "builds": {
+ "description": "A message for representing an individual build entry.",
"items": {
- "type": "string"
+ "$ref": "#/definitions/WebappSrcProtoModelBuildInfoMessage"
},
"type": "array"
},
- "period": {
- "format": "int64",
- "type": "string"
- },
- "priority": {
+ "has_next": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelCountRequestMessage": {
+ "properties": {
+ "filter": {
"type": "string"
- },
- "shards": {
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelCountResponseMessage": {
+ "properties": {
+ "count": {
"format": "int64",
"type": "string"
- },
- "retry_count": {
- "format": "int64",
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDefaultResponse": {
+ "properties": {
+ "return_code": {
+ "enum": [
+ "SUCCESS",
+ "FAIL"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelGetRequestMessage": {
+ "properties": {
+ "direction": {
"type": "string"
},
- "test_name": {
+ "filter": {
"type": "string"
},
- "test_branch": {
+ "offset": {
+ "format": "int64",
"type": "string"
},
- "test_build_target": {
+ "size": {
+ "format": "int64",
"type": "string"
},
- "test_pab_account_id": {
+ "sort": {
"type": "string"
}
},
@@ -78,20 +102,20 @@
},
"host": "vtslab-schedule-prod.appspot.com",
"info": {
- "description": "Endpoint API for schedule_info.",
- "title": "schedule_info",
+ "description": "Endpoint API for build_info.",
+ "title": "build",
"version": "v1"
},
"paths": {
- "/schedule_info/v1/clear": {
+ "/build/v1/count": {
"post": {
- "operationId": "ScheduleInfoApi_clear",
+ "operationId": "BuildInfoApi_count",
"parameters": [
{
"in": "body",
"name": "body",
"schema": {
- "$ref": "#/definitions/WebappSrcProtoModelScheduleInfoMessage"
+ "$ref": "#/definitions/WebappSrcProtoModelCountRequestMessage"
}
}
],
@@ -99,21 +123,43 @@
"200": {
"description": "A successful response",
"schema": {
- "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
+ "$ref": "#/definitions/WebappSrcProtoModelCountResponseMessage"
+ }
+ }
+ }
+ }
+ },
+ "/build/v1/get": {
+ "post": {
+ "operationId": "BuildInfoApi_get",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelGetRequestMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelBuildResponseMessage"
}
}
}
}
},
- "/schedule_info/v1/set": {
+ "/build/v1/set": {
"post": {
- "operationId": "ScheduleInfoApi_set",
+ "operationId": "BuildInfoApi_set",
"parameters": [
{
"in": "body",
"name": "body",
"schema": {
- "$ref": "#/definitions/WebappSrcProtoModelScheduleInfoMessage"
+ "$ref": "#/definitions/WebappSrcProtoModelBuildInfoMessage"
}
}
],
@@ -143,5 +189,6 @@
"x-google-jwks_uri": "https://www.googleapis.com/oauth2/v3/certs"
}
},
- "swagger": "2.0"
+ "swagger": "2.0",
+ "x-google-api-name": "build"
} \ No newline at end of file
diff --git a/gae/host_infov1openapi.json b/gae/host_infov1openapi.json
deleted file mode 100644
index cadfb6e..0000000
--- a/gae/host_infov1openapi.json
+++ /dev/null
@@ -1,100 +0,0 @@
-{
- "basePath": "/_ah/api",
- "consumes": [
- "application/json"
- ],
- "definitions": {
- "WebappSrcProtoModelDefaultResponse": {
- "properties": {
- "return_code": {
- "enum": [
- "SUCCESS",
- "FAIL"
- ],
- "type": "string"
- }
- },
- "type": "object"
- },
- "WebappSrcProtoModelDeviceInfoMessage": {
- "properties": {
- "product": {
- "type": "string"
- },
- "scheduling_status": {
- "format": "int64",
- "type": "string"
- },
- "serial": {
- "type": "string"
- },
- "status": {
- "format": "int64",
- "type": "string"
- }
- },
- "type": "object"
- },
- "WebappSrcProtoModelHostInfoMessage": {
- "properties": {
- "devices": {
- "description": "A message for representing an individual host's device entry.",
- "items": {
- "$ref": "#/definitions/WebappSrcProtoModelDeviceInfoMessage"
- },
- "type": "array"
- },
- "hostname": {
- "type": "string"
- }
- },
- "type": "object"
- }
- },
- "host": "vtslab-schedule-prod.appspot.com",
- "info": {
- "description": "Endpoint API for host_info.",
- "title": "host_info",
- "version": "v1"
- },
- "paths": {
- "/host_info/v1/set": {
- "post": {
- "operationId": "HostInfoApi_set",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "schema": {
- "$ref": "#/definitions/WebappSrcProtoModelHostInfoMessage"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "A successful response",
- "schema": {
- "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
- }
- }
- }
- }
- }
- },
- "produces": [
- "application/json"
- ],
- "schemes": [
- "https"
- ],
- "securityDefinitions": {
- "google_id_token": {
- "authorizationUrl": "",
- "flow": "implicit",
- "type": "oauth2",
- "x-google-issuer": "https://accounts.google.com",
- "x-google-jwks_uri": "https://www.googleapis.com/oauth2/v3/certs"
- }
- },
- "swagger": "2.0"
-} \ No newline at end of file
diff --git a/gae/hostv1openapi.json b/gae/hostv1openapi.json
new file mode 100644
index 0000000..35116b2
--- /dev/null
+++ b/gae/hostv1openapi.json
@@ -0,0 +1,243 @@
+{
+ "basePath": "/_ah/api",
+ "consumes": [
+ "application/json"
+ ],
+ "definitions": {
+ "WebappSrcProtoModelBuildInfoMessage": {
+ "properties": {
+ "artifact_type": {
+ "type": "string"
+ },
+ "artifacts": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "build_id": {
+ "type": "string"
+ },
+ "build_target": {
+ "type": "string"
+ },
+ "build_type": {
+ "type": "string"
+ },
+ "manifest_branch": {
+ "type": "string"
+ },
+ "signed": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelBuildResponseMessage": {
+ "properties": {
+ "builds": {
+ "description": "A message for representing an individual build entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/WebappSrcProtoModelBuildInfoMessage"
+ },
+ "type": "array"
+ },
+ "has_next": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelCountRequestMessage": {
+ "properties": {
+ "filter": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelCountResponseMessage": {
+ "properties": {
+ "count": {
+ "format": "int64",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDefaultResponse": {
+ "properties": {
+ "return_code": {
+ "enum": [
+ "SUCCESS",
+ "FAIL"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDeviceInfoMessage": {
+ "properties": {
+ "product": {
+ "type": "string"
+ },
+ "scheduling_status": {
+ "format": "int64",
+ "type": "string"
+ },
+ "serial": {
+ "type": "string"
+ },
+ "status": {
+ "format": "int64",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDeviceResponseMessage": {
+ "properties": {
+ "devices": {
+ "description": "A message for representing an individual host's device entry.",
+ "items": {
+ "$ref": "#/definitions/WebappSrcProtoModelDeviceInfoMessage"
+ },
+ "type": "array"
+ },
+ "has_next": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelGetRequestMessage": {
+ "properties": {
+ "direction": {
+ "type": "string"
+ },
+ "filter": {
+ "type": "string"
+ },
+ "offset": {
+ "format": "int64",
+ "type": "string"
+ },
+ "size": {
+ "format": "int64",
+ "type": "string"
+ },
+ "sort": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelHostInfoMessage": {
+ "properties": {
+ "devices": {
+ "description": "A message for representing an individual host's device entry.",
+ "items": {
+ "$ref": "#/definitions/WebappSrcProtoModelDeviceInfoMessage"
+ },
+ "type": "array"
+ },
+ "hostname": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "host": "vtslab-schedule-prod.appspot.com",
+ "info": {
+ "description": "Endpoint API for host_info.",
+ "title": "host",
+ "version": "v1"
+ },
+ "paths": {
+ "/host/v1/count": {
+ "post": {
+ "operationId": "HostInfoApi_count",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelCountRequestMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelCountResponseMessage"
+ }
+ }
+ }
+ }
+ },
+ "/host/v1/get": {
+ "post": {
+ "operationId": "HostInfoApi_get",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelGetRequestMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelDeviceResponseMessage"
+ }
+ }
+ }
+ }
+ },
+ "/host/v1/set": {
+ "post": {
+ "operationId": "HostInfoApi_set",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelHostInfoMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "schemes": [
+ "https"
+ ],
+ "securityDefinitions": {
+ "google_id_token": {
+ "authorizationUrl": "",
+ "flow": "implicit",
+ "type": "oauth2",
+ "x-google-issuer": "https://accounts.google.com",
+ "x-google-jwks_uri": "https://www.googleapis.com/oauth2/v3/certs"
+ }
+ },
+ "swagger": "2.0",
+ "x-google-api-name": "host"
+} \ No newline at end of file
diff --git a/gae/jobv1openapi.json b/gae/jobv1openapi.json
new file mode 100644
index 0000000..e2badde
--- /dev/null
+++ b/gae/jobv1openapi.json
@@ -0,0 +1,718 @@
+{
+ "basePath": "/_ah/api",
+ "consumes": [
+ "application/json"
+ ],
+ "definitions": {
+ "WebappSrcProtoModelBuildInfoMessage": {
+ "properties": {
+ "artifact_type": {
+ "type": "string"
+ },
+ "artifacts": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "build_id": {
+ "type": "string"
+ },
+ "build_target": {
+ "type": "string"
+ },
+ "build_type": {
+ "type": "string"
+ },
+ "manifest_branch": {
+ "type": "string"
+ },
+ "signed": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelBuildResponseMessage": {
+ "properties": {
+ "builds": {
+ "description": "A message for representing an individual build entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/#/definitions/#/definitions/#/definitions/WebappSrcProtoModelBuildInfoMessage"
+ },
+ "type": "array"
+ },
+ "has_next": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelCountRequestMessage": {
+ "properties": {
+ "filter": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelCountResponseMessage": {
+ "properties": {
+ "count": {
+ "format": "int64",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDefaultResponse": {
+ "properties": {
+ "return_code": {
+ "enum": [
+ "SUCCESS",
+ "FAIL"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDeviceInfoMessage": {
+ "properties": {
+ "product": {
+ "type": "string"
+ },
+ "scheduling_status": {
+ "format": "int64",
+ "type": "string"
+ },
+ "serial": {
+ "type": "string"
+ },
+ "status": {
+ "format": "int64",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDeviceResponseMessage": {
+ "properties": {
+ "devices": {
+ "description": "A message for representing an individual host's device entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/#/definitions/#/definitions/WebappSrcProtoModelDeviceInfoMessage"
+ },
+ "type": "array"
+ },
+ "has_next": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelGetRequestMessage": {
+ "properties": {
+ "direction": {
+ "type": "string"
+ },
+ "filter": {
+ "type": "string"
+ },
+ "offset": {
+ "format": "int64",
+ "type": "string"
+ },
+ "size": {
+ "format": "int64",
+ "type": "string"
+ },
+ "sort": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelHostInfoMessage": {
+ "properties": {
+ "devices": {
+ "description": "A message for representing an individual host's device entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/#/definitions/#/definitions/WebappSrcProtoModelDeviceInfoMessage"
+ },
+ "type": "array"
+ },
+ "hostname": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelJobLeaseResponse": {
+ "properties": {
+ "jobs": {
+ "description": "A message for representing an individual job entry.",
+ "items": {
+ "$ref": "#/definitions/WebappSrcProtoModelJobMessage"
+ },
+ "type": "array"
+ },
+ "return_code": {
+ "enum": [
+ "SUCCESS",
+ "FAIL"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelJobMessage": {
+ "properties": {
+ "build_id": {
+ "type": "string"
+ },
+ "build_storage_type": {
+ "format": "int64",
+ "type": "string"
+ },
+ "build_target": {
+ "type": "string"
+ },
+ "device": {
+ "type": "string"
+ },
+ "gsi_branch": {
+ "type": "string"
+ },
+ "gsi_build_id": {
+ "type": "string"
+ },
+ "gsi_build_target": {
+ "type": "string"
+ },
+ "gsi_pab_account_id": {
+ "type": "string"
+ },
+ "gsi_storage_type": {
+ "format": "int64",
+ "type": "string"
+ },
+ "gsi_vendor_version": {
+ "type": "string"
+ },
+ "has_bootloader_img": {
+ "type": "boolean"
+ },
+ "has_radio_img": {
+ "type": "boolean"
+ },
+ "hostname": {
+ "type": "string"
+ },
+ "image_package_repo_base": {
+ "type": "string"
+ },
+ "infra_log_url": {
+ "type": "string"
+ },
+ "manifest_branch": {
+ "type": "string"
+ },
+ "pab_account_id": {
+ "type": "string"
+ },
+ "param": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "period": {
+ "format": "int64",
+ "type": "string"
+ },
+ "priority": {
+ "type": "string"
+ },
+ "report_bucket": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "report_persistent_url": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "report_reference_url": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "report_spreadsheet_id": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "require_signed_device_build": {
+ "type": "boolean"
+ },
+ "retry_count": {
+ "format": "int64",
+ "type": "string"
+ },
+ "serial": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "shards": {
+ "format": "int64",
+ "type": "string"
+ },
+ "status": {
+ "format": "int64",
+ "type": "string"
+ },
+ "test_branch": {
+ "type": "string"
+ },
+ "test_build_id": {
+ "type": "string"
+ },
+ "test_build_target": {
+ "type": "string"
+ },
+ "test_name": {
+ "type": "string"
+ },
+ "test_pab_account_id": {
+ "type": "string"
+ },
+ "test_storage_type": {
+ "format": "int64",
+ "type": "string"
+ },
+ "test_type": {
+ "format": "int64",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelJobResponseMessage": {
+ "properties": {
+ "has_next": {
+ "type": "boolean"
+ },
+ "jobs": {
+ "description": "A message for representing an individual job entry.",
+ "items": {
+ "$ref": "#/definitions/WebappSrcProtoModelJobMessage"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabDeviceInfoMessage": {
+ "properties": {
+ "device_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "product": {
+ "type": "string"
+ },
+ "serial": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabHostInfoMessage": {
+ "properties": {
+ "device": {
+ "description": "A message for representing an individual lab host's device entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/#/definitions/WebappSrcProtoModelLabDeviceInfoMessage"
+ },
+ "type": "array"
+ },
+ "host_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "hostname": {
+ "type": "string"
+ },
+ "ip": {
+ "type": "string"
+ },
+ "script": {
+ "type": "string"
+ },
+ "vtslab_version": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabInfoMessage": {
+ "properties": {
+ "admin": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "host": {
+ "description": "A message for representing an individual lab's host entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/#/definitions/WebappSrcProtoModelLabHostInfoMessage"
+ },
+ "type": "array"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabMessage": {
+ "properties": {
+ "admin": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "devices": {
+ "type": "string"
+ },
+ "host_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "hostname": {
+ "type": "string"
+ },
+ "ip": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner": {
+ "type": "string"
+ },
+ "vtslab_version": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabResponseMessage": {
+ "properties": {
+ "has_next": {
+ "type": "boolean"
+ },
+ "labs": {
+ "description": "A model for representing a LabModel entity.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/#/definitions/WebappSrcProtoModelLabMessage"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelScheduleInfoMessage": {
+ "properties": {
+ "build_storage_type": {
+ "format": "int64",
+ "type": "string"
+ },
+ "build_target": {
+ "type": "string"
+ },
+ "device": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "device_pab_account_id": {
+ "type": "string"
+ },
+ "gsi_branch": {
+ "type": "string"
+ },
+ "gsi_build_target": {
+ "type": "string"
+ },
+ "gsi_pab_account_id": {
+ "type": "string"
+ },
+ "gsi_storage_type": {
+ "format": "int64",
+ "type": "string"
+ },
+ "gsi_vendor_version": {
+ "type": "string"
+ },
+ "has_bootloader_img": {
+ "type": "boolean"
+ },
+ "has_radio_img": {
+ "type": "boolean"
+ },
+ "image_package_repo_base": {
+ "type": "string"
+ },
+ "manifest_branch": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "param": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "period": {
+ "format": "int64",
+ "type": "string"
+ },
+ "priority": {
+ "type": "string"
+ },
+ "report_bucket": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "report_persistent_url": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "report_reference_url": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "report_spreadsheet_id": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "require_signed_device_build": {
+ "type": "boolean"
+ },
+ "required_device_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "required_host_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "retry_count": {
+ "format": "int64",
+ "type": "string"
+ },
+ "schedule": {
+ "type": "string"
+ },
+ "schedule_type": {
+ "type": "string"
+ },
+ "shards": {
+ "format": "int64",
+ "type": "string"
+ },
+ "test_branch": {
+ "type": "string"
+ },
+ "test_build_target": {
+ "type": "string"
+ },
+ "test_name": {
+ "type": "string"
+ },
+ "test_pab_account_id": {
+ "type": "string"
+ },
+ "test_storage_type": {
+ "format": "int64",
+ "type": "string"
+ },
+ "timestamp": {
+ "format": "date-time",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelScheduleResponseMessage": {
+ "properties": {
+ "has_next": {
+ "type": "boolean"
+ },
+ "schedules": {
+ "description": "A message for representing an individual schedule entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/WebappSrcProtoModelScheduleInfoMessage"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "host": "vtslab-schedule-prod.appspot.com",
+ "info": {
+ "description": "Endpoint API for job_queue.",
+ "title": "job",
+ "version": "v1"
+ },
+ "paths": {
+ "/job/v1/count": {
+ "post": {
+ "operationId": "JobQueueApi_count",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelCountRequestMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelCountResponseMessage"
+ }
+ }
+ }
+ }
+ },
+ "/job/v1/get": {
+ "post": {
+ "operationId": "JobQueueApi_get",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelGetRequestMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelJobResponseMessage"
+ }
+ }
+ }
+ }
+ },
+ "/job/v1/heartbeat": {
+ "post": {
+ "operationId": "JobQueueApi_heartbeat",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelJobMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelJobLeaseResponse"
+ }
+ }
+ }
+ }
+ },
+ "/job/v1/lease": {
+ "post": {
+ "operationId": "JobQueueApi_lease",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelJobMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelJobLeaseResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "schemes": [
+ "https"
+ ],
+ "securityDefinitions": {
+ "google_id_token": {
+ "authorizationUrl": "",
+ "flow": "implicit",
+ "type": "oauth2",
+ "x-google-issuer": "https://accounts.google.com",
+ "x-google-jwks_uri": "https://www.googleapis.com/oauth2/v3/certs"
+ }
+ },
+ "swagger": "2.0",
+ "x-google-api-name": "job"
+} \ No newline at end of file
diff --git a/gae/lab_infov1openapi.json b/gae/lab_infov1openapi.json
deleted file mode 100644
index 18b6b9c..0000000
--- a/gae/lab_infov1openapi.json
+++ /dev/null
@@ -1,118 +0,0 @@
-{
- "basePath": "/_ah/api",
- "consumes": [
- "application/json"
- ],
- "definitions": {
- "WebappSrcProtoModelDefaultResponse": {
- "properties": {
- "return_code": {
- "enum": [
- "SUCCESS",
- "FAIL"
- ],
- "type": "string"
- }
- },
- "type": "object"
- },
- "WebappSrcProtoModelLabHostInfoMessage": {
- "properties": {
- "hostname": {
- "type": "string"
- },
- "ip": {
- "type": "string"
- },
- "script": {
- "type": "string"
- }
- },
- "type": "object"
- },
- "WebappSrcProtoModelLabInfoMessage": {
- "properties": {
- "host": {
- "items": {
- "$ref": "#/definitions/WebappSrcProtoModelLabHostInfoMessage"
- },
- "type": "array"
- },
- "name": {
- "type": "string"
- },
- "owner": {
- "type": "string"
- }
- },
- "type": "object"
- }
- },
- "host": "vtslab-schedule-prod.appspot.com",
- "info": {
- "title": "lab_info",
- "version": "v1"
- },
- "paths": {
- "/lab_info/v1/clear": {
- "post": {
- "operationId": "LabInfoApi_clear",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "schema": {
- "$ref": "#/definitions/WebappSrcProtoModelLabInfoMessage"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "A successful response",
- "schema": {
- "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
- }
- }
- }
- }
- },
- "/lab_info/v1/set": {
- "post": {
- "operationId": "LabInfoApi_set",
- "parameters": [
- {
- "in": "body",
- "name": "body",
- "schema": {
- "$ref": "#/definitions/WebappSrcProtoModelLabInfoMessage"
- }
- }
- ],
- "responses": {
- "200": {
- "description": "A successful response",
- "schema": {
- "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
- }
- }
- }
- }
- }
- },
- "produces": [
- "application/json"
- ],
- "schemes": [
- "https"
- ],
- "securityDefinitions": {
- "google_id_token": {
- "authorizationUrl": "",
- "flow": "implicit",
- "type": "oauth2",
- "x-google-issuer": "https://accounts.google.com",
- "x-google-jwks_uri": "https://www.googleapis.com/oauth2/v3/certs"
- }
- },
- "swagger": "2.0"
-} \ No newline at end of file
diff --git a/gae/labv1openapi.json b/gae/labv1openapi.json
new file mode 100644
index 0000000..37f31d2
--- /dev/null
+++ b/gae/labv1openapi.json
@@ -0,0 +1,408 @@
+{
+ "basePath": "/_ah/api",
+ "consumes": [
+ "application/json"
+ ],
+ "definitions": {
+ "WebappSrcProtoModelBuildInfoMessage": {
+ "properties": {
+ "artifact_type": {
+ "type": "string"
+ },
+ "artifacts": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "build_id": {
+ "type": "string"
+ },
+ "build_target": {
+ "type": "string"
+ },
+ "build_type": {
+ "type": "string"
+ },
+ "manifest_branch": {
+ "type": "string"
+ },
+ "signed": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelBuildResponseMessage": {
+ "properties": {
+ "builds": {
+ "description": "A message for representing an individual build entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/#/definitions/WebappSrcProtoModelBuildInfoMessage"
+ },
+ "type": "array"
+ },
+ "has_next": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelCountRequestMessage": {
+ "properties": {
+ "filter": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelCountResponseMessage": {
+ "properties": {
+ "count": {
+ "format": "int64",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDefaultResponse": {
+ "properties": {
+ "return_code": {
+ "enum": [
+ "SUCCESS",
+ "FAIL"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDeviceInfoMessage": {
+ "properties": {
+ "product": {
+ "type": "string"
+ },
+ "scheduling_status": {
+ "format": "int64",
+ "type": "string"
+ },
+ "serial": {
+ "type": "string"
+ },
+ "status": {
+ "format": "int64",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDeviceResponseMessage": {
+ "properties": {
+ "devices": {
+ "description": "A message for representing an individual host's device entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/WebappSrcProtoModelDeviceInfoMessage"
+ },
+ "type": "array"
+ },
+ "has_next": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelGetRequestMessage": {
+ "properties": {
+ "direction": {
+ "type": "string"
+ },
+ "filter": {
+ "type": "string"
+ },
+ "offset": {
+ "format": "int64",
+ "type": "string"
+ },
+ "size": {
+ "format": "int64",
+ "type": "string"
+ },
+ "sort": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelHostInfoMessage": {
+ "properties": {
+ "devices": {
+ "description": "A message for representing an individual host's device entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/WebappSrcProtoModelDeviceInfoMessage"
+ },
+ "type": "array"
+ },
+ "hostname": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabDeviceInfoMessage": {
+ "properties": {
+ "device_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "product": {
+ "type": "string"
+ },
+ "serial": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabHostInfoMessage": {
+ "properties": {
+ "device": {
+ "description": "A message for representing an individual lab host's device entry.",
+ "items": {
+ "$ref": "#/definitions/WebappSrcProtoModelLabDeviceInfoMessage"
+ },
+ "type": "array"
+ },
+ "host_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "hostname": {
+ "type": "string"
+ },
+ "ip": {
+ "type": "string"
+ },
+ "script": {
+ "type": "string"
+ },
+ "vtslab_version": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabInfoMessage": {
+ "properties": {
+ "admin": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "host": {
+ "description": "A message for representing an individual lab's host entry.",
+ "items": {
+ "$ref": "#/definitions/WebappSrcProtoModelLabHostInfoMessage"
+ },
+ "type": "array"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabMessage": {
+ "properties": {
+ "admin": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "devices": {
+ "type": "string"
+ },
+ "host_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "hostname": {
+ "type": "string"
+ },
+ "ip": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner": {
+ "type": "string"
+ },
+ "vtslab_version": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabResponseMessage": {
+ "properties": {
+ "has_next": {
+ "type": "boolean"
+ },
+ "labs": {
+ "description": "A model for representing a LabModel entity.",
+ "items": {
+ "$ref": "#/definitions/WebappSrcProtoModelLabMessage"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "host": "vtslab-schedule-prod.appspot.com",
+ "info": {
+ "description": "Endpoint API for lab_info.",
+ "title": "lab",
+ "version": "v1"
+ },
+ "paths": {
+ "/lab/v1/clear": {
+ "post": {
+ "operationId": "LabInfoApi_clear",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelLabInfoMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
+ }
+ }
+ }
+ }
+ },
+ "/lab/v1/count": {
+ "post": {
+ "operationId": "LabInfoApi_count",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelCountRequestMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelCountResponseMessage"
+ }
+ }
+ }
+ }
+ },
+ "/lab/v1/get": {
+ "post": {
+ "operationId": "LabInfoApi_get",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelGetRequestMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelLabResponseMessage"
+ }
+ }
+ }
+ }
+ },
+ "/lab/v1/set": {
+ "post": {
+ "operationId": "LabInfoApi_set",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelLabInfoMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
+ }
+ }
+ }
+ }
+ },
+ "/lab/v1/set_version": {
+ "post": {
+ "operationId": "LabInfoApi_setVersion",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelLabHostInfoMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "schemes": [
+ "https"
+ ],
+ "securityDefinitions": {
+ "google_id_token": {
+ "authorizationUrl": "",
+ "flow": "implicit",
+ "type": "oauth2",
+ "x-google-issuer": "https://accounts.google.com",
+ "x-google-jwks_uri": "https://www.googleapis.com/oauth2/v3/certs"
+ }
+ },
+ "swagger": "2.0",
+ "x-google-api-name": "lab"
+} \ No newline at end of file
diff --git a/gae/schedulev1openapi.json b/gae/schedulev1openapi.json
new file mode 100644
index 0000000..b1db4e9
--- /dev/null
+++ b/gae/schedulev1openapi.json
@@ -0,0 +1,545 @@
+{
+ "basePath": "/_ah/api",
+ "consumes": [
+ "application/json"
+ ],
+ "definitions": {
+ "WebappSrcProtoModelBuildInfoMessage": {
+ "properties": {
+ "artifact_type": {
+ "type": "string"
+ },
+ "artifacts": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "build_id": {
+ "type": "string"
+ },
+ "build_target": {
+ "type": "string"
+ },
+ "build_type": {
+ "type": "string"
+ },
+ "manifest_branch": {
+ "type": "string"
+ },
+ "signed": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelBuildResponseMessage": {
+ "properties": {
+ "builds": {
+ "description": "A message for representing an individual build entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/#/definitions/#/definitions/WebappSrcProtoModelBuildInfoMessage"
+ },
+ "type": "array"
+ },
+ "has_next": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelCountRequestMessage": {
+ "properties": {
+ "filter": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelCountResponseMessage": {
+ "properties": {
+ "count": {
+ "format": "int64",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDefaultResponse": {
+ "properties": {
+ "return_code": {
+ "enum": [
+ "SUCCESS",
+ "FAIL"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDeviceInfoMessage": {
+ "properties": {
+ "product": {
+ "type": "string"
+ },
+ "scheduling_status": {
+ "format": "int64",
+ "type": "string"
+ },
+ "serial": {
+ "type": "string"
+ },
+ "status": {
+ "format": "int64",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelDeviceResponseMessage": {
+ "properties": {
+ "devices": {
+ "description": "A message for representing an individual host's device entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/#/definitions/WebappSrcProtoModelDeviceInfoMessage"
+ },
+ "type": "array"
+ },
+ "has_next": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelGetRequestMessage": {
+ "properties": {
+ "direction": {
+ "type": "string"
+ },
+ "filter": {
+ "type": "string"
+ },
+ "offset": {
+ "format": "int64",
+ "type": "string"
+ },
+ "size": {
+ "format": "int64",
+ "type": "string"
+ },
+ "sort": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelHostInfoMessage": {
+ "properties": {
+ "devices": {
+ "description": "A message for representing an individual host's device entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/#/definitions/WebappSrcProtoModelDeviceInfoMessage"
+ },
+ "type": "array"
+ },
+ "hostname": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabDeviceInfoMessage": {
+ "properties": {
+ "device_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "product": {
+ "type": "string"
+ },
+ "serial": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabHostInfoMessage": {
+ "properties": {
+ "device": {
+ "description": "A message for representing an individual lab host's device entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/WebappSrcProtoModelLabDeviceInfoMessage"
+ },
+ "type": "array"
+ },
+ "host_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "hostname": {
+ "type": "string"
+ },
+ "ip": {
+ "type": "string"
+ },
+ "script": {
+ "type": "string"
+ },
+ "vtslab_version": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabInfoMessage": {
+ "properties": {
+ "admin": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "host": {
+ "description": "A message for representing an individual lab's host entry.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/WebappSrcProtoModelLabHostInfoMessage"
+ },
+ "type": "array"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabMessage": {
+ "properties": {
+ "admin": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "devices": {
+ "type": "string"
+ },
+ "host_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "hostname": {
+ "type": "string"
+ },
+ "ip": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner": {
+ "type": "string"
+ },
+ "vtslab_version": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelLabResponseMessage": {
+ "properties": {
+ "has_next": {
+ "type": "boolean"
+ },
+ "labs": {
+ "description": "A model for representing a LabModel entity.",
+ "items": {
+ "$ref": "#/definitions/#/definitions/WebappSrcProtoModelLabMessage"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelScheduleInfoMessage": {
+ "properties": {
+ "build_storage_type": {
+ "format": "int64",
+ "type": "string"
+ },
+ "build_target": {
+ "type": "string"
+ },
+ "device": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "device_pab_account_id": {
+ "type": "string"
+ },
+ "gsi_branch": {
+ "type": "string"
+ },
+ "gsi_build_target": {
+ "type": "string"
+ },
+ "gsi_pab_account_id": {
+ "type": "string"
+ },
+ "gsi_storage_type": {
+ "format": "int64",
+ "type": "string"
+ },
+ "gsi_vendor_version": {
+ "type": "string"
+ },
+ "has_bootloader_img": {
+ "type": "boolean"
+ },
+ "has_radio_img": {
+ "type": "boolean"
+ },
+ "image_package_repo_base": {
+ "type": "string"
+ },
+ "manifest_branch": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "param": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "period": {
+ "format": "int64",
+ "type": "string"
+ },
+ "priority": {
+ "type": "string"
+ },
+ "report_bucket": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "report_persistent_url": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "report_reference_url": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "report_spreadsheet_id": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "require_signed_device_build": {
+ "type": "boolean"
+ },
+ "required_device_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "required_host_equipment": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "retry_count": {
+ "format": "int64",
+ "type": "string"
+ },
+ "schedule": {
+ "type": "string"
+ },
+ "schedule_type": {
+ "type": "string"
+ },
+ "shards": {
+ "format": "int64",
+ "type": "string"
+ },
+ "test_branch": {
+ "type": "string"
+ },
+ "test_build_target": {
+ "type": "string"
+ },
+ "test_name": {
+ "type": "string"
+ },
+ "test_pab_account_id": {
+ "type": "string"
+ },
+ "test_storage_type": {
+ "format": "int64",
+ "type": "string"
+ },
+ "timestamp": {
+ "format": "date-time",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WebappSrcProtoModelScheduleResponseMessage": {
+ "properties": {
+ "has_next": {
+ "type": "boolean"
+ },
+ "schedules": {
+ "description": "A message for representing an individual schedule entry.",
+ "items": {
+ "$ref": "#/definitions/WebappSrcProtoModelScheduleInfoMessage"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "host": "vtslab-schedule-prod.appspot.com",
+ "info": {
+ "description": "Endpoint API for schedule_info.",
+ "title": "schedule",
+ "version": "v1"
+ },
+ "paths": {
+ "/schedule/v1/clear": {
+ "post": {
+ "operationId": "ScheduleInfoApi_clear",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelScheduleInfoMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
+ }
+ }
+ }
+ }
+ },
+ "/schedule/v1/count": {
+ "post": {
+ "operationId": "ScheduleInfoApi_count",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelCountRequestMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelCountResponseMessage"
+ }
+ }
+ }
+ }
+ },
+ "/schedule/v1/get": {
+ "post": {
+ "operationId": "ScheduleInfoApi_get",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelGetRequestMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelScheduleResponseMessage"
+ }
+ }
+ }
+ }
+ },
+ "/schedule/v1/set": {
+ "post": {
+ "operationId": "ScheduleInfoApi_set",
+ "parameters": [
+ {
+ "in": "body",
+ "name": "body",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelScheduleInfoMessage"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "A successful response",
+ "schema": {
+ "$ref": "#/definitions/WebappSrcProtoModelDefaultResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "produces": [
+ "application/json"
+ ],
+ "schemes": [
+ "https"
+ ],
+ "securityDefinitions": {
+ "google_id_token": {
+ "authorizationUrl": "",
+ "flow": "implicit",
+ "type": "oauth2",
+ "x-google-issuer": "https://accounts.google.com",
+ "x-google-jwks_uri": "https://www.googleapis.com/oauth2/v3/certs"
+ }
+ },
+ "swagger": "2.0",
+ "x-google-api-name": "schedule"
+} \ No newline at end of file