2017-02-21 16 views
0

Теперь я очень беспокоюсь о том, чтобы использовать шеф-повара в низких барах env.Шеф-повар неспособен установить scipy = MemoryError

То, что я не могу установить scipy для python, совершенно нереально. Я должен дождаться ошибки..ssh на сервере, вручную запустить pip install scipy и повторить повара соло, а затем разорвать работу. ОЗУ - 1 гиг для сервера.

Шеф-повар..аут сделка?

python_package 'scipy' do 
    version '0.18.1' 
end 


--- 67.205.184.137 [2017-02-21T03:20:22+00:00] ERROR: bash[install_scipy] (forex::worker line 34) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '2' 
---- Begin output of "bash" "/tmp/chef-script20170221-3127-cmg0gp" ---- 
STDOUT: Collecting scipy==0.18.1 
    Downloading scipy-0.18.1-cp27-cp27mu-manylinux1_x86_64.whl (40.3MB) 
STDERR: /usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:318: SNIMissingWarning: An HTTPS request has been made, but the SNI (Subject Name Indication) extension to TLS is not available on this platform. This may cause the server to present an incorrect TLS certificate, which can cause validation failures. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/security.html#snimissingwarning. 
    SNIMissingWarning 
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:122: InsecurePlatformWarning: A true SSLContext 
--- 67.205.184.137 object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/security.html#insecureplatformwarning. 
    InsecurePlatformWarning 
Exception: 
Traceback (most recent call last): 
    File "/usr/local/lib/python2.7/dist-packages/pip/basecommand.py", line 215, in main 
    status = self.run(options, args) 
    File "/usr/local/lib/python2.7/dist-packages/pip/commands/install.py", line 335, in run 
    wb.build(autobuilding=True) 
    File "/usr/local/lib/python2.7/dist-packages/pip/wheel.py", line 749, in build 
    self.requirement_set.prepare_files(self.finder) 
    File "/usr/local/lib/python2.7/dist-packages/pip/req/req_set.py", line 380, in prepare_files 
    ignore_dependencies=self.ignore_dependencies)) 
    File "/usr/local/lib/python2.7/dist-packages/pip/req/req_set.py", line 620, in _prepare_file 
    session=self.session, hashes=hash 
--- 67.205.184.137 es) 
    File "/usr/local/lib/python2.7/dist-packages/pip/download.py", line 821, in unpack_url 
    hashes=hashes 
    File "/usr/local/lib/python2.7/dist-packages/pip/download.py", line 659, in unpack_http_url 
    hashes) 
    File "/usr/local/lib/python2.7/dist-packages/pip/download.py", line 882, in _download_http_url 
    _download_url(resp, link, content_file, hashes) 
    File "/usr/local/lib/python2.7/dist-packages/pip/download.py", line 603, in _download_url 
    hashes.check_against_chunks(downloaded_chunks) 
    File "/usr/local/lib/python2.7/dist-packages/pip/utils/hashes.py", line 46, in check_against_chunks 
    for chunk in chunks: 
    File "/usr/local/lib/python2.7/dist-packages/pip/download.py", line 571, in written_chunks 
    for chunk in chunks: 
    File "/usr/local/lib/python2.7/dist-packages/pip/utils/ui.py", line 139, in iter 
    for x in it: 
    File "/usr/local/lib/python2.7/dist-packages/pip/download.py", line 560, in resp_read 
    decode_content=False): 
    File "/usr/local/lib/python2.7/dist-packages/pip/_ven 
--- 67.205.184.137 dor/requests/packages/urllib3/response.py", line 357, in stream 
    data = self.read(amt=amt, decode_content=decode_content) 
    File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/response.py", line 314, in read 
    data = self._fp.read(amt) 
    File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/cachecontrol/filewrapper.py", line 63, in read 
    self._close() 
    File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/cachecontrol/filewrapper.py", line 50, in _close 
    self.__callback(self.__buf.getvalue()) 
    File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/cachecontrol/controller.py", line 275, in cache_response 
    self.serializer.dumps(request, response, body=body), 
    File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/cachecontrol/serialize.py", line 87, in dumps 
    ).encode("utf8"), 
MemoryError 
---- End output of "bash" "/tmp/chef-script20170221-3127-cmg0gp" ---- 
Ran "bash" "/tmp/chef-script20170221-3127-cmg0gp" returned 2 

--- 67.205.184.137 [2017-02-21T03:20:22+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1) 

ответ

0

Эта ошибка не исходит от шеф-повара, она исходит от пипса. На самом деле Шеф-повар действительно не может этого сделать. SciPy и NumPy - очень сложные библиотеки с большим количеством причудливых кодов C и Fortran (да, действительно) для компиляции, чтобы заставить их работать. Я бы посмотрел на создание ваших файлов колес на машине для сборки, а затем установил их.