рдирдорд╕реНрддреЗ,
рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдирд┐рдЬреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИ рдЬреЛ рдХрдкрдбрд╝реЗ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рд╣рдо fabric==1.10.2
рдкрд┐рди рдХрд░рддреЗ рд╣реИрдВред
рдЖрдЬ, рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрдЯреИрдХрдЯреНрд░реЗрд╕ рдХреЗ рд╕рд╛рде рд░рд╣рд╕реНрдпрдордп рддрд░реАрдХреЗ рд╕реЗ рд╡рд┐рдлрд▓ рд╣реЛрдиреЗ рд▓рдЧреЗ рд╣реИрдВ:
19:22:54.233 from fabric import api as fabric_api
19:22:54.233 File "/home/go/work/pipelines/make-ci-00/code/.venv/local/lib/python2.7/site-packages/fabric/api.py", line 11, in <module>
19:22:54.233 from fabric.decorators import (hosts, roles, runs_once, with_settings, task,
19:22:54.233 File "/home/go/work/pipelines/make-ci-00/code/.venv/local/lib/python2.7/site-packages/fabric/decorators.py", line 9, in <module>
19:22:54.233 from Crypto import Random
19:22:54.233 ImportError: No module named Crypto
рдлреИрдмреНрд░рд┐рдХ рдХреЛ рдПрдХ рд╣реА рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд╣рдлреНрддреЛрдВ рддрдХ рдкрд┐рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ pycrypto
рдХрдкрдбрд╝реЗ рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЬрд╛рддреА рд╣реИред
рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ Crypto.Random
рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдХрдкрдбрд╝реЗ рдХреА рдПрдХрдорд╛рддреНрд░ рдирд┐рд░реНрднрд░рддрд╛ paramiko рд╣реИ , рдФрд░ pycrypto рдХреЛ paramiko рдбреЙрдХреНрд╕ рдХреЗ рдЕрд▓рд╛рд╡рд╛
рдЖрдИрдПрдордУ рдЕрдЧрд░ рдЖрдк рдХрдкрдбрд╝реЗ рдХреЗ рднреАрддрд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ pycrypto
рдкреНрд░рддреАрдХреЛрдВ рдХрд╛ рдЖрдпрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ pycrypto
рдХреЛ setup.py
рднреАрддрд░ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрджреНрдзреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдзрдиреНрдпрд╡рд╛рдж!
Paramiko 2.0 рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ (рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ cryptography
рдмрдЬрд╛рдп pycrypto
)ред setup.py рдХрд╛ 1.10.3 рд╕рдВрд╕реНрдХрд░рдг рдХрд░рддрд╛ рд╣реИред рд╢рд╛рдпрдж 1.10.3 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреАред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ c7d3034b5f217f2b4e7989f2c8e9bbea335be270 рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛
рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ 1.11.1
рдХреЛ рдЯрдХреНрдХрд░ рджреЗрдиреЗ рд╕реЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдареАрдХ рд╣реЛ рдЧрдИ рд╣реИред рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ 1.10.2
рдиреЗ рдЖрдЬ рддреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХреНрдпреЛрдВ рдХрд┐рдпрд╛ ...
@jamesob рдПрдХ рдирдП рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдлреИрдмреНрд░рд┐рдХ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдХреЗ рдЗрд╕реЗ рдЯреНрд░рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛? рдЬреИрд╕рд╛ рдХрд┐ @gtback рдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ, paramiko рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╣рдордиреЗ рдЗрд╕ рддрд░рд╣ рдХреА рдЪреАрдЬрд╝реЛрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ Fab рд░рд┐рд▓реАрдЬрд╝ рдХреЛ рдЙрд╕ рдкрд┐рди рдХреЛ paramiko<2 рдореЗрдВ рдбрд╛рд▓ рджрд┐рдпрд╛ рд╣реИред рдЖрдк рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдкрд░ рдирд╣реАрдВ рдереЗ, рд╢рд╛рдпрдж рдпрд╣реА рд╡рдЬрд╣ рд╣реИ рдХрд┐ рдЪреАрдЬреЗрдВ рдЯреВрдЯ рдЧрдИрдВред
рдЙрд╕ рдиреЗ рдХрд╣рд╛, рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдерд╛ рдХрд┐ рд╣рдо рд╕реАрдзреЗ рдХреНрд░рд┐рдкреНрдЯреЛ рдХрд╣реАрдВ рднреА рдЖрдпрд╛рдд рдХрд░ рд░рд╣реЗ рдереЗ; рдмрд╕ рджреЗрдЦрд╛ рдФрд░ рд╣рд╛рдБ, рд╣рдореЗрдВ PyCrypto + рдкреИрд░реЗрд▓рд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреНрд╡рд░реНрдХреА рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЧреВрдВрдЧрд╛ рдЯреНрд╡рд┐рдХ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рдЗрд╕реЗ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рд╣рдо рдХрднреА рднреА Paramiko рд╕рдВрд╕реНрдХрд░рдг рдкрд┐рди рдХреЛ рдкреВрд░реНрд╡рд╡рдд рдХрд░рддреЗ рд╣реИрдВ (рдЬреЛ рдореИрдВ рд╢рд╛рдпрдж рдХрднреА-рдХрднреА рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рдПрдХ рдмрд╛рд░ рдЬрдм рд╣рдо рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рдЬрд╛рдПрдВ рдХрд┐ paramiko 2 рд╕реНрдерд┐рд░ рд╣реИ)ред рддреЛ, рдЗрд╕реЗ рд╕рд╛рдордиреЗ рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж :)
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
Paramiko 2.0 рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ (рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ
cryptography
рдмрдЬрд╛рдпpycrypto
)ред setup.py рдХрд╛ 1.10.3 рд╕рдВрд╕реНрдХрд░рдг рдХрд░рддрд╛ рд╣реИред рд╢рд╛рдпрдж 1.10.3 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреАредрдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ c7d3034b5f217f2b4e7989f2c8e9bbea335be270 рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