Recipes

Recipes on Nova as shell scripts that you can deploy to one or many nodes at a time. These once off scripts will execute whatever you need, and return the results to you.


Introduction

A recipe on Nova is a saved shell script, which you can deploy at any time to any collection of Nodes. Given that it is a shell script you will see it starts with the bin/sh executable at the top. After that you can enter whatever you want to run.

As an example, the below recipe runs a ping on a Node and returns the response time to you.

#!/bin/sh

/bin/ping -c 2 8.8.8.8

{warning} Remember to use full paths to binaries and files!


Deploying Recipes

Recipes can be deployed onto any number of Nodes or Node tags. When you click the play button on a recipe you will
see a list of your Nodes and tags and can tick the checkboxes on them to enable them.

It's common to use your tags which allows you to run the recipe on many nodes at the same time.


Results

The Recipes work on the Nova queue system, meaning they run in the background. You can collect the results by enabling Slack for your organisation, or via email. Below is an example of a Slack notice for the above Recipe example.

*Nova Recipe Result*
*Node*: testThree
*Recipe*: Ping test
*User*: Admin

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=123 time=1.72 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=123 time=1.57 ms

--- 8.8.8.8 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 1.571/1.649/1.727/0.078 ms