Project

General

Profile

Actions

User story #9290

closed

Add an API endpoint to call rudder-remote-run

Added by François ARMAND over 7 years ago. Updated almost 7 years ago.

Status:
Released
Priority:
1
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 ARMAND2016-10-14Actions
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 PECCATTE2016-10-14Actions

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
Actions #1

Updated by Vincent MEMBRÉ over 7 years ago

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)

Actions #2

Updated by Vincent MEMBRÉ over 7 years ago

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

Updated by Vincent MEMBRÉ over 7 years ago

  • 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
Actions #6

Updated by Vincent MEMBRÉ over 7 years ago

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

Updated by Benoît PECCATTE over 7 years ago

  • Target version changed from 4.0.0~rc2 to 318
Actions #8

Updated by Vincent MEMBRÉ over 7 years ago

  • Target version changed from 318 to 4.0.0~rc2
Actions #9

Updated by Vincent MEMBRÉ over 7 years ago

  • Target version changed from 4.0.0~rc2 to 4.0.0~rc1
Actions #10

Updated by François ARMAND over 7 years ago

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

Updated by Alexis Mousset over 7 years ago

  • 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: Atom PDF