[chef] Error in running python script through python resource.


Chronological Thread 
  • From: Peeyush Gupta < >
  • To: " " < >
  • Subject: [chef] Error in running python script through python resource.
  • Date: Thu, 6 Mar 2014 20:24:15 +0800 (SGT)
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=ymail.com; h=X-YMail-OSG:Received:X-Rocket-MIMEInfo:X-Mailer:Message-ID:Date:From:Reply-To:Subject:To:MIME-Version:Content-Type; b=kMgrvVrvIKO8Yx7HrHTp8Nu3glsnwmxrzUv4gjQ+12Qlnhb1/R85A4HNdzzeGCXSAGl4D/OE/PpzuAOpvr6etYbUqmxwjmVnuRKa295r7HKhnaZsQn6qZ9NsKCjwfTofFipsigV9boUXhbLXCU86vUx9IsH0JXeCqkeeHUUqmxM=;

Hi all,

I am trying to run a simple python script using python resource of chef-cookbook. Here is what my recipe looks like:

filename = "test.py"
python "excute_file" do
  cwd '/home/peeyush/'
  code <<-EOH
python #{filename}
  EOH
  action :run
end

The error I am getting is:

Recipe: hellochef::default
  * python[excute_file] action run
================================================================================
Error executing action `run` on resource 'python[excute_file]'
================================================================================


Mixlib::ShellOut::ShellCommandFailed
------------------------------------
Expected process to exit with [0], but received '1'
---- Begin output of "python"  "/tmp/chef-script20140306-20614-1mjuchc" ----
STDOUT: 
STDERR: File "/tmp/chef-script20140306-20614-1mjuchc", line 1
    python test.py
              ^
SyntaxError: invalid syntax
---- End output of "python"  "/tmp/chef-script20140306-20614-1mjuchc" ----
Ran "python"  "/tmp/chef-script20140306-20614-1mjuchc" returned 1


Resource Declaration:
---------------------
# In /home/peeyush/chef/cookbook/hellochef/recipes/default.rb

 17: python "excute_file" do
 18:   cwd '/home/peeyush/'
 19:   code <<-EOH
 20: python #{filename}
 21:   EOH
 22:   action :run
 23: end



Compiled Resource:
------------------
# Declared in /home/peeyush/chef/cookbook/hellochef/recipes/default.rb:17:in `from_file'

python("excute_file") do
  action [:run]
  retries 0
  retry_delay 2
  command "\"python\"  \"/tmp/chef-script20140306-20614-1mjuchc\""
  backup 5
  cwd "/home/peeyush/"
  returns 0
  code "python test.py\n"
  interpreter "python"
  cookbook_name :hellochef
  recipe_name "default"
end




Running handlers:
[2014-03-06T17:49:48+05:30] ERROR: Running exception handlers
Running handlers complete

[2014-03-06T17:49:48+05:30] ERROR: Exception handlers complete
[2014-03-06T17:49:48+05:30] FATAL: Stacktrace dumped to /home/peeyush/chef/chef-stacktrace.out
Chef Client failed. 0 resources updated in 1.216862761 seconds
[2014-03-06T17:49:48+05:30] ERROR: python[excute_file] (hellochef::default line 17) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '1'
---- Begin output of "python"  "/tmp/chef-script20140306-20614-1mjuchc" ----
STDOUT: 
STDERR: File "/tmp/chef-script20140306-20614-1mjuchc", line 1
    python test.py
              ^
SyntaxError: invalid syntax
---- End output of "python"  "/tmp/chef-script20140306-20614-1mjuchc" ----
Ran "python"  "/tmp/chef-script20140306-20614-1mjuchc" returned 1
[2014-03-06T17:49:48+05:30] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)

I am not sure what I am doing wrong as there is no example to run a python script. Please help me resolve this issue.

Thanks,
 
~Peeyush Gupta



Archive powered by MHonArc 2.6.16.

§