@@ -51,6 +51,56 @@ module Options
5151 _default : true ,
5252 _example : false
5353 } ,
54+ "choria-agent" => {
55+ type : String ,
56+ description : "Which Choria agent to use for task execution. Defaults to 'bolt_tasks' " \
57+ "(downloads task files from a Puppet Server). Set to 'shell' for tasks " \
58+ "not available on the Puppet Server." ,
59+ _plugin : true ,
60+ _example : "shell"
61+ } ,
62+ "collective" => {
63+ type : String ,
64+ description : "The Choria collective to target. Overrides the main_collective from the Choria " \
65+ "client configuration file." ,
66+ _plugin : true ,
67+ _example : "production"
68+ } ,
69+ "command-timeout" => {
70+ type : Integer ,
71+ description : "How long to wait in seconds for commands and scripts to complete when using the " \
72+ "Choria transport." ,
73+ minimum : 1 ,
74+ _plugin : true ,
75+ _default : 60 ,
76+ _example : 120
77+ } ,
78+ "config-file" => {
79+ type : String ,
80+ description : "The path to the Choria or MCollective client configuration file." ,
81+ _plugin : true ,
82+ _example : "/etc/choria/client.conf"
83+ } ,
84+ "nats-connection-timeout" => {
85+ type : Integer ,
86+ description : "How long to wait in seconds for the initial TCP connection to the NATS broker. " \
87+ "If the connection cannot be made within this time, the operation fails." ,
88+ minimum : 1 ,
89+ _plugin : true ,
90+ _default : 30 ,
91+ _example : 60
92+ } ,
93+ "rpc-timeout" => {
94+ type : Integer ,
95+ description : "How long to wait in seconds for nodes to respond to an RPC request. " \
96+ "Used for lightweight operations like agent discovery, shell.start, and " \
97+ "shell.list polling. Distinct from command-timeout and task-timeout which " \
98+ "govern the overall duration of commands and tasks." ,
99+ minimum : 1 ,
100+ _plugin : true ,
101+ _default : 30 ,
102+ _example : 60
103+ } ,
54104 "connect-timeout" => {
55105 type : Integer ,
56106 description : "How long to wait in seconds when establishing connections. Set this value higher if you " \
@@ -225,6 +275,16 @@ module Options
225275 _plugin : true ,
226276 _example : %w[ defaults hmac-md5 ]
227277 } ,
278+ "nats-servers" => {
279+ type : [ String , Array ] ,
280+ description : "One or more NATS server addresses for the Choria transport. Overrides the middleware " \
281+ "hosts from the Choria client configuration file. Can be a single string or an array." ,
282+ items : {
283+ type : String
284+ } ,
285+ _plugin : true ,
286+ _example : [ "nats://broker1:4222" , "nats://broker2:4222" ]
287+ } ,
228288 "native-ssh" => {
229289 type : [ TrueClass , FalseClass ] ,
230290 description : "This enables the native SSH transport, which shells out to SSH instead of using the " \
@@ -267,6 +327,14 @@ module Options
267327 _plugin : true ,
268328 _example : "jump.example.com"
269329 } ,
330+ "puppet-environment" => {
331+ type : String ,
332+ description : "The Puppet environment to use when constructing task file URIs for the Choria " \
333+ "bolt_tasks agent." ,
334+ _plugin : true ,
335+ _default : "production" ,
336+ _example : "staging"
337+ } ,
270338 "read-timeout" => {
271339 type : Integer ,
272340 description : "How long to wait in seconds when making requests to the Orchestrator." ,
@@ -343,6 +411,27 @@ module Options
343411 _plugin : true ,
344412 _example : 445
345413 } ,
414+ "ssl-ca" => {
415+ type : String ,
416+ description : "The path to the CA certificate for Choria TLS connections. Overrides the CA " \
417+ "from the Choria client configuration file." ,
418+ _plugin : true ,
419+ _example : "/etc/choria/ssl/ca.pem"
420+ } ,
421+ "ssl-cert" => {
422+ type : String ,
423+ description : "The path to the client certificate for Choria TLS connections. Overrides the " \
424+ "certificate from the Choria client configuration file." ,
425+ _plugin : true ,
426+ _example : "/etc/choria/ssl/client.pem"
427+ } ,
428+ "ssl-key" => {
429+ type : String ,
430+ description : "The path to the client private key for Choria TLS connections. Overrides the " \
431+ "key from the Choria client configuration file." ,
432+ _plugin : true ,
433+ _example : "/etc/choria/ssl/client-key.pem"
434+ } ,
346435 "ssh-command" => {
347436 type : [ Array , String ] ,
348437 description : "The command and options to use when SSHing. This option is used when you need support for " \
@@ -393,6 +482,14 @@ module Options
393482 _default : "production" ,
394483 _example : "development"
395484 } ,
485+ "task-timeout" => {
486+ type : Integer ,
487+ description : "How long to wait in seconds for tasks to complete when using the Choria transport." ,
488+ minimum : 1 ,
489+ _plugin : true ,
490+ _default : 300 ,
491+ _example : 300
492+ } ,
396493 "tmpdir" => {
397494 type : String ,
398495 description : "The directory to upload and execute temporary files on the target." ,
0 commit comments