2012-11-27 15 views
6

Używamy programu EngineYard, który ma domyślnie zainstalowany Python. Ale kiedy włączyliśmy SSL, otrzymaliśmy następujący komunikat o błędzie z naszego receptury szefa logów.Jak zainstalować moduł python z szefem kuchni?

"OSTRZEŻENIE: Nie ma modułu" ssl "Nie można zweryfikować tożsamości hosta przy użyciu niewiarygodnego rozwiązania. Zainstaluj moduł" ssl "lub nowszą wersję Pythona (2.6), jeśli to możliwe."

Szukam sposobu na zainstalowanie modułu SSL z recepturą szefa kuchni, ale po prostu nie mam wystarczającego doświadczenia. Czy ktoś może wskazać mi właściwy kierunek?

Zasoby: Logentries kucharz przepis: https://github.com/logentries/le_chef

Logentries EY docs: Moduł https://logentries.com/doc/engineyard/

SSL: http://pypi.python.org/pypi/ssl/

+0

1. Można zainstalować moduł ssl ręcznie (bez użycia kucharz)? 2. Zapisz kroki, które musisz wykonać, aby go zainstalować. 3. Konwertuj swoje kroki na zasoby szefa kuchni. 4. Zapisz je jako cały przepis. Który z poniższych kroków sprawia Ci problem? –

Odpowiedz

3

Właśnie napisał przepis na to, a teraz jestem w stanie uruchomić najnowszą klienta Logentries na EngineYard. Proszę bardzo:

file_dir = "/mnt/src/python-ssl" 
file_name = "ssl-1.15.tar.gz" 
file_path = File.join(file_dir,file_name) 
uncompressed_file_dir = File.join(file_dir, file_name.split(".tar.gz").first) 

directory file_dir do 
    owner "deploy" 
    group "deploy" 
    mode "0755" 
    recursive true 
    action :create 
end 

remote_file file_path do 
    source "http://pypi.python.org/packages/source/s/ssl/ssl-1.15.tar.gz" 
    mode "0644" 
    not_if { File.exists?(file_path) } 
end 

execute "gunzip ssl" do 
    command "gunzip -C#{file_name} | tar xf -" 
    cwd file_dir 
    not_if { File.exists?(uncompressed_file_dir) } 
end 

installed_file_path = File.join(uncompressed_file_dir, "installed") 

execute "install python ssl module" do 
    command "python setup.py install" 
    cwd uncompressed_file_dir 
    not_if { File.exists?(installed_file_path) } 
end 

execute "touch #{installed_file_path}" do 
    action :run 
end 
0

Można zainstalować nowy Python korzystając PythonBrew: https://github.com/utahta/pythonbrew. Po prostu zainstaluj bibliotekę libssl przed rozpoczęciem kompilacji lub nadal nie będziesz mógł korzystać z protokołu SSL. Jednak na podstawie ostrzeżenia wygląda na to, że SSL może działać, ale nie będzie w stanie zweryfikować hosta. Oczywiście jest to jeden z głównych celów protokołu SSL, więc prawdopodobnie nie jest on dostępny.

HTH

13

tam teraz wydaje się być rozwiązaniem z lepszym wsparciem społeczności (na podstawie faktu, że jest to udokumentowane na opscode website).

Można spróbować:

include_recipe 'python' 
python_pip 'ssl' 

jak udokumentowano: here lub here

+0

Referencje książki kucharskiej w tej odpowiedzi są teraz nieaktualne. README teraz przesyła na https://github.com/poise/poise-python –

Powiązane problemy