
рд╣рдо рдЕрдкрдиреА рдЬрд░реВрд░рддреЛрдВ рдХреЗ рд▓рд┐рдП рд░реЗрдбрдорд╛рдЗрди рдХреЛ рдЦрддреНрдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВред
рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдордп рдкрд░, рдХрдИ рдмрдбрд╝реЗ (рдФрд░ рди рдХреЗрд╡рд▓) рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд▓рд┐рдП, рдЙрдирдХреЗ рдЕрдиреБрд░реЛрдз рдкрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░реЗрдбрдорд╛рдЗрди рдЗрдВрд╕реНрдЯреЗрдВрд╕ рд▓рдЧрд╛рдП рдЧрдП рдереЗред
рдореВрд▓ рд░реВрдк рд╕реЗ, рд╡реЗ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЬрд░реВрд░рддреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ: рдХреЛрдб рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА, рдЖрдВрддрд░рд┐рдХ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрдиред
рд▓реЗрдХрд┐рди рдЗрди рдЯреНрд░реИрдХрд░реНрд╕ рдореЗрдВ рднреА рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдП рдЧрдП рдереЗ, рдЕрд░реНрдерд╛рддреН рд╣рдорд╛рд░реЗ рд▓рд┐рдПред
рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рдорд╛рддреНрд░рд╛ рдФрд░ рдорд╛рддреНрд░рд╛ рдореЗрдВ рд╡реГрджреНрдзрд┐ рд╣реБрдИ, рдФрд░ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХреНрд╖рдг рдЖрдпрд╛ рдЬрдм рдПрдХ рд╕рд╛рде рдХрдИ рдЯреНрд░реИрдХрд░реНрд╕ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рдЧрдпрд╛ред рдЙрд╕реА рд╕рдордп, рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдЯреНрд░реИрдХрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдкреНрд░рд╢рд╛рд╕рди рдХрд╛рд░реНрдп рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЬрд╛рдирд╛ рдЖрд▓рд╕реА рд╣реИ, рдФрд░ рдмрд╕ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдордп рдмрд░реНрдмрд╛рдж рдХрд░ рд░рд╣рд╛ рд╣реИред
рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рд╣рдордиреЗ рдЕрдкрдиреЗ рд░реВрдмреА рдбреЗрд╡рд▓рдкрд░ kanfet рджреНрд╡рд╛рд░рд╛ рд░реЗрдбрдорд╛рдЗрди рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд▓рдЧрдЗрди рд▓рд┐рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдЬреЛ рд╕рднреА рдЯреНрд░реИрдХрд░реНрд╕ рд╕реЗ рд╣рдорд╛рд░реЗ рдореЗрдВ рдХрд╛рд░реНрдп рдПрдХрддреНрд░ рдХрд░реЗрдЧрд╛ред
рдмрд┐рд▓реНрд▓реА рдХреА рд╕реНрдерд╛рдкрдирд╛ рдФрд░ рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рддрд╣рдд рд╡рд░реНрдгрд┐рдд рд╣реИред
рдкреНрд▓рдЧрдЗрди рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ
рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реНрдерд╛рдкрдирд╛ред
рдЬреАрдердм рдХреЗ рд╕рд╛рде рдкреНрд▓рдЧрдЗрди рдХреЛ рдХреНрд▓реЛрди рдХрд░реЗрдВ:
git clone https://github.com/olemskoi/redmine_synchrony.git /opt/redmine/plugins/redmine_synchrony
рдФрд░ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВ:
bundle exec rake redmine:plugins:migrate RAILS_ENV="production"
рд░реЗрдбрдорд╛рдЗрди рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛ред
рдЕрдЧрд▓рд╛, рд╣рдо рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ: рдирд┐рдореНрди рдореЗрдиреВ рдЖрдЗрдЯрдо рдкрд░ рдЬрд╛рдПрдВ - "рдкреНрд░рд╢рд╛рд╕рди" - "рдореЙрдбреНрдпреВрд▓"ред
рд╡рд╣рд╛рдБ рд╣рдо рд╕реВрдЪреА рдореЗрдВ рдЕрдкрдирд╛ рдкреНрд▓рдЧрдЗрди рджреЗрдЦрддреЗ рд╣реИрдВ:

