рдирдорд╕реНрдХрд╛рд░, рд╣реЗрдмреНрд░!
рдХреБрдЫ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ, рдореИрдВрдиреЗ рдлреНрд░рдВрдЯ-рдПрдВрдб рдХреЗ рд▓рд┐рдП рдбреЙрдХрдЯрд░ рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рд╕рд╛рде рдлреНрд░рдВрдЯреЗрдВрдбрдХреЙрдиреНрдлрд╝ 2019 рд╕рдореНрдореЗрд▓рди рдореЗрдВ рдмрд╛рдд рдХреА рдереА рдФрд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд░рд┐рдкреЛрд░реНрдЯ рдХрд╛ рдПрдХ рдЫреЛрдЯрд╛ рдкреНрд░рддрд┐рд▓реЗрдЦ рдмрдирд╛рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдЬреЛ рд╕реБрдирдиреЗ рд╕реЗ рдЕрдзрд┐рдХ рдкрдврд╝рдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВред
рдореИрдВ рдЖрдкрдХреЛ рд╕рднреА рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдХреИрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдордВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ, рдЦрд╛рд╕рдХрд░ рдлреНрд░рдВрдЯ-рдПрдВрдбред
рд╕рд╛рдордЧреНрд░реА
- рд╕рд╛рдордиреЗ рдХреЗ рдЫреЛрд░ рдХреЗ рд▓рд┐рдП рдбреЙрдХрдЯрд░ред рднрд╛рдЧ 1. рдХреНрдпреЛрдВ?
- рд╕рд╛рдордиреЗ рдХреЗ рдЫреЛрд░ рдХреЗ рд▓рд┐рдП рдбреЙрдХрдЯрд░ред рднрд╛рдЧ 2. рдЖрдк рдХреНрдпрд╛ рд╣реИрдВ?
- рд╕рд╛рдордиреЗ рдХреЗ рдЫреЛрд░ рдХреЗ рд▓рд┐рдП рдбреЙрдХрдЯрд░ред рднрд╛рдЧ 3. рдХреБрдЫ рд╡реНрдпрдВрдЬрдиреЛрдВ
рдбреЙрдХрд┐рдВрдЧ рдкрд░ рдЪрдврд╝рдирд╛
рдбреЙрдХрд░ рдПрдХ рдирдпрд╛ рдЙрдкрдХрд░рдг рдирд╣реАрдВ рд╣реИ, рдЗрд╕реЗ рдкрд╣рд▓реА рдмрд╛рд░ рдорд╛рд░реНрдЪ 2013 рдореЗрдВ рд╡рд╛рдкрд╕ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рддрдм рд╕реЗ рдЗрд╕рдХреА рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдмрдврд╝реА рд╣реИред

рдпрд╣рд╛рдБ рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ Node.js рдХреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рдЖрд╡реГрддреНрддрд┐ рдПрдХ рдкрдард╛рд░ рддрдХ рдкрд╣реБрдБрдЪ рдЧрдИ рд╣реИ рдФрд░ рдХрд╣реАрдВ рднреА рдирд╣реАрдВ рдЬрд╛ рд░рд╣реА рд╣реИ, рдЬрдмрдХрд┐ Docker рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдзреЛрдВ рдореЗрдВ рд╡реГрджреНрдзрд┐ рдЬрд╛рд░реА рд╣реИред

рдпрд╣ рдЦрд┐рд▓реМрдирд╛ RIT ++ 2019 рд╕рдореНрдореЗрд▓рди рдореЗрдВ DevOps рдЕрдиреБрднрд╛рдЧ рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдерд╛ред рдФрд░ рдореЗрд░реЗ рдЕрдиреБрднрд╡ рдореЗрдВ, рдПрдХ рднреА DevOps рд╕рдореНрдореЗрд▓рди рдбреЙрдХрдЯрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдирд╣реАрдВ рдЬрд╛рддрд╛ рд╣реИ, рдареАрдХ рдЙрд╕реА рддрд░рд╣ рдЬреИрд╕реЗ рдлреНрд░рдВрдЯ-рдПрдВрдб рдХреЙрдиреНрдлреНрд░реЗрдВрд╕ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ, рд╡реЗрдмрдкреИрдХ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рдкреЗрд╢реЗрд╡рд░ рдмрд░реНрдирдЖрдЙрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рдмрд┐рдирд╛ рдирд╣реАрдВ рдЬрд╛рддреЗ рд╣реИрдВред
рд╣рдореЗрдВ рд╕рд╛рдордиреЗ рд╡рд╛рд▓реЗ рдкрдХреНрд╖ рдореЗрдВ рднреА рдЗрд╕ рддрдХрдиреАрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВред

