4// Toby Schneider <toby@gobysoft.org>
7// This file is part of the JaiaBot Project Binaries
8// ("The Jaia Binaries").
10// The Jaia Binaries are free software: you can redistribute them and/or modify
11// them under the terms of the GNU General Public License as published by
12// the Free Software Foundation, either version 2 of the License, or
13// (at your option) any later version.
15// The Jaia Binaries are distributed in the hope that they will be useful,
16// but WITHOUT ANY WARRANTY; without even the implied warranty of
17// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18// GNU General Public License for more details.
20// You should have received a copy of the GNU General Public License
21// along with the Jaia Binaries. If not, see <http://www.gnu.org/licenses/>.
25import "goby/middleware/protobuf/app_config.proto";
26import "goby/zeromq/protobuf/interprocess_config.proto";
27import "dccl/option_extensions.proto";
29package jaiabot.config;
31message LinuxHardwareConfig
33 optional string data_disk_mountpoint = 10 [default = "/var/log"];
35 optional float disk_low_available_percentage = 11 [default = 10];
36 optional float disk_critical_available_percentage = 12 [default = 2];
38 optional float ram_low_available_percentage = 20 [default = 10];
39 optional float ram_critical_available_percentage = 21 [default = 1];
42 optional float high_load_factor = 30 [default = 0.9];
43 optional float critical_load_factor = 31 [default = 5];
45 optional string wireless_file = 40 [default = "/proc/net/wireless"];
46 optional string wlan_interface = 41 [default = "wlan0"];
49message NTPStatusConfig
55 optional float high_offset_threshold = 10 [
57 (dccl.field).units = { prefix: "milli" base_dimensions: "T" }
59 optional float high_jitter_threshold = 11 [
61 (dccl.field).units = { prefix: "milli" base_dimensions: "T" }
65message HelmIVPStatusConfig
70 optional int32 time_out_helm_status = 10 [default = 20];
79 optional goby.middleware.protobuf.AppConfig app = 1;
80 optional goby.zeromq.protobuf.InterProcessPortalConfig interprocess = 2;
82 optional bool auto_restart = 10 [default = true];
83 optional int32 auto_restart_timeout = 11
84 [default = 20, (dccl.field).units = { base_dimensions: "T" }];
85 optional int32 auto_restart_init_grace_period = 12
86 [default = 60, (dccl.field).units = { base_dimensions: "T" }];
88 optional bool ignore_powerstate_changes = 20 [default = false];
89 optional bool check_helm_ivp_status = 21 [default = true];
90 optional bool is_in_sim = 23 [default = false];
91 optional bool test_hardware_in_sim = 24 [default = false];
93 optional LinuxHardwareConfig linux_hw = 30;
94 optional NTPStatusConfig ntp = 40;
95 optional HelmIVPStatusConfig helm = 41;