La structure générale d'un plugin en bash est la suivante :

if [ "$1" = "autoconf" ]; then
	echo yes
	exit 0
fi

if [ "$1" = "config" ]; then
	echo "configuration du plugin"
	exit 0
fi

echo "valeurs"

Le truc c'est qu'en ruby et dans pas mal d'autres langages on aimerais pas mal éviter les "exit". J'ai donc fait :

#! /usr/bin/ruby

if ARGV[0] == "autoconf"
	puts "yes"
end

if ARGV[0] == "config"
	puts "configuration du plugin"
end

if ARGV[0] == nil
	puts "valeurs"
end

Le plugin se configure très bien mais il ne marche pas. En fait c'est tout bête : vu le fonctionnement des plugins fournis avec Munin on pourrait s'attendre à ce que pour récupérer les valeurs il lance la commande sans argument. Mais NON ! En fait il le lance avec un argument ... vide !

Donc il faut :

#! /usr/bin/ruby

if ARGV[0] == "autoconf"
	puts "yes"
end

if ARGV[0] == "config"
	puts "configuration du plugin"
end

if ARGV[0].to_s.strip == "" # Ça change ici
	puts "valeurs"
end