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/>.
24import "goby/middleware/protobuf/app_config.proto";
25import "goby/protobuf/option_extensions.proto";
27package jaiabot.config;
31 option (goby.msg).cfg.tool = {
37 optional goby.middleware.protobuf.AppConfig app = 1
38 [(goby.field) = { cfg { action: DEVELOPER } }];
42 help = 0 [(goby.ev).cfg = {
43 short_help_msg: "Print usage information",
44 full_help_msg: "Usage: \"jaia help [action]\"\n"
45 "Provides detailed usage information on the provided action.\n"
46 "Example: \"jaia help version\" provides help in the 'version' action"
49 // log = 1 [(goby.ev).cfg = {
50 // short_help_msg: "Manage Jaia (goby) log files",
52 status = 2 [(goby.ev).cfg = {
53 short_help_msg: "Status of Jaia services",
54 external_command: "jaiabot-status"
55 full_help_msg: "Runs jaiabot-status to display status of Jaiabot services"
57 ctl = 3 [(goby.ev).cfg = {
58 short_help_msg: "Control Jaia services",
59 full_help_msg: "This action is a wrapper for 'systemctl [<service>: defaults to jaiabot.service]': use jaia ctl --help for full details\n"
62 " jaia ctl restart: Restart all jaiabot services\n"
63 " jaia ctl stop: Stop all jaiabot services\n"
64 " jaia ctl start: Start all jaiabot services\n"
65 " jaia ctl <command> <service>: Run command on a specific service, e.g.,\n"
66 " jaia ctl restart jaiabot_goby_gps: Restart GPS service"
68 version = 4 [(goby.ev).cfg = {
69 short_help_msg: "Jaia version (metadata)",
71 ssh = 5 [(goby.ev).cfg = {
72 short_help_msg: "Use SSH to login to jaiabots and hubs",
73 full_help_msg: "This action is a wrapper for 'ssh' that can take shortcut names for jaia hosts\n"
74 "Command line options before the host name are processed by 'jaia ssh', and command line options after the host name are passed unmodified to ssh"
77 " jaia ssh b4f10: SSH into bot4 on fleet10\n"
78 " jaia ssh h1f2: SSH into hub1 on fleet2\n"
79 " jaia ssh --net=fleet_vpn b5f3: SSH into bot5 fleet3 over fleet vpn\n"
80 " jaia ssh --net=fleet_vpn b5f3 -A -v: SSH into bot5 fleet3 over fleet vpn using 'ssh -A -v'\n"
83 optional Action action = 2 [
86 description: "The action this tool should take [can omit --action if 1st parameter]",
87 cfg { position { enable: true }, cli_short: "A", action: HIDDEN }