рдпрд╣ рдПрдХ рд╡реЗрдмрдорд╛рд╕реНрдЯрд░ рд░реЛрдбрдореИрдк рд╣реИ ред рдмрд╛рдИрдВ рдУрд░ рдХрд┐рд╕реА рднреА рд╡рд┐рдХрд╛рд╕ рдкрде рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдХреМрд╢рд▓ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдХ рдЕрдЪреНрдЫреЗ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдЬреЛ рдЧрд┐рдЯ, рдПрдХ рдЯрд░реНрдорд┐рдирд▓ рдпрд╛ рдПрдЪрдЯреАрдЯреАрдкреА рдХреЛ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИред
рдбреЙрдХрд░ рднреА рдпрд╣рд╛рдВ рдореМрдЬреВрдж рд╣реИ, рд▓реЗрдХрд┐рди рдЬрд╣рд╛рдВ DevOps рдХреА рд╡рд┐рдХрд╛рд╕ рд╢рд╛рдЦрд╛ рдХреЗ рдмреЛрд▓реНрд╕ рдореЗрдВ рдЗрдиреНрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░ рдореЗрдВ рдХреЛрдб рдХреЗ рд░реВрдк рдореЗрдВ рд╣реИ -> рдХрдВрдЯреЗрдирд░ рдмреНрд▓реЙрдХред
рд▓реЗрдХрд┐рди рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдбреЙрдХрдЯрд░ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╕рд╛рдзрди рд╣реИ, рди рдХрд┐ рдХреЗрд╡рд▓ рд╢реЛрд╖рдгред рдФрд░, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдЙрд╕рдХреЗ рдкрд╛рд╕ рдХрд┐рд╕реА рднреА рдкрде рдЕрдиреБрднрд╛рдЧ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдиреЗ рдХреЗ рдХреБрдЫ рд╕рдордп рдмрд╛рдж рдФрд░ рдлреНрд░рдВрдЯ-рдПрдВрдб рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рдХрдИ рд░рд┐рдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рдЕрдирд┐рд╡рд╛рд░реНрдп рдЖрд╡рд╢реНрдпрдХрддрд╛ рдмрдирдиреЗ рдХрд╛ рд╣рд░ рдореМрдХрд╛ рд╣реИред
рд╣рдо рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЕрдм рд╣рдо рдбреЙрдХрд░ рдпреБрдЧ рдореЗрдВ рд░рд╣рддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рдлреНрд░рдВрдЯ-рдПрдВрдб рдбреЗрд╡рд▓рдкрд░ рд╣реИрдВ рдФрд░ рдЕрднреА рддрдХ рдЙрдирд╕реЗ рдирд╣реАрдВ рдорд┐рд▓реЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдРрд╕рд╛ рдХреНрдпреЛрдВ рдХрд░рдирд╛ рд╣реИред
рдХреНрдпреЛрдВ?
рдХреЗрд╕ 1. рдмреИрдХрдПрдВрдб рдЙрдард╛рдПрдВ
рдкрд╣рд▓рд╛ рдФрд░ рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдорд╛рдорд▓рд╛ рдЬрд┐рд╕ рдкрд░ рд╣рдо рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рд╡рд╣ рд╣реИ рд╣рдорд╛рд░реА рдЖрд░рд╛рдорджрд╛рдпрдХ рдореИрдХрдмреБрдХ рдкрд░ рдПрдкреАрдЖрдИ рд▓реЙрдиреНрдЪ рдХрд░рдирд╛ред рд╣рд╛рдВ, рд╣рдо рдЕрдкрдиреА рддрдХрдиреАрдХреЛрдВ рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЬрд╛рдирддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреБрдЫ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЛ рддреИрдирд╛рдд рдХрд░рдирд╛ рд╣рдореЗрд╢рд╛ рдПрдХ рдЖрд╕рд╛рди рдкрд░реАрдХреНрд╖рд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред
рд╣рдорд╛рд░реА рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░, рдлреНрд░рдВрдЯ-рдПрдВрдб рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕реЗрдЯ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА рддрд╛рдХрд┐ рдПрдкреАрдЖрдИ рдХрд╛рдо рдХрд░реЗ:
* go1.11 * MySQL * Redis * Elasticsearch * Capistrano * syslog * PostgreSQL
рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ README рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреЗ рдирд┐рд░реНрджреЗрд╢ рдереЗред рд╡реЗ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗ:
1. GVM (https://github.com/moovweb/gvm) 2. `gvm install go1.11.13 --binary` 3. `gvm use go1.11.13 --default` 4. golang (`gvm linkthis`) 5. `gb` `go get github.com/constabulary/gb/...` 6. `git config --global url."git@git.example.com:".insteadOf "https://git.example.com/"` 7. `gb vendor restore` 8. 9. `npm run build` (`npm run build:dev` ) 10. `npm start`
рдФрд░ рдЗрд╕ рддрд░рд╣:
## Elasticsearch 1. Elasticsearch `brew install elasticsearch` - macOS ( java) 2. * https://github.com/imotov/elasticsearch-analysis-morphology , `/usr/local/Cellar/elasticsearch/2.3.3/libexec/bin/plugin install http://dl.bintray.com/content/imotov/elasticsearch-plugins/org/elasticsearch/elasticsearch-analysis-morphology/2.3.3/elasticsearch-analysis-morphology-2.3.3.zip` - * `brew services restart elasticsearch` 3. `rake environment elasticsearch:import:model CLASS='Tag' FORCE=y ` `rake environment elasticsearch:import:model CLASS='Post' FORCE=y` , ## Postgres comments db 1. `psql -U postgres -h localhost` 2. `create database comments_dev;` ## Redis install and start 1. `brew install redis` 2. `brew services start redis`
рдЖрдкрдХреЛ рдХреНрдпрд╛ рд▓рдЧрддрд╛ рд╣реИ, рдХрд┐рд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдкрд░рд┐рдирд┐рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдФрд░ рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдореЗрдВ рдиреМрд╕рд┐рдЦрд┐рдпрд╛ рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдХрд┐рддрдирд╛ рд╕рдордп рд▓рдЧрд╛?
рд▓рдЧрднрдЧ рдПрдХ рд╕рдкреНрддрд╛рд╣ред
рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рд╕рднреА рдЯрд░реНрдорд┐рдирд▓ рдХрдорд╛рдВрдб рдкрд╣рд▓реА рдмрд╛рд░ рдкрд╛рд░рд┐рдд рдирд╣реАрдВ рд╣реБрдП, рдХрд╛рдлреА рдмрд╛рд░ рдпрд╣ рдирд┐рд░реНрджреЗрд╢ рдкреБрд░рд╛рдирд╛ рд╣реЛ рдЧрдпрд╛ред
рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдирд╛ рдЬрд╛рддрд╛ рдерд╛ рдФрд░ рд╕рднреА рдХреЛ рдЕрдиреБрдХреВрд▓ рдмрдирд╛рддрд╛ рдерд╛ред рдпрд╣реА рд╣реИ, 1 рдШрдВрдЯреЗ рдХреЗ рдХрд╛рдо рдореЗрдВ рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рднреА рдШрдЯрдХреЛрдВ рдХреЛ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 40 рдШрдВрдЯреЗ рдЦрд░реНрдЪ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред
рдЕрдм рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╕рднреА рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рддреИрдирд╛рддреА рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддреА рд╣реИ рдФрд░ рдардВрдб рд╢реБрд░реВ рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде рд▓рдЧрднрдЧ 10 рдорд┐рдирдЯ рд▓рдЧрддреЗ рд╣реИрдВ ред
$ docker-compose up api ... Listening localhost:8080
рд╕рднреА рд╕реЗрд╡рд╛ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдЖрджреЗрд╢реЛрдВ рдХреЛ рдбреЙрдХрд░ рдЫрд╡рд┐рдпреЛрдВ рдХреА рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рджреМрд░рд╛рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╣реИрдВ рдФрд░ рдкреБрд░рд╛рдиреЗ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗред
рдХреЗрд╕ 2. рд╕реНрдерд┐рд░рддрд╛
рджреВрд╕рд░рд╛ рдорд╛рдорд▓рд╛ рд╣рдорд╛рд░реЗ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрдВрдкреНрдпреВрдЯрд░ рдХреА рдкреНрд░рдгрд╛рд▓реА рдХреА рд╕реНрдерд┐рд░рддрд╛ рд╣реИред
рдХреМрди рдЕрдкрдиреЗ рдкрд╕рдВрджреАрджрд╛ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдХреБрдЫ рддреГрддреАрдп - рдкрдХреНрд╖ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд░рдЦрдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реИ? рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбреЗрдЯрд╛рдмреЗрд╕ , рдирдП рдХрдВрдкрд╛рдЗрд▓рд░ , рджреБрднрд╛рд╖рд┐рдпреЛрдВ рдХреЛ рдХреМрди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реИ?
рдФрд░ рдпрд╣ рддрдм рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ рдЬрдм рд╣рдо рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдПрдкреАрдЖрдИ рдХреЛ рддреИрдирд╛рдд рдХрд░рддреЗ рд╣реИрдВред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рддреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдмрд╣рд╛рд▓ рдХрд░рдиреЗ рдореЗрдВ рдХрдИ рдШрдВрдЯреЗ рдмрд┐рддрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдбреЙрдХрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд╕рднреА рддреГрддреАрдп-рдкрдХреНрд╖ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдЕрдЫреВрддрд╛ рдХрдВрдЯреЗрдирд░реЛрдВ рдореЗрдВ рдШреВрдорддреЗ рд╣реИрдВ рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдирд┐рдХрд╛рд▓ рджрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ ред
$ docker rm --volumes api $ docker system prune --all
рдХреЗрд╕ 3. рд╣рдо рдСрдкрд░реЗрд╢рди рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ
рдФрд░ рддреАрд╕рд░рд╛ рдорд╛рдорд▓рд╛ рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рд╡рд╣ рд╣реИ рдлреНрд░рдВрдЯ-рдПрдВрдб рдбреЗрд╡рд▓рдкрд░ рдХреА рдХреНрд╖рдорддрд╛ рдЙрд╕рдХреА рд╕реЗрд╡рд╛ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдирд╛ред рдпрд╣ рдЖрдкрдХреЛ рддрдп рдХрд░рдирд╛ рд╣реИ рдХрд┐ рдЙрд╕рдХреА рд╕реЗрд╡рд╛ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧреАред
рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ рдХрд╛рдлреА рдмрд╛рд░ рдРрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред
рд╕рд╛рдордиреЗ: рджреЛрд╕реНрддреЛрдВ, рдореИрдВрдиреЗ рд╕рдм рдХреБрдЫ рдХрд┐рдпрд╛ред рд╢рд▓рдЬрдо рдореЗрдВ рдХреЛрдбред рд░реЛрд▓ рдЖрдЙрдЯ, рдкреНрд▓рд┐рдЬрд╝!
рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ: рдпрд╣ рдХреИрд╕реЗ рд░реЛрд▓ рдЖрдЙрдЯ рдХрд░рддрд╛ рд╣реИ?
рдореЛрд░реНрдЪрд╛: рдЖрдк рдиреЛрдб рдПрдХрддреНрд░ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╡реЗрдм рд╕рд░реНрд╡рд░ рджреНрд╡рд╛рд░рд╛ /build
рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ рд╕реНрдЯреИрдЯрд┐рдХреНрд╕ рд╡рд┐рддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ
рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ: рдиреЛрдб рдХреЗ рдХрд┐рд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рд╣реИ? рдмрд┐рд▓реНрдб рдХрдорд╛рдВрдб рдХреНрдпрд╛ рд╣реИ? рдХрд┐рд╕ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЛ рд╡рд┐рддрд░рд┐рдд рдХрд░рдирд╛ рд╣реИ?
рдирддреАрдЬрддрди, рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рддреИрдирд╛рддреА рдПрдХ рдХрдо рд░реЛрдорд╛рдВрдЪрдХ рдЦреЛрдЬ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреА рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдХреЗ рд▓рд┐рдП рдкрд┐рдЫрд▓реЗ рдорд╛рдорд▓реЛрдВ рд╕реЗ рд╕реНрдерд╛рдиреАрдп рдорд╢реАрди рдкрд░ рдПрдкреАрдЖрдИ рдХреА рддреИрдирд╛рддреА рд╣реИред
рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЖрдкрдХреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдХрд╛рдо рдХрд░реЗрдЧреА, рддреЛ рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рдЙрддреНрдкрд╛рджрди рдкрд░ рднреА рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рдФрд░ рд╣рдореЗрдВ рдХреНрд▓рд╛рд╕рд┐рдХ рд╕рдорд╕реНрдпрд╛ рдорд┐рд▓рддреА рд╣реИ " рдпрд╣ рдореЗрд░реА рдорд╢реАрди рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ ред"

рдбреЙрдХрд░ рдЗрд╕рдореЗрдВ рд╣рдорд╛рд░реА рдорджрдж рдХрд░рддрд╛ рд╣реИред рд╕рдорд╛рдзрд╛рди рд╕рд░рд▓ рд╣реИ, рдЕрдЧрд░ рд╣рдордиреЗ рдбреЙрдХрдЯрд░ рдореЗрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдкреИрдХ рдХрд┐рдпрд╛, рдЬрд┐рд╕рд╕реЗ рдЗрд╕рдХреА рдЕрд╕реЗрдВрдмрд▓реА рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ рд▓реЙрдиреНрдЪ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреА рдЧрдИ, рддреЛ рдпрд╣ рд╕рднреА рд╕рд░реНрд╡рд░реЛрдВ рдкрд░ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЬреЛ рдбреЙрдХрд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред

рдкреНрд░рд╡реЗрд╢ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧрд╛рдЗрдб рдиреАрдЪреЗ рдЖрддрд╛ рд╣реИ:
рд╕рд╛рдордиреЗ: рджреЛрд╕реНрддреЛрдВ, рдореИрдВрдиреЗ рд╕рдм рдХреБрдЫ рдХрд┐рдпрд╛ред рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рдбреЙрдХрд░ рдЫрд╡рд┐ рдПрдХрддреНрд░ рдХреАред рд░реЛрд▓ рдЖрдЙрдЯ, рдкреНрд▓рд┐рдЬрд╝!
рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ: рдареАрдХ рд╣реИ
рдЦреИрд░, рдХреНрдпрд╛, рдФрд░ рдкреНрд░рд╢рдВрд╕рд╛ рдХреЗ рд╕рд╛рде рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдбреЙрдХрд░ рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рдорд╛рд░реЗ рдиреЛрдб рдХреЗ рд╕рд╛рде рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред
рдХрд░реНрддрд╛ рдХреНрдпрд╛ рд╣реИ?
рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдореИрдВ рд╕рдордЭрд╛ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЕрдЧрд░ рдЖрдк рдлреНрд░рдВрдЯ-рдПрдВрдб рдбреЗрд╡рд▓рдкрд░ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рднреА рдпрд╣ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЛ рдЗрд╕ рддрдХрдиреАрдХ рдкрд░ рдмрд╛рд░реАрдХреА рд╕реЗ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдХрднреА рдирд╣реАрдВ рдмрддрд╛рдпрд╛ рдХрд┐ рдпрд╣ рдХреНрдпрд╛ рд╣реИред

рдореИрдВ рд▓реЗрдЦ рдХреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рднрд╛рдЧреЛрдВ рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдФрд░ рдлреНрд░рдВрдЯ-рдПрдВрдб рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЙрдкрдпреЛрдЧреА рд╡реНрдпрдВрдЬрдиреЛрдВ рдХреЛ рджреЗрдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВред
рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