Puppet - Função Personalizada - Statement - Error - “Deve ser o valor de uma declaração…”

1

Parece bastante simples ...

# /path/to/puppet/modules/custom/lib/puppet/parser/functions
module Puppet::Parser::Functions

    newfunction(:release_check) do |args|
        raise(Puppet::ParseError, "Testing!")
    end
end

# /path/to/puppet/modules/mysql/manifests/install.pp
class mysql::install {

     # Doesn't work
     release_check(1)

     # Does work, but I don't want anything returned making the assignment superfluous
     $whocares = release_check(1) 
}

Mas continuo recebendo este erro:

err: Could not retrieve catalog from remote server: Error 400 on SERVER: Function 'release_check' must be the value of a statement at /etc/puppet/modules/mysql/manifests/install.pp:4 on node service-a-3

Mas, de acordo com os docs de fantoches , eu devo poder fazer essa chamada como escrita.

This simple write_line_to_file function is an example of a statement function. It performs an action, and does not return a value.

O que estou perdendo?

CentOS: 6,7 Puppetmaster: 2.7.26

    
por Mike Purcell 04.10.2015 / 01:51

1 resposta

2

Depois de algumas facepalming, parece que você tem que reiniciar o puppetmaster depois de CADA mudança que você fez em uma função personalizada, mesmo assim, as mudanças são enviadas para o agente, após CADA mudança.

Enganador para dizer o mínimo.

    
por 04.10.2015 / 18:37