2014-12-24 30 views
5

Ho scritto un breve script bash e l'ho memorizzato in files/default/bash.sh.Come eseguire un file di script bash nello chef?

Come faccio a collegarlo per farlo funzionare nella mia ricetta predefinita principale? Deve funzionare come sudo perché sono su un sistema Ubuntu.

+3

Non sono del tutto sicuro del motivo per cui questa domanda è stata respinta. Ho avuto la stessa domanda e ho trovato questo utile. –

risposta

12

Dopo la ricerca di alta e bassa finalmente ho trovato una risposta:

cookbook_file "/tmp/lib-installer.sh" do 
    source "lib-installer.sh" 
    mode 0755 
end 

execute "install my lib" do 
    command "sh /tmp/lib-installer.sh" 
end 

Grazie a questo link!

1

È anche possibile includere lo script direttamente nella ricetta se non è troppo lungo tramite bash resource. Per impostazione predefinita, qualsiasi programma eseguito da Chef utilizza lo stesso utente di Chef in esecuzione, che di solito è già root. È possibile utilizzare il parametro user su cose come execute e bash per passare a un altro utente o semplicemente dichiarare esplicitamente che dovrebbe essere root per rendere le cose auto-documentanti un po '.

Problemi correlati