"рд╡рд┐рдХрд▓реНрдк" рдЪреБрдиреЗрдВред
рд╣рд┐рдЯ

рд╣рдореЗрдВ рднрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝реАрд▓реНрдб рдХреА рдПрдХ рд╕реВрдЪреА рдорд┐рд▓рддреА рд╣реИ:

рдХреНрдпрд╛ рд╣реИ:
- рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрдЯ рдХрд╛ рдкрддрд╛ рджреВрд░рд╕реНрде Redmine рдХрд╛ URL рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдЖрдкрдХреЛ рдЬрд╛рдирдХрд╛рд░реА рдЦреАрдВрдЪрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
- рдПрдкреАрдЖрдИ рдХреБрдВрдЬреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдПрдкреАрдЖрдИ рдХреБрдВрдЬреА рд╣реИ рдЬрд┐рд╕рдХреЗ рддрд╣рдд рдкреНрд░рд╛рдзрд┐рдХрд░рдг рд╣рдорд╛рд░реЗ рд░реЗрдбрдорд╛рдЗрди рд╕реЗ рджреВрд░рд╕реНрде рдПрдХ рддрдХ рд▓реЗ рдЬрд╛рдПрдЧрд╛ред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдкрд╛рд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо рдЕрдиреБрдорддрд┐рдпрд╛рдБ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
- рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЯреНрд░реИрдХрд░ - рд░рд┐рдореЛрдЯ рд░реЗрдбрдореАрди рдкрд░ рдЯреНрд░реИрдХрд░ рдХрд╛ рдирд╛рдоред рдЗрд╕ рдЯреЗрдХрд░ рд╕реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд▓реА рдЬрд╛рдПрдЧреАред рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рдЯреНрд░реИрдХрд░ рдореЗрдВ рджреВрд░рд╕реНрде рд░реЗрдбрдорд╛рдЗрди рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
- рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдерд╛рдиреАрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣рдорд╛рд░реЗ рд░реЗрдбрдорд╛рдЗрди рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо рд╣реИред рд░рд┐рдореЛрдЯ рдЯреНрд░реИрдХрд░ рд╕реЗ рдХрд╛рд░реНрдп рдЗрд╕рдореЗрдВ рдмрдирд╛рдП / рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред
- рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдиреАрдп рдЯреНрд░реИрдХрд░ - рд╕реНрдерд╛рдиреАрдп рдЯреНрд░реИрдХрд░ рдХрд╛ рдирд╛рдоред
- рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдмрдирд╛рдиреЗ рдХреА рднрд╛рд╖рд╛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреА рднрд╛рд╖рд╛ рд╣реИред
рдЦреЗрддреЛрдВ рдореЗрдВ рднрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдкрд░рд┐рд╡рд░реНрддрди рд╕рд╣реЗрдЬреЗ рдЬрд╛рддреЗ рд╣реИрдВред
рдЖрдк рдЬрд┐рддрдиреЗ рдЪрд╛рд╣реЗрдВ рдЙрддрдиреЗ рдЯреНрд░реИрдХрд░ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рддрд┐рдмрдВрдз рд╣реИрдВ:
- рд╕реНрдерд╛рдиреАрдп Redmine рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ ID рдУрд╡рд░рд▓реИрдк рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдЕрд░реНрдерд╛рддреН, рдХреЗрд╡рд▓ рдПрдХ рджреВрд░рд╕реНрде рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╕рдордХрд╛рд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- рдпреЛрдЬрдирд╛ 2.2.x рдФрд░ рдЙрдЪреНрдЪрддрд░ рд╕реЗ рд░реЗрдбрдорд╛рдЗрди рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддреА рд╣реИред
рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдХреНрд░реЛрди рдореЗрдВ рдПрдХ рдХрд╛рд░реНрдп рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ рдЕрдкрдбреЗрдЯ рд╢реБрд░реВ рдХрд░реЗрдЧрд╛ред
рд╣рдорд╛рд░реЗ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓реЗ рдореЗрдВ, рдХрд╛рд░реНрдп рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
*/05 * * * * redmine cd /opt/redmine && PATH=/usr/local/bin:$PATH /usr/bin/bundle exec rake -f /opt/redmine/Rakefile redmine_synchrony:issues RAILS_ENV="production" >/dev/null 2>&1
рдпрджрд┐ рдкреНрд▓рдЧрдЗрди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдЧрд▓рдд рд╣реИрдВ, рддреЛ рдпрд╣ рдХрд╛рд░реНрдп рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдФрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рдЪрд░рдг рдореЗрдВ, рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХрдорд╛рдВрдб рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред
рдХрд╛рд░реНрдп рд╕рд┐рджреНрдзрд╛рдВрдд
рдкреНрд▓рдЧрдЗрди рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдпреЛрдЬрдирд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ: рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреЛ рдХреНрд░реЛрди рдХрд╛рд░реНрдп рджреНрд╡рд╛рд░рд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╣рдорд╛рд░реА рд╕реНрдерд╛рдиреАрдп рд░реЗрдбрдорд╛рдЗрди рдПрдкреАрдЖрдИ рд╕реЗ рд░рд┐рдореЛрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЧреБрдЬрд░рддреА рд╣реИ рдФрд░ "рдЯреНрд░реИрдХрд░ рдлреЙрд░ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝реЗрд╢рди" рд╕реЗрдЯрд┐рдВрдЧ рдлрд╝реАрд▓реНрдб рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЯреНрд░реИрдХрд░ рдореЗрдВ рдХрд╛рд░реНрдп рдкрд░рд┐рд╡рд░реНрддрди рджреЗрдЦрддреА рд╣реИред
рдмреАрддреЗ рджрд┐рди рдХреЗ рдмрджрд▓рд╛рд╡ рдкрд░ рдирдЬрд╝рд░ рд░рдЦреА рдЬрд╛рддреА рд╣реИред
рджреВрд░рд╕реНрде рд░реЗрдбрдорд╛рдЗрди рдореЗрдВ рдПрдХ рдирдпрд╛ рдХрд╛рд░реНрдп рдмрдирд╛рдиреЗ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рд╕реНрдерд╛рдиреАрдп рдПрдХ рдореЗрдВ рдХрд╛рд░реНрдп рдХреЗ рдкреВрд░реНрдг рдкрд╛рда рдФрд░ рдореВрд▓ рдПрдХ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдХрд┐рд╕реА рд╕реНрдерд╛рдиреАрдп рдкрд░ рджреВрд░рд╕реНрде Redmine рдкрд░ рдХрд┐рд╕реА рдХрд╛рд░реНрдп рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╕рдордп, рд╕рдВрдмрдВрдзрд┐рдд рдХрд╛рд░реНрдп рдореЗрдВ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИред рдЯрд┐рдкреНрдкрдгреА рдкрд╛рда рдХрд╛рд░реНрдп рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗ рдЗрд╕реЗ рдЕрджреНрдпрддрди рдХрд┐рдпрд╛ рд╣реИ, рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдпрджрд┐ рдЗрд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдореВрд▓ рдХрд╛рд░реНрдп рдореЗрдВ рдЯрд┐рдкреНрдкрдгреА рдкрд╛рдаред
рд╕реНрдЯреИрдЯреНрдпреВрдЬрд╝, рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдУрдВ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдкрд╛рда рдореЗрдВ рд╕рд░рд▓ рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕реНрдерд╛рдиреАрдп рдФрд░ рджреВрд░рд╕реНрде рд░реЗрдбрдореАрди рдкрд░ рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдореВрд▓реНрдп рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддреЗ рд╣реИрдВред
рдореЗрд░реЗ рд▓рд┐рдП рдмрд╕ рдЗрддрдирд╛ рд╣реАред
рдореБрдЭреЗ рд╕рд▓рд╛рд╣ рдФрд░ рд╕реБрдЭрд╛рд╡ рдкрд░ рдЦреБрд╢реА рд╣реЛрдЧреАред
рдЙрдирдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╣рдо рдЖрд╡рд╢реНрдпрдХ рд╕реБрдзрд╛рд░ рдХрд░реЗрдВрдЧреЗред
рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!