在 2018年5月16日星期三 UTC+8下午8:31:53,Jochen Haeberle写道:
>
> Hi,
>
> I am trying to install seafile with Puppet. Puppet 5.5.1 on Debian 9.
>
> seafile is installed with an interactive shellscript calling a python 
> script. I prepared an answer file, which is interactively working fine, up 
> until where the db password is asked for. The input there is handled 
> differently, not echoed back to the prompt and the execution changes to 
> interactively for the input.
>
> The code part getting the user input looks like the following:
>
>             # prompt for user input
>             if password:
>                 answer = getpass.getpass(desc).strip()
>             else:
>                 answer = raw_input(desc).strip()
>
> Is there a way to get this to work in Puppet? I tried with the following 
> exec:
>
> exec { 'run seafile installer w answers file':
>     command   => 
> "/opt/seafile/${instanz}/${seafile_folder}/setup-seafile-mysql.py 
> /opt/seafile/${instanz}/${seafile_folder}5/${instanz}-answers.txt",
>     creates   => "/opt/seafile/${instanz}/seafile-server-latest",
>     require   => Archive[$seafile_archive],
>     provider  => shell,
>   }
>
> but I get:
>
> Notice: 
> /Stage[main]/Role::Share_server/Archive[seafile-server_6.2.5_x86-64.tar.gz]/ensure:
>  
> download archive from 
> puppet:///modules/profile/seafile/seafile-server_6.2.5_x86-64.tar.gz to 
> /opt/seafile/installed/seafile-server_6.2.5_x86-64.tar.gz and extracted in 
> /opt/seafile/test with cleanup
> Notice: 
> /Stage[main]/Role::Share_server/File[/opt/seafile/test/seafile-server-6.2.5/test-answers.txt]/ensure:
>  
> defined content as '{md5}25f64045b6676488e407c84c6a18eb20'
> Notice: /Stage[main]/Role::Share_server/Exec[run seafile installer w 
> answers file]/returns: /bin/sh: 1: 
> /opt/seafile/test/seafile-server-6.2.5/setup-seafile-mysql.py: Permission 
> denied
>
> Can it be done?
>
> Thanks in advance
>
> Jochen
>

I think it is a problem about command in exec resource. Why not try  "
/opt/seafile/${instanz}/${seafile_folder}/setup-seafile-mysql.py 
/opt/seafile/${instanz}/${seafile_folder}5/${instanz}-answers.txt" in your 
shell? Or try "*python* 
/opt/seafile/${instanz}/${seafile_folder}/setup-seafile-mysql.py 
/opt/seafile/${instanz}/${seafile_folder}5/${instanz}-answers.txt"? When 
you make it works in shell, then try it in puppet. 

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/92b21e37-9ecc-49dd-8d61-4f522278d54e%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to