Use MCollective to execute test automation (long running job) on lab machines

86 views
Skip to first unread message

Andrii Kalytiuk

unread,
Jul 14, 2014, 2:41:38 PM7/14/14
to puppet...@googlegroups.com
Hi,

I look into ways to use MCollective to run test automation on lab machines.

After couple of days of research I still have a question is MCollective is right tool to perform all required routines.

So my question is:
Will it be proper to use MCollective for following operations on Windows nodes - using own custom agents:
  1. Wait for server node (virtual machine) to become responsive after revert
  2. Copy file with (test automation data) from network location
  3. Unzip test automation files
  4. Update content of config files on machine
  5. Run command line utility to execute test automation.
    • Takes from couple of minutes to hour or more
    • Console output to be returned to MCollective client
    • Output returns to client gradually (more or less shortly after it is produced on server)
    • Is it possible to send responses to prompts of interactive command line application?
  6. Archive certain files on server
  7. Copy zip file with output files to network location
As I get from documentations all points except 5th can be implemented as a single or several command line calls.

So main questions are:
Is it possible to use MCollective to execute long-running command line utility on server and gradually return to client output of the utility as it is produced?
Is it possible to implement interaction with a command line application which prompts for additional user inputs on server (e. g. non-silent installation)?

Thank you.

Andrii

Andrii Kalytiuk

unread,
Jul 15, 2014, 2:47:56 AM7/15/14
to puppet...@googlegroups.com
Asked the same question on Puppet questions site.

David Schmitt

unread,
Jul 21, 2014, 2:05:42 AM7/21/14
to puppet...@googlegroups.com
On 2014-07-14 20:41, Andrii Kalytiuk wrote:
> Hi,
>
> I look into ways to use MCollective to *run test automation* on lab
> machines.
>
> After couple of days of research I still have a question /is MCollective
> is right tool/ to perform all required routines.
>
> *So my question is:*
> /Will it be proper/ to use MCollective for following operations on
> Windows nodes - using own custom agents:
>
> 1. Wait for server node (virtual machine) to become responsive after revert
> 2. Copy file with (test automation data) from network location
> 3. Unzip test automation files
> 4. Update content of config files on machine
> 5. Run command line utility to execute test automation.
> * Takes from couple of minutes to hour or more
> * Console output to be returned to MCollective client
> * Output returns to client gradually (more or less shortly after
> it is produced on server)
> * /Is it possible to send responses to prompts of interactive
> command line application?/
> 6. Archive certain files on server
> 7. Copy zip file with output files to network location
>
> As I get from documentations all points except 5th can be implemented as
> a single or several command line calls.
>
> *So main questions are:*
> Is it possible to use MCollective to execute long-running command line
> utility on server and gradually return to client output of the utility
> as it is produced?
> Is it possible to implement interaction with a command line application
> which prompts for additional user inputs on server (e. g. non-silent
> installation)?

Use a product that is appropriate for such tasks instead of trying to
retrofit something that wasn't built for it.

Jenkins comes to mind, as a great tool to run CI, CD and automated
tests. See http://jenkins-ci.org/


Regards, David

Jason Antman

unread,
Jul 30, 2014, 8:53:56 AM7/30/14
to puppet...@googlegroups.com
Agreed with everything Schmitt said. This isn't what mcollective is for, that's not how it works, there are tools made especially for this, etc. I'm not saying it isn't possible if you jump through enough hoops. I'm just saying it's an incredibly bad idea.


On Mon, Jul 14, 2014 at 2:41 PM, Andrii Kalytiuk <akal...@gmail.com> wrote:
Hi,

I look into ways to use MCollective to run test automation on lab machines.

After couple of days of research I still have a question is MCollective is right tool to perform all required routines.

So my question is:
Will it be proper to use MCollective for following operations on Windows nodes - using own custom agents:
  1. Wait for server node (virtual machine) to become responsive after revert
  2. Copy file with (test automation data) from network location
  3. Unzip test automation files
  4. Update content of config files on machine
Have you looked into Puppet? It does exactly what you want in steps 2-4 (maybe step 1 as well, with some additional tools).
  1. Run command line utility to execute test automation.
    • Takes from couple of minutes to hour or more
    • Console output to be returned to MCollective client
    • Output returns to client gradually (more or less shortly after it is produced on server)
    • Is it possible to send responses to prompts of interactive command line application?
No, mcollective doesn't do this. Mcollective tasks shouldn't (can't?) work that way. AFAIK, you tell an mco server to do something, and eventually it tells you *that the server received the request to do something* (reply). Also, why is your testing prompting you interactively? How do you get reproducable tests? Or examine the output later?
  1. Archive certain files on server
  2. Copy zip file with output files to network location
As I get from documentations all points except 5th can be implemented as a single or several command line calls.

So main questions are:
Is it possible to use MCollective to execute long-running command line utility on server and gradually return to client output of the utility as it is produced?
Is it possible to implement interaction with a command line application which prompts for additional user inputs on server (e. g. non-silent installation)?

Thank you.

Andrii

--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/6a928f6f-2381-4bcc-826f-70c58a0ce579%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages