рдореИрдВ рд╕реНрд╡рдЪрд╛рд▓рди рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрди рдХреА рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рдореЗрдВ рдЕрдкрдирд╛ рд╡рд┐рд╕рд░реНрдЬрди рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реВрдВ, рдЬрдмрдХрд┐ рд╕рдореБрджрд╛рдп рдХреЗ рд╕рд╛рде рдЕрдиреБрднрд╡ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред
рдпрд╣ рдлрд┐рд░ рд╕реЗ рдмрд╛рд╡рд░реНрдЪреА рд░рд╕реЛрдИ рдХреА рдирд┐рд░реНрднрд░рддрд╛ рд╕рдВрдХрд▓реНрдк рд╕реНрд╡рдЪрд╛рд▓рди рдЙрдкрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реЛрдЧрд╛ рдЬреЛ рд╣рдорд╛рд░реА рдХрдВрдкрдиреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддреН рдмрд░реНрдХрд╢реЗрд▓рдл ред
рдмрд░реНрдХрд╢реЗрд▓ рдХрд╛ рдЗрд╕рд╕реЗ рдХреНрдпрд╛ рд▓реЗрдирд╛-рджреЗрдирд╛ рд╣реИ?
рд╢реЗрдл рдХрд╛ рдПрдХ рдХрд╛рдлреА рдмрдбрд╝рд╛ рдФрд░ рд╡рд┐рдХрд╕рд┐рдд рд╕рдореБрджрд╛рдп рд╣реИ, рдЬреЛ рд▓рдЧрд╛рддрд╛рд░ рдХреБрдХрдмреБрдХ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдФрд░ рд╕рдВрдкрд╛рджрди рдореЗрдВ рдЕрдкрдирд╛ рдпреЛрдЧрджрд╛рди рджреЗрддрд╛ рд╣реИред рдЙрди рд╕рднреА рдХреЛ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрдирдореЗрдВ рд╕реЗ рдмрд╣реБрдд рд╕реЗ рдЕрдХреНрд╕рд░ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рдорд╛рд░реА рдХрдВрдкрдиреА рдореЗрдВ рдПрдХ "рд▓реЗрдХрд┐рди" рд╣реИ, рдЬреЛ рдХрд┐ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рдХреБрдХрдмреБрдХ рдХреЗ рд╕рдВрдкрд╛рджрди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рдХрдВрдкрдиреА рдХреЗ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреА рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЙрдирдХреЗ рд▓рд┐рдП рдХреЛрдИ рднреА рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рдХрд╛ рд╕рд╣реА рддрд░реАрдХрд╛ рд╣реИ рдХрд┐ рдмрджрд▓рд╛рд╡ рд╡рд╛рд▓реЗ рд░реИрдкрд░ рд▓рд┐рдЦрдирд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЧреБрдг рдкреБрди: рдЕрд╕рд╛рдЗрди рдХрд░рдирд╛, рд╡реНрдпрдВрдЬрдиреЛрдВ рдХреЛ рдмрджрд▓рдирд╛, рдЖрджрд┐)ред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдПрдХ рдЖрд╡рд░рдг рд▓рд┐рдЦрдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд▓реЗрдХрд┐рди, рд╕рд╣реА рд░рд╛рд╕реНрддрд╛ рд╣реЛрдиреЗ рдХрд╛ рдорддрд▓рдм рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рд░ рдХреЛрдИ рдЗрд╕рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдЧрд╛ред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╣рдорд╛рд░реА рдХрдВрдкрдиреА рдХреА рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдмреЛрдВ рдХреЗ рднрдВрдбрд╛рд░ рдореЗрдВ рдЕрдиреБрдЪрд┐рдд рд╕рдВрдкрд╛рджрди рдХреЗ рд╕рд╛рде рдХрдИ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдмреЗрдВ рдереАрдВред рдФрд░ рдпрд╣ рднрдВрдбрд╛рд░ рдХреЛ рд╕рд╛рдл рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реИ :)
рдпреЛрдЬрдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдереА:
- рд╣рдорд╛рд░реА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рдХреБрдХрдмреБрдХ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░реЗрдВ;
- рд╕реНрдерд╛рдиреАрдп рд╕рдВрдкрд╛рджрди рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдФрд░ рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЖрдХрд▓рди рдХрд░реЗрдВ ( рдХреБрдХрдмреБрдХ рдХреЗ рд╕рдорд╛рди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ );
- рд░реИрдкрд░ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд░реЗрдВ рдФрд░ рдЗрд╕рдореЗрдВ рдХрдореНрдпреБрдирд┐рдЯреА рдХреБрдХрдмреБрдХ рдпрд╛ рдЙрд╕рд╕реЗ рдорд┐рд▓рдиреЗ рд╡рд╛рд▓реА рдХреЙрд▓ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ;
- рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдм рдирд┐рдХрд╛рд▓реЗрдВ рдФрд░ рдЗрд╕реЗ рд░реИрдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВред
рдФрд░ "рд╕рд╛рдл" рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдмреЛрдВ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ? рдХреИрд╕реЗ, рд╣рдЯрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╡реЗ рд╢реЗрдл рд╕рд░реНрд╡рд░ рдкрд░ "рд╕рд╛рдл" рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреЗ?
рдмрд╕ рдпрд╣реАрдВ рд╕реЗ рдмрд░реНрдХрд╢реЗрд▓рдл рдмрдЪрд╛рд╡ рдореЗрдВ рдЖрддрд╛ рд╣реИред
рдмрд░реНрдХрд╢реЗрд▓ рдХреНрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдЦрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?
Berkshelf рдмрд╛рд╡рд░реНрдЪреА рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдмреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрдХ рд╣реИ ред рдпрд╣ рд░реВрдмреА рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рд╢реЗрдл рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдФрд░ рдПрдкреАрдЖрдИ рд╣реИрдВред
рдмрд░реНрдХрд╢реЗрд▓ рдХреЛ рд░реВрдмреА рд░рддреНрди рд╕реЗ рдпрд╛ рдмрд╛рд╡рд░реНрдЪреА рдбреАрдХреЗ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╣рдо рдмрд░реНрдХрд╢реЗрд▓ рд╕рдВрд╕реНрдХрд░рдг 2.0 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╕рдВрд╕реНрдХрд░рдг 3.0 рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдХреБрдЫ рдмрджрд▓рд╛рд╡ рдФрд░ рдЕрдЪреНрдЫрд╛рдИ рд▓рд╛рдпрд╛ред
рдпрджрд┐ рдЖрдк рд░реВрдмреА рд░рддреНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдЖрдкрдХреЛ рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕реЗ рд╢реЗрдл рд╕рд░реНрд╡рд░ рджреНрд╡рд╛рд░рд╛ рд╕реНрдерд╛рдкрд┐рдд рд░реВрдмреА рдХреЗ рднреАрддрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ (рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╛рдЗрд▓реЗрдВ рдкрде рдкрд░ рд╕реНрдерд┐рдд рд╣реИрдВ - / рдСрдкреНрдЯ / рдорд╣рд╛рд░рд╛рдЬ / рдПрдореНрдмреЗрдбреЗрдб / рдмрд┐рди / )ред
рд╢реЗрдл рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдмрд░реНрдХрд╢реЗрд▓ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рд╕рд░реНрд╡рд░ рдХрд╛ рдкрддрд╛ рдФрд░ рдЙрд╕ рдкрд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рдорд╛рдг рдкрддреНрд░ред рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрди рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:
berks configure
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЗрдВ рдирд┐рдореНрди рддрд░реАрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИрдВ:
$PWD/.berkshelf/config.json $PWD/berkshelf/config.json $PWD/berkshelf-config.json $PWD/config.json ~/.berkshelf/config.json
рдмрд░реНрдХрд╢реЗрд▓ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдХреБрдХрдмреБрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкрд╣рд▓реЗ рдЪрд░рдг рдореЗрдВ, рдмрд░реНрдХрд╢реЗрд▓ рдХреБрдХрдмреБрдХ рдФрд░ рдЙрдирдХреЗ рдЖрд╢реНрд░рд┐рддреЛрдВ рдХреЛ рдЙрдирдХреА рдЕрд▓рдорд╛рд░рд┐рдпреЛрдВ ( рдмрд░реНрдХрд╢реЗрд▓ рдХрд╛ рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░ / рднрдВрдбрд╛рд░ ) , рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХреЙрдкреА рдХрд░рддрд╛ рд╣реИ - ~ / .berkshelf / cookbooks / рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛, рдФрд░ рдлрд┐рд░ рд╢реЗрдл рд╕рд░реНрд╡рд░ рдХреЛ рд╕рдм рдХреБрдЫ рдЕрдкрд▓реЛрдб рдХрд░рддрд╛ рд╣реИред
рдкреНрд░рд╢реНрди рддреБрд░рдВрдд рдЙрдарддреЗ рд╣реИрдВ: " рдмрд░реНрдХрд╢реЗрд▓ рдХреЛ рд╡реНрдпрд╕рдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ? ", " рд╡рд╣ рдЙрдиреНрд╣реЗрдВ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдХрд░ рд░рд╣рд╛ рд╣реИ? "
рдмрд░реНрдХрд╢реЗрд▓ рдирд┐рд░реНрджреЗрд╢ рд░рд╕реЛрдИ рдХреА рдореВрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рдмрд░реНрдХрд╕реЗрдлрд╛рдЗрд▓ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИрдВред рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдИ рдЧрдИ рд╣реИ
рд░реВрдЯ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВредberks init
рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА рдирд┐рд░реНрднрд░рддрд╛ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреА рд╣реИред рдРрд╕реА рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:
site :opscode metadata cookbook 'my-cookbook', (:path | :git | :github) cookbook 'my-book-2', ('> 1.0.0')
рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИ:
- рд╣рдорд╛рд░реА рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдм рдХреЗ рдореЗрдЯрд╛рдбреЗрдЯрд╛ . rb рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦреЗрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ Opscode рд╕рдореБрджрд╛рдп рд╕рд╛рдЗрдЯ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ;
- рдореЗрд░реА-рдХреБрдХрдмреБрдХ рдХреЛ рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдкрде рдореЗрдВ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ (рдпрд╣ рдпрд╛ рддреЛ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдкрде рдпрд╛ рдЧрд┐рдЯ рд╕реЗ рд▓рд┐рдВрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ);
- рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреА рдореЗрд░реА-рдмреБрдХ -2 , 1.0.0 рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рдЗрд╕реЗ рдУрдкреНрд╕рдХреЛрдб рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд╕рд╛рдЗрдЯ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдЙрд╕рдХреЗ рдмрд╛рдж рдЖрдк рджреМрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ
рдФрд░ рдмрд░реНрдХрд╢реЗрд▓ рдХреЗ рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░рдг рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдХреЙрдкреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдореЗрдЯрд╛рдбреЗрдЯрд╛ . rb рдлрд╝рд╛рдЗрд▓ рдХреЗ рдирд┐рд░реНрднрд░ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕рднреА рдХреБрдХрдмреБрдХ , рдЙрдирдХреА рдирд┐рд░реНрднрд░рддрд╛ (рдирд┐рд░реНрднрд░рддрд╛ рдирд┐рд░реНрднрд░рддрд╛) рдФрд░ рдмрд░реНрдХрд╕рдлрд╛рдЗрд▓ рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рджреЛ рдХреБрдХрдмреБрдХ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдиреА рдЪрд╛рд╣рд┐рдП ред рдЖрдк рдЖрджреЗрд╢ рдХреЗ рд╕рд╛рде рдкрд░рд┐рдгрд╛рдо рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВberks install
berks shelf list
рдЕрдЧрд▓рд╛ рдЪрд░рдг рд▓реЙрдиреНрдЪ рдХрд░рдирд╛ рд╣реИ
рдЬреЛ рд╕реНрдерд╛рдиреАрдп рднрдВрдбрд╛рд░рдг рд╕реЗ рдмрд╛рд╡рд░реНрдЪреА рд╕рд░реНрд╡рд░ рдкрд░ рд╕рдм рдХреБрдЫ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдЧрд╛ред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк (рдмрд╢рд░реНрддреЗ рдХрд┐ рд╢реЗрдл рд╕рд░реНрд╡рд░ рдЙрдкрд▓рдмреНрдз рд╣реИ рдФрд░ рд╣рдо рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓реЙрдЧ рдЗрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ), рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рд╣рд▓ рд╣реЛ рдЬрд╛рдПрдВрдЧреАред рдЖрдк рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдбрд╛рдЙрдирд▓реЛрдб рд░рд┐рдЬрд▓реНрдЯ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВberks upload
рдЬрд┐рд╕рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдирдИ рдХреБрдХрдмреБрдХ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПредknife cookbook list
рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ, рдХрд┐ рдмрд░реНрдХрд╢реЗрд▓ рдХрд╛ рдореВрд▓ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдкреВрд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИред рдмреЗрд╢рдХ, рдпрд╣ рд╕рдм рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡реИрдЧреНрд░рд╛рдВрдЯ , рд╢реЗрдл рд╕реЛрд▓реЛ , рд╢реЗрдл рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд╕рд╛рде рдмрд░реНрдХрд╢реЗрд▓ рдХреА рдмрд╛рддрдЪреАрдд, рд╕рд╛рде рд╣реА рд╕рдВрд╕реНрдХрд░рдг 3.0 рдХреЗ рдХреБрдЫ рдирд╡рд╛рдЪрд╛рд░реЛрдВ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдзрд┐рдХрд╛рдВрд╢ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рдмрд░реНрдХрд╢реЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╣рдорд╛рд░рд╛ рдЗрддрд┐рд╣рд╛рд╕
рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдпрд╣ рдлрд┐рд░ рд╕реЗ рдПрдХ рдирд╣реАрдВ рдерд╛ "рд▓реЗрдХрд┐рди" - рдмрд░реНрдХрд╢реЗрд▓ рдХреЛ рдпрд╣ рдирд╣реАрдВ рдкрддрд╛ рд╣реИ рдХрд┐ рдЪрдХреНрд░реАрдп рд░реВрдк рд╕реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рдПред рдореИрдВ рдмрд╣реБрдд рд╣реИрд░рд╛рди рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдРрд╕рд╛ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рдорд┐рд▓рд╛, рдЬрд┐рд╕рдореЗрдВ рд╡рд╣ " рдореВрд▓ рд░реВрдк рд╕реЗ " рдХреБрдХрдмреБрдХ , рдПрдХ рддрд░рд╣ рдХреЗ рдиреЗрд╕реНрдЯреЗрдб рдореЛрдб рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рдиреЗрд╕реНрдЯрд┐рдВрдЧ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦ рд╕рдХреЗред рдореЗрд░рд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ?
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реНрдерд┐рддрд┐ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ, рдПрдХ рд░рд╕реЛрдЗрдпрд╛-рд░реЗрдкреЛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХреБрдХрдмреБрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд┐рд╣рд┐рдд рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдХреБрдХрдмреБрдХ (( .chef -repo/ cookbooks / ) рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
рдмрд░реНрдХрд╢реЗрд▓рдл рдХреЗ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдХреБрдХрдмреБрдХ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдмрд░реНрдХрд╢реЗрд▓ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣реА рд╣реИ, рдПрдХ рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛ рдРрд╕рд╛ рдХрд░реЗрдЧреА, рдЕрдкрдиреЗ рд╣рд╛рдереЛрдВ рд╕реЗ рдирд╣реАрдВ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ ... рдпрд╣ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдлрд╕реЛрд╕ - рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ, рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ - рдПрдХ "рдмреИрд╕рд╛рдЦреА"ред
рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдПрдХ рд▓реЗрдЦ рдкрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд┐рд╕рдореЗрдВ рд░реВрдмреА рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдпрд╣рд╛рдБ рд╣рдорд╛рд░реЗ " рд░реВрдЯ " Berksfile рдХреЗ рд▓рд┐рдП рдХреЛрдб рд╣реИ, рдЬреЛ / .chef-repo/ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИ:
site :opscode metadata def dependencies(path) berks = "#{path}/Berksfile" instance_eval(File.read(berks)) if File.exists?(berks) end Dir.glob('./cookbooks/*').each do |path| dependencies path cookbook File.basename(path), :path => path end cookbook 'gecode', '= 2.1.0'
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХреЛрдб рдХрд╛ рдпрд╣ рдЯреБрдХрдбрд╝рд╛ рд╕рднреА рд░реВрдЯрдмреБрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ (рдЙрдирдХреЗ рдореЗрдЯрд╛рдбреЗрдЯрд╛.рдЖрд░рдмреА рдФрд░ рдмрд░реНрдХрд╕рдлрд╛рдЗрд▓ ) рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ " рд░реВрдЯ " рдмрд░реНрдХрд╕рдлрд╛рдЗрд▓ рдореЗрдВ рдЗрдХрдЯреНрдард╛ рдХрд░рддрд╛ рд╣реИред
рд╣рдордиреЗ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди рдФрд░ рд╡реЙрдпрд▓рд╛ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ - рд╕рднреА рдмрд╛рд╡рд░реНрдЪреА рд╣рдорд╛рд░реЗ рд╕рд░реНрд╡рд░ рдкрд░ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдПред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╡рд░реНрдгрд┐рдд рд▓реЗрдЦ рдореЗрдВ рдПрдХ рдмрдбрд╝реА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ - рд╣рдорд╛рд░реА рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдмреЛрдВ рдХрд╛ рдмрд░реНрдХрд╕рдлрд╛рдЗрд▓ рдкреНрд░рд╛рд░реВрдк ред
рдпрд╣ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рддреМрд░ рдкрд░ рдкрд╛рдпрд╛ рдЧрдпрд╛ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:
group :name_of_cookbook do cookbook 'my-cookbook', (:path | :git | :github) cookbook 'my-book-2', ('> 1.0.0') end
рдпрд╣реА рд╣реИ, рдХреБрдХрдмреБрдХ рдХреА рдПрдХ рд╕реВрдЪреА рдЬреЛ рдХреБрдЫ рд╢рд░реНрддреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рддреА рд╣реИ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рдпрд╛ рдПрдХ рд╕рдореВрд╣ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рд╕реНрдерд╛рди (рддрд╛рдХрд┐ рд╡рд┐рднрд┐рдиреНрди рд░рд╕реЛрдИ рдХреА рдХрд┐рддрд╛рдмреЛрдВ рдХреА рд╕рдорд╛рди рдирд┐рд░реНрднрд░рддрд╛ рдХрдИ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдЬреИрд╕реЗ рдЯрдХрд░рд╛рд╡ рдХрд╛ рдХрд╛рд░рдг рди рдмрдиреЗрдВ)ред рдЕрдиреНрдп рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдЯрд╛рдбреЗрдЯрд╛ . rb рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд▓реА рдЧрдИ рд╣реИрдВред рдмрд┐рд▓реНрд▓реА рдХреЗ рдиреАрдЪреЗ - рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрджрд╛рд╣рд░рдг, рддрд╛рдХрд┐ рдпрд╣ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рд╣реЛ:
рдЫрд┐рдкрд╛ рд╣реБрдЖ рдкрд╛рда
group :database do cookbook 'postgresql', '= 3.3.4' cookbook 'aws', :path => './cookbooks/aws' cookbook 'xfs', :path => './cookbooks/xfs' cookbook 'mysql', '= 4.1.2' end
рдирддреАрдЬрддрди, рдХреБрдЫ рд╢рд░реНрддреЛрдВ рдХреЗ рдЕрдиреБрд░реВрдк 4 рдХреБрдХрдмреБрдХ рдХреЛ рдХреБрдХрдмреБрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд╕рд╛рде рд╣реА рдореЗрдЯрд╛рдбреЗрдЯрд╛.рдЖрд░рдмреА рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдЕрдиреНрдп рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдПрдВ, рд╕рд╛рде рд╣реА рдЙрд▓реНрд▓реЗрдЦрд┐рдд рдирд┐рд░реНрднрд░рддрд╛ рдирд┐рд░реНрднрд░рддрд╛ (рдЯреЙрдЯреЛрд▓реЙрдЬреА рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рдорд╛рдл рдХрд░рдирд╛)ред
рд╣рдорд╛рд░реЗ рдХреБрдХрдмреБрдХ рдХреЗ рдмрд░реНрдХрдлрд╛рдЗрд▓реНрд╕ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЬреЛ рдХреБрдЫ рднреА рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдмрд╛рдХреА рд╣реИ рд╡рд╣ рд╣реИ ./chef-repo рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдирд╛
berks install && berks upload
рдпрд╣рд╛рдБ рдЗрд╕ рддрд░рд╣ рдХрд╛ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ, рд╢рд╛рдпрдж рдмрд╣реБрдд рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдпрд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рд╣реИ - рд▓реЗрдХрд┐рди рдПрдХ рд╕рдорд╛рдзрд╛рдиред рдЗрд╕рдиреЗ рд╣рдорд╛рд░реА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд╕рд╛рде рдХрдИ рдмрд╛рд░ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдХрд╛рдо рдХрд┐рдпрд╛ред
рдпрджрд┐ рдХреЛрдИ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЖрдпрд╛ рдФрд░ рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ - рдЯрд┐рдкреНрдкрдгреА рдпрд╛ рдкреАрдПрдо рд▓рд┐рдЦреЗрдВред
рдирдП рд▓реЗрдЦреЛрдВ рдХреА рдУрд░ рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рд╕рднреА рдХрд╛ рдзрдиреНрдпрд╡рд╛рджред
PS рдПрдХ рд╕рд╣рдпреЛрдЧреА рдХрд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ Berkshelf v.3.0 рдЯреВрдЯ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рди рдХрд░реЗрдВ!