1*800a58d9SAndroid Build Coastguard Worker// Copyright 2016 The Android Open Source Project 2*800a58d9SAndroid Build Coastguard Worker// 3*800a58d9SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*800a58d9SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*800a58d9SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*800a58d9SAndroid Build Coastguard Worker// 7*800a58d9SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*800a58d9SAndroid Build Coastguard Worker// 9*800a58d9SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*800a58d9SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*800a58d9SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*800a58d9SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*800a58d9SAndroid Build Coastguard Worker// limitations under the License. 14*800a58d9SAndroid Build Coastguard Worker 15*800a58d9SAndroid Build Coastguard Workersyntax = "proto2"; 16*800a58d9SAndroid Build Coastguard Worker 17*800a58d9SAndroid Build Coastguard Workerpackage acloud.internal.proto; 18*800a58d9SAndroid Build Coastguard Worker 19*800a58d9SAndroid Build Coastguard Worker// Hold configurations from user. 20*800a58d9SAndroid Build Coastguard Workermessage UserConfig { 21*800a58d9SAndroid Build Coastguard Worker // Account information for accessing Cloud API 22*800a58d9SAndroid Build Coastguard Worker optional string service_account_name = 1; 23*800a58d9SAndroid Build Coastguard Worker optional string service_account_private_key_path = 2; 24*800a58d9SAndroid Build Coastguard Worker 25*800a58d9SAndroid Build Coastguard Worker // Compute Engine project name 26*800a58d9SAndroid Build Coastguard Worker optional string project = 3; 27*800a58d9SAndroid Build Coastguard Worker // Compute Engine zone name, e.g. "us-central1-f" 28*800a58d9SAndroid Build Coastguard Worker optional string zone = 4; 29*800a58d9SAndroid Build Coastguard Worker optional string machine_type = 5; 30*800a58d9SAndroid Build Coastguard Worker // Compute Engine network name, e.g. "default" 31*800a58d9SAndroid Build Coastguard Worker optional string network = 6; 32*800a58d9SAndroid Build Coastguard Worker 33*800a58d9SAndroid Build Coastguard Worker // SSH key configuration 34*800a58d9SAndroid Build Coastguard Worker optional string ssh_private_key_path = 7; 35*800a58d9SAndroid Build Coastguard Worker optional string ssh_public_key_path = 8; 36*800a58d9SAndroid Build Coastguard Worker 37*800a58d9SAndroid Build Coastguard Worker // Storage configuration 38*800a58d9SAndroid Build Coastguard Worker optional string storage_bucket_name = 9; 39*800a58d9SAndroid Build Coastguard Worker 40*800a58d9SAndroid Build Coastguard Worker // Desired orientation, e.g. 'portrait' or 'landscape' 41*800a58d9SAndroid Build Coastguard Worker optional string orientation = 10; 42*800a58d9SAndroid Build Coastguard Worker // Desired resolution 43*800a58d9SAndroid Build Coastguard Worker optional string resolution = 11; 44*800a58d9SAndroid Build Coastguard Worker // Size of extra data disk. 45*800a58d9SAndroid Build Coastguard Worker optional int32 extra_data_disk_size_gb = 12; 46*800a58d9SAndroid Build Coastguard Worker // Metadata for creating Compute Engine instance 47*800a58d9SAndroid Build Coastguard Worker map <string, string> metadata_variable = 13; 48*800a58d9SAndroid Build Coastguard Worker 49*800a58d9SAndroid Build Coastguard Worker // client_id and client secret are required when user authenticates via 50*800a58d9SAndroid Build Coastguard Worker // Oauth2 flow with their user account (not service account). 51*800a58d9SAndroid Build Coastguard Worker // * They are created in the cloud project console -> API manager. 52*800a58d9SAndroid Build Coastguard Worker // * They are used to authorize the app to talk to the cloud project 53*800a58d9SAndroid Build Coastguard Worker // on behalf of the user. 54*800a58d9SAndroid Build Coastguard Worker // * They by themselves do not authenticate the user. 55*800a58d9SAndroid Build Coastguard Worker // * They are stored as plain text in the configuration file so they are 56*800a58d9SAndroid Build Coastguard Worker // not that secret. Generally, we should not share it with people we 57*800a58d9SAndroid Build Coastguard Worker // don't trust. 58*800a58d9SAndroid Build Coastguard Worker // * All users talking to the same cloud project can share the same 59*800a58d9SAndroid Build Coastguard Worker // client_id and client_secret. 60*800a58d9SAndroid Build Coastguard Worker optional string client_id = 14; 61*800a58d9SAndroid Build Coastguard Worker optional string client_secret = 15; 62*800a58d9SAndroid Build Coastguard Worker 63*800a58d9SAndroid Build Coastguard Worker // [CVD only] The name of the stable host image released by Cloud Android team 64*800a58d9SAndroid Build Coastguard Worker optional string stable_host_image_name = 16; 65*800a58d9SAndroid Build Coastguard Worker // [CVD only] The name of the host image family released by Cloud Android team 66*800a58d9SAndroid Build Coastguard Worker optional string stable_host_image_family = 17; 67*800a58d9SAndroid Build Coastguard Worker // [CVD only] The project that the stable host image is released to 68*800a58d9SAndroid Build Coastguard Worker optional string stable_host_image_project = 18; 69*800a58d9SAndroid Build Coastguard Worker 70*800a58d9SAndroid Build Coastguard Worker // [GOLDFISH only] The name of the stable host image released by Android 71*800a58d9SAndroid Build Coastguard Worker // Emulator (emu-dev) team 72*800a58d9SAndroid Build Coastguard Worker optional string stable_goldfish_host_image_name = 19; 73*800a58d9SAndroid Build Coastguard Worker // [GOLDFISH only] The project that the stable goldfish host image is 74*800a58d9SAndroid Build Coastguard Worker // released to (emu-dev-cts) 75*800a58d9SAndroid Build Coastguard Worker 76*800a58d9SAndroid Build Coastguard Worker optional string stable_goldfish_host_image_project = 20; 77*800a58d9SAndroid Build Coastguard Worker 78*800a58d9SAndroid Build Coastguard Worker // Account information for accessing Cloud API 79*800a58d9SAndroid Build Coastguard Worker // This is the new way to provide service account auth. 80*800a58d9SAndroid Build Coastguard Worker optional string service_account_json_private_key_path = 21; 81*800a58d9SAndroid Build Coastguard Worker 82*800a58d9SAndroid Build Coastguard Worker // Desired hw_property 83*800a58d9SAndroid Build Coastguard Worker optional string hw_property = 22; 84*800a58d9SAndroid Build Coastguard Worker 85*800a58d9SAndroid Build Coastguard Worker // [CHEEPS only] The name of the stable host image released by the ARC 86*800a58d9SAndroid Build Coastguard Worker // (arc-eng) team 87*800a58d9SAndroid Build Coastguard Worker optional string stable_cheeps_host_image_name = 23; 88*800a58d9SAndroid Build Coastguard Worker // [CHEEPS only] The project that the stable host image is released to 89*800a58d9SAndroid Build Coastguard Worker optional string stable_cheeps_host_image_project = 24; 90*800a58d9SAndroid Build Coastguard Worker 91*800a58d9SAndroid Build Coastguard Worker // [CVD only] It will get passed into the launch_cvd command if not empty. 92*800a58d9SAndroid Build Coastguard Worker // In version 0.7.2 and later. 93*800a58d9SAndroid Build Coastguard Worker optional string launch_args = 25; 94*800a58d9SAndroid Build Coastguard Worker 95*800a58d9SAndroid Build Coastguard Worker // The pattern of the instance name, e.g. ins-{uuid}-{build_id}-{build_target} 96*800a58d9SAndroid Build Coastguard Worker // the parts in {} will be automatically replaced with the actual value if 97*800a58d9SAndroid Build Coastguard Worker // you specify them in the pattern, uuid will be automatically generated. 98*800a58d9SAndroid Build Coastguard Worker optional string instance_name_pattern = 26; 99*800a58d9SAndroid Build Coastguard Worker 100*800a58d9SAndroid Build Coastguard Worker // List of scopes that will be given to the instance 101*800a58d9SAndroid Build Coastguard Worker // https://cloud.google.com/compute/docs/access/create-enable-service-accounts-for-instances#changeserviceaccountandscopes 102*800a58d9SAndroid Build Coastguard Worker repeated string extra_scopes = 27; 103*800a58d9SAndroid Build Coastguard Worker 104*800a58d9SAndroid Build Coastguard Worker // Provide some additional parameters to build the ssh tunnel. 105*800a58d9SAndroid Build Coastguard Worker optional string extra_args_ssh_tunnel = 28; 106*800a58d9SAndroid Build Coastguard Worker 107*800a58d9SAndroid Build Coastguard Worker // [CVD only] Version of fetch_cvd to use. 108*800a58d9SAndroid Build Coastguard Worker optional string fetch_cvd_version = 29; 109*800a58d9SAndroid Build Coastguard Worker 110*800a58d9SAndroid Build Coastguard Worker // [CVD only] Enable multi stage function. 111*800a58d9SAndroid Build Coastguard Worker optional bool enable_multi_stage = 30; 112*800a58d9SAndroid Build Coastguard Worker 113*800a58d9SAndroid Build Coastguard Worker // [CHEEPS only] The name of the L1 betty image (used with Cheeps controller) 114*800a58d9SAndroid Build Coastguard Worker optional string betty_image = 31; 115*800a58d9SAndroid Build Coastguard Worker 116*800a58d9SAndroid Build Coastguard Worker // [Oxygen only] The OAuth Credentials of API key. 117*800a58d9SAndroid Build Coastguard Worker optional string api_key = 32; 118*800a58d9SAndroid Build Coastguard Worker 119*800a58d9SAndroid Build Coastguard Worker // [Oxygen only] The API service url. 120*800a58d9SAndroid Build Coastguard Worker optional string api_url = 33; 121*800a58d9SAndroid Build Coastguard Worker 122*800a58d9SAndroid Build Coastguard Worker // [Oxygen only] The client to call oxygen api. 123*800a58d9SAndroid Build Coastguard Worker optional string oxygen_client = 34; 124*800a58d9SAndroid Build Coastguard Worker 125*800a58d9SAndroid Build Coastguard Worker // [Oxygen only] The args append to lease command. 126*800a58d9SAndroid Build Coastguard Worker optional string oxygen_lease_args = 35; 127*800a58d9SAndroid Build Coastguard Worker 128*800a58d9SAndroid Build Coastguard Worker // Storage options of created GCP instance, e.g. pd-standard, pd-ssd. 129*800a58d9SAndroid Build Coastguard Worker optional string disk_type = 36; 130*800a58d9SAndroid Build Coastguard Worker 131*800a58d9SAndroid Build Coastguard Worker // [CVD only] Ssh connect with hostname. 132*800a58d9SAndroid Build Coastguard Worker optional bool connect_hostname = 37; 133*800a58d9SAndroid Build Coastguard Worker 134*800a58d9SAndroid Build Coastguard Worker // [CVD only] [DEPRECATED]. 135*800a58d9SAndroid Build Coastguard Worker optional bool use_cvdr = 38; 136*800a58d9SAndroid Build Coastguard Worker 137*800a58d9SAndroid Build Coastguard Worker // [CVD only] Opt out from using cvdr. 138*800a58d9SAndroid Build Coastguard Worker optional bool use_legacy_acloud = 39; 139*800a58d9SAndroid Build Coastguard Worker} 140