Project

General

Profile

Actions

User story #9290

closed

Add an API endpoint to call rudder-remote-run

User story #9290: Add an API endpoint to call rudder-remote-run

Added by François ARMAND about 9 years ago. Updated over 8 years ago.

Status:
Released
Priority:
1 (highest)
Category:
API
Target version:
UX impact:
Suggestion strength:
User visibility:
Effort required:
Name check:
Fix check:
Regression:

Description

We want to be able to call rudder-remote-run from API, with a class parameter.

The first version will be limited to nodes directlyreachable from the root server (i.e: nodes behind a relay can't get the command, and we must return an error for them).

There is actually two endpoints to do:

- one synchrone, which is directed to ONE node with a class parameter, start rudder-remote-run, wait for the execution, and send the command output in the API call answer. So API call is blocking, and can block for long time. The output may not be streamed - it would be better, but it is not mandatory

- one asynchrone, that only take the class parameter as argument, and start the command on all node directly under the server, but just send back a "ACK, I started rudder-remote-run on these nodes".

The second method would be better if it can akso take a group id as parameter, and return which nodes didn't get the command (because for ex. behind a relay).
The second method is not prioritary and can be made in an other ticket.


Subtasks 3 (0 open3 closed)

User story #9374: Add an API to run agent on all NodesReleasedFrançois ARMANDActions
User story #9375: Add documentation on new API to start remote agent runReleasedFrançois ARMANDActions
Bug #9376: Rudder remote run does not add classes set for remote runReleasedBenoît PECCATTEActions

Related issues 1 (0 open1 closed)

Related to Rudder - User story #2876: We should be able to force a node to execute cf-agent with the Webapp interfaceResolvedActions

Updated by Vincent MEMBRÉ about 9 years ago Actions #1

API id:

Post /rudder/api/nodes/nodeId/applyPolicy

with classes in parameter, optional (no class defined if so)

{ "classes" : [class_1, class_2 ...] }

Maybe another parameter (asynchronous : true/false) if you want it asynchronous ... (idea for later)

Updated by Vincent MEMBRÉ about 9 years ago Actions #2

  • Status changed from New to In progress
  • Assignee set to Vincent MEMBRÉ

Updated by Vincent MEMBRÉ about 9 years ago Actions #5

  • Status changed from In progress to Pending technical review
  • Assignee changed from Vincent MEMBRÉ to François ARMAND
  • Pull Request set to https://github.com/Normation/rudder/pull/1274

Updated by Vincent MEMBRÉ about 9 years ago Actions #6

  • Status changed from Pending technical review to Pending release
  • % Done changed from 0 to 100

Updated by Benoît PECCATTE about 9 years ago Actions #7

  • Target version changed from 4.0.0~rc2 to 318

Updated by Vincent MEMBRÉ about 9 years ago Actions #8

  • Target version changed from 318 to 4.0.0~rc2

Updated by Vincent MEMBRÉ about 9 years ago Actions #9

  • Target version changed from 4.0.0~rc2 to 4.0.0~rc1

Updated by François ARMAND about 9 years ago Actions #10

  • Related to User story #2876: We should be able to force a node to execute cf-agent with the Webapp interface added

Updated by Alexis Mousset about 9 years ago Actions #11

  • Status changed from Pending release to Released

This bug has been fixed in Rudder 4.0.0 which was released the 10th November 2016.

Actions

Also available in: PDF Atom