рдУрдкрди рдмрд┐рд▓реНрдб рд╕рд░реНрд╡рд┐рд╕ - рдЕрдкрдиреА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдмрдирд╛рдПрдВ

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

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

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдСрд╕ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ (рдпрд╣ рдореБрдЦреНрдп рдУрдкрдирдПрд╕рдпреВрдПрд╕ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╣реИ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдЗрд╕реЗ рдирдП рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рддреБрд░рдВрдд рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред рдпрд╣ Apache2, MySQL-server рдЖрджрд┐ рдЬреИрд╕реЗ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред
#zypper addrepo download.opensuse.org/distribution/12.1/repo/oss/ openSUSE-12.1-Oss 

рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЬреЛрдбрд╝реЗрдВ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рд░реНрд╡рд░ рд╕реНрд╡рдпрдВ рдмрдирд╛рдПрдБред
 #sudo zypper addrepo zypper addrepo download.opensuse.org/repositories/openSUSE:/Tools:/Unstable/openSUSE_12.1/openSUSE:Tools:Unstable.repo #sudo zypper refresh 

рдЕрдм рдЖрдк рд╕реНрдерд╛рдкрдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
 #sudo zypper in obs-server obs-api 

рд╕реНрдерд╛рдкрдирд╛ рдЖрд╡рд╢реНрдпрдХ рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рдПрдХ рдкреИрдХреЗрдЯ рдХреЛ рдЦреАрдВрдЪ рд▓реЗрдЧреА, рдЬреИрд╕реЗ рдХрд┐ рдЕрдкрд╛рдЪреЗ, mysql- рд╕рд░реНрд╡рд░, рд░реВрдмреАрдЧреИрдо, рдЖрджрд┐ред рдХреЗрд╡рд▓ 90MB рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред
рдЬрдм рд╕реНрдерд╛рдкрдирд╛ рдкреВрд░реА рд╣реЛ рдЬрд╛рддреА рд╣реИ, рддреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреБрдЫ рдмрджрд▓рд╛рд╡ рдХрд░реЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, / etc / sysconfig / obs-server рдЦреЛрд▓реЗрдВ, рдЙрдиреНрд╣реЗрдВ рдирд┐рдореНрди рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЦреЛрдЬреЗрдВ рдФрд░ рд▓рд╛рдПрдБ:
 OBS_SRC_SERVER=┬лlocalhost:5352┬╗ OBS_REPO_SERVERS=┬лlocalhost:5252┬╗ 

рд╣рдо рд╕реЗрд╡рд╛рдПрдВ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ:
 rcobsrepserver start rcobssrcserver start rcobsscheduler start rcobsdispatcher start rcobspublisher start 

рд╣рдо рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдФрд░ рдЙрдирдХреЗ рднрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВ:
 mysql> create database api_production; mysql> create database webui_production; mysql> create user 'obs'@'%' identified by 'obspassword'; mysql> create user 'obs'@'localhost' identified by 'obspassword'; mysql> GRANT all privileges ON api_production.* TO 'obs'@'%', 'obs'@'localhost'; mysql> GRANT all privileges ON webui_production.* TO 'obs'@'%', 'obs'@'localhost'; mysql> FLUSH PRIVILEGES; 

рдЖрдЗрдП mysql API рдФрд░ WebUI рд╕реЗ рдХрдиреЗрдХреНрд╢рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрд┐рд╕реА рднреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ, рдлрд╝рд╛рдЗрд▓реЗрдВ /srv/www/obs/api/config/database.yml рдЦреЛрд▓реЗрдВ рдФрд░
/srv/www/obs/webui/config/database.yml , рдирд┐рдореНрди рдмреНрд▓реЙрдХ рдвреВрдВрдвреЗрдВ рдФрд░ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:
 production: adapter: mysql2 database: api_production username: obs password: obspassword 

рдбреЗрдЯрд╛рдмреЗрд╕ рднрд░реЗрдВ рдФрд░ рдЯреИрдореНрдк рдФрд░ рд▓реЙрдЧ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдЕрдзрд┐рдХрд╛рд░ рд╕реЗрдЯ рдХрд░реЗрдВ
 cd /srv/www/obs/api/ sudo RAILS_ENV=┬лproduction┬╗ rake db:setup sudo chown -R wwwrun.www log tmp cd /srv/www/obs/webui/ sudo RAILS_ENV=┬лproduction┬╗ rake db:setup sudo chown -R wwwrun.www log tmp 

рдЕрдкрд╛рдЪреЗ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред Apache2-mod_xforward рдореЙрдбреНрдпреВрд▓ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрд┐рд╕реА рдЕрдиреНрдп рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред
 zypper addrepo download.opensuse.org/repositories/openSUSE:/Tools/SLE_11/ Tools-SLE zypper refresh zypper in apache2-mod_xforward 

рдЖрд╡рд╢реНрдпрдХ рдореЙрдбреНрдпреВрд▓ рдХреЛ / etc / sysconfig / apache2 рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред
 APACHE_MODULES="тАж passenger rewrite proxy proxy_http xforward headers" 

рдПрд╕рдПрд╕рдПрд▓ рд╕рдорд░реНрдерди рд╕рдХреНрд╖рдо рдХрд░реЗрдВ рдФрд░ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВред рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓реЗрдВ / etc / sysconfig / apache2 рдФрд░ рд▓рд╛рдЗрди рдЦреЛрдЬреЗрдВ:
 APACHE_SERVER_FLAGS="-DSSL" 

 mkdir /srv/obs/certs openssl genrsa -out /srv/obs/certs/server.key 1024 openssl req -new -key /srv/obs/certs/server.key -out /srv/obs/certs/server.csr openssl x509 -req -days 365 -in /srv/obs/certs/server.csr -signkey /srv/obs/certs/server.key -out /srv/obs/certs/server.crt cat /srv/obs/certs/server.key /srv/obs/certs/server.crt > /srv/obs/certs/server.pem 

Set_xforward рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ: /srv/www/obs/webui/config/options.yml рдФрд░ /srv/www/obs/api/config/options.yml рдкрд░ рд╕рд╣реА

рдЕрдм рдПрдХ рдмрд╣реБрдд рд╣реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рд░реАрдХрд┐рдпреЛрдВред рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓реЗрдВ / srv / www / obs / webui / config / environment / production.rb , рд▓рд╛рдЗрди рдХреА рддрд▓рд╛рд╢ рдХрд░реЗрдВ CONFIG ['frontend_host'] = "рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ" рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╕реНрдерд╛рдиреАрдпрд╣реЛрд╕реНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рд░реНрд╡рд░ рдирд╛рдо рд▓рд┐рдЦреЗрдВ рдЬреЛ рд╣рдордиреЗ рд╕рд░реНрдЯрд┐рдлрд┐рдХреЗрдЯ рдмрдирд╛рддреЗ рд╕рдордп рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдерд╛ред
рдпрджрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЬрдм рдЖрдк WebUI рдпрд╛ API рдХреЛ рдЦреЛрд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ "рд╣реЛрд╕реНрдЯрдирд╛рдо рд╕рд░реНрд╡рд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛" рддреНрд░реБрдЯрд┐ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧреАред

рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░реЗрдВред
 rcapache2 restart rcobsapidelayed restart 

рд╣рдо рдкреНрд░рджрд░реНрд╢рди рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВред
рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЕрдкрд╛рдЪреЗ рдПрдкреАрдЖрдИ рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП servername:444.
WebUI рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛ servername servername ред
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ / рдЦреБрд▓рдиреЗ рдХрд╛ рд╕рдордп рд╣реИред
рдореИрдВ WebUI рдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рдзреНрдпрд╛рди рдирд╣реАрдВ рджреВрдВрдЧрд╛ред рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╕рд╣рдЬ рдФрд░ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред

рдУрдПрд╕рд╕реА рдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рдмреЗрд╣рддрд░ рдзреНрдпрд╛рди рджреЗрдВ (рдУрдкрдирд╕реВрдЯ рдмрд┐рд▓реНрдб рд╕рд░реНрд╡рд┐рд╕ рдХрдорд╛рдВрдбрд░)ред рдпрд╣ рдкреИрдХреЗрдЬ рд▓рдЧрднрдЧ рд╕рднреА рд▓рд┐рдирдХреНрд╕ рд╡рд┐рддрд░рдг рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИред рдЗрд╕рдХреЗ рд╕рд╛рде, рд╣рдо рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕, рдкреИрдХреЗрдЬ, рд╕реНрд░реЛрдд рдлрд╛рдЗрд▓ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдореИрдВ рдЙрдмрдВрдЯреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ:
 apt-get install osc 

рдЕрдЧрд▓рд╛ рдХрджрдо рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдирд╛ рд╣реИ рдЬреЛ рд╣рдорд╛рд░реЗ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЖрдк рдЗрд╕реЗ рдХрд┐рд╕реА рднреА рдСрдХреНрд╕ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрд╡рдд: рдореЛрдб рдореЗрдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдСрд╕ рдПрд▓рдПрд╕ред рд▓реЗрдХрд┐рди рдирд┐рдореНрди рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рд╣реЛрдо рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рдЬрдбрд╝ рдореЗрдВ .oscrc рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдирд╛ рдЖрд╕рд╛рди рд╣реИ:
.oscrc
 [рд╕рд╛рдорд╛рдиреНрдп]
 apiurl = https: // servername: 444
 use_keyring = 0

 [https: // servername: 444]
 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ = рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ
 рдкрд╛рд╕ = рдЦреБрд▓рдирд╛
 рдХреАрд░рд┐рдВрдЧ = 0


Servername рдХреЗ рдмрдЬрд╛рдп рд╣рдо рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдХрд╛ рдирд╛рдо рд▓рд┐рдЦрддреЗ рд╣реИрдВред рдирд╛рдо рдлрд┐рд░ рд╕реЗ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рджреМрд░рд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдПрдХ рд╕реЗ рдореЗрд▓ рдЦрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрдиреНрдпрдерд╛ рдЖрдкрдХреЛ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реЗрдЧреА "рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕рддреНрдпрд╛рдкрди рддреНрд░реБрдЯрд┐: рд╕рд╣рдХрд░реНрдореА рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕рд╛рдорд╛рдиреНрдп рдирд╛рдо рд╣реЛрд╕реНрдЯ рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛"
рд╣рдо рдУрдПрд╕ рдПрд▓рдПрд╕ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдХрд░ рдХрдиреЗрдХреНрд╢рди рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВ (рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рд╕реВрдЪреА)ред
рд╣рдо рдкреНрд░рдорд╛рдг рдкрддреНрд░ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред
 The server certificate failed verification Would you like to 0 тАФ quit (default) 1 тАФ continue anyways 2 тАФ trust the server certificate permanently 9 тАФ review the server certificate Enter choice [0129]: 2 

рдЖрдЗрдП рдПрдХ рдирдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред
 osc meta prj -e MyProject 

рдЬрд╣рд╛рдБ MyProject рдЖрдкрдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╣реИред
рдЙрд╕рдХреЗ рдмрд╛рдж, рдирдП рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреА xml-file рдЦреБрд▓реЗрдЧреА, рдЬрд╣рд╛рдБ рдЖрдкрдХреЛ рдХрдо рд╕реЗ рдХрдо рд╢реАрд░реНрд╖рдХ рдФрд░ рд╡рд┐рд╡рд░рдг рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣рд╛рдВ рдЖрдк рдЙрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЕрдирд╕реБрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдХреМрди рд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдкреИрдХреЗрдЬ рдПрдХрддреНрд░ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдЙрджрд╛рд╣рд░рдг xml рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди:
project.xml
 <рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо = "MyProject">
   <рд╢реАрд░реНрд╖рдХ> MyProject </ рд╢реАрд░реНрд╖рдХ>
   <рд╡рд┐рд╡рд░рдг> MyTestProject </ рд╡рд┐рд╡рд░рдг>
   <рд╡реНрдпрдХреНрддрд┐ рдХреА рднреВрдорд┐рдХрд╛ = "рдЕрдиреБрд░рдХреНрд╖рдХ" рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ = = "рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ" />
   <рд╡реНрдпрдХреНрддрд┐ рдХреА рднреВрдорд┐рдХрд╛ = "рдмрдЧрд╛рдЙрди" рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо = "рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ" />
   <рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВ>
     <рдЕрдХреНрд╖рдо />
   </ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВ>
   <рдмрд┐рд▓реНрдб>
     <рд╕рдХреНрд╖рдо />
   </ рдмрд┐рд▓реНрдб>
   <Debuginfo>
     <рдЕрдХреНрд╖рдо />
   </ Debuginfo>
   <рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдирд╛рдо = "openSUSE_Factory">
     <рдкрд╛рде рдкреНрд░реЛрдЬреЗрдХреНрдЯ = "рдУрдкрдирд╕реЗрд╕: рдлреИрдХреНрдЯрд░реА" рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА = "рдорд╛рдирдХ" />
     <рдХрдЯреНрдЯрд░> x86_64 </ рдХрдЯреНрдЯрд░>
     <рдХрдЯреНрдЯрд░> i586 </ рдХрдЯреНрдЯрд░>
   </ рднрдВрдбрд╛рд░>
   <рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдирд╛рдо = "openSUSE_11.2">
     <рдкрд╛рде рдкреНрд░реЛрдЬреЗрдХреНрдЯ = "рдУрдкрдирд╕реЗрд╕реНрдЯ: 11.2" рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА = "рдорд╛рдирдХ" />
     <рдХрдЯреНрдЯрд░> x86_64 </ рдХрдЯреНрдЯрд░>
     <рдХрдЯреНрдЯрд░> i586 </ рдХрдЯреНрдЯрд░>
   </ рднрдВрдбрд╛рд░>
   <рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдирд╛рдо = "openSUSE_11.1">
     <рдкрд╛рде рдкреНрд░реЛрдЬреЗрдХреНрдЯ = "рдУрдкрдирд╕реЗрд╕: 11.1" рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА = "рдорд╛рдирдХ" />
     <рдХрдЯреНрдЯрд░> x86_64 </ рдХрдЯреНрдЯрд░>
     <рдХрдЯреНрдЯрд░> i586 </ рдХрдЯреНрдЯрд░>
   </ рднрдВрдбрд╛рд░>
   <рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдирд╛рдо = "рдлреЗрдбреЛрд░рд╛_12">
     <рдкрде рдкрд░рд┐рдпреЛрдЬрдирд╛ = "рдлреЗрдбреЛрд░рд╛: 12" рднрдВрдбрд╛рд░ = "рдорд╛рдирдХ" />
     <рдХрдЯреНрдЯрд░> x86_64 </ рдХрдЯреНрдЯрд░>
     <рдХрдЯреНрдЯрд░> i586 </ рдХрдЯреНрдЯрд░>
   </ рднрдВрдбрд╛рд░>
   <рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдирд╛рдо = "SLE_11">
     <рдкрде рдкрд░рд┐рдпреЛрдЬрдирд╛ = "SUSE: SLE-11" рднрдВрдбрд╛рд░ = "рдорд╛рдирдХ" />
     <рдХрдЯреНрдЯрд░> x86_64 </ рдХрдЯреНрдЯрд░>
     <рдХрдЯреНрдЯрд░> i586 </ рдХрдЯреНрдЯрд░>
   </ рднрдВрдбрд╛рд░>
 </ рдкрд░рд┐рдпреЛрдЬрдирд╛>


рдкреИрдХреЗрдЬ рдЙрд╕реА рддрд░рд╣ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
 osc meta pkg -e MyProject MyPackage 

рдЬрд╣рд╛рдБ MyProject рдЖрдкрдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рд╣реИ, MyPackage рдЖрдкрдХрд╛ рдирдпрд╛ рдкреИрдХреЗрдЬ рд╣реИред
рдЕрдм рдЬрдм рдкрд░рд┐рдпреЛрдЬрдирд╛ рдФрд░ рдкреИрдХреЗрдЬ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рд╣рдореЗрдВ рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рд░реНрд╡рд░ рдкрд░ рднреЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рд╕реЗ рдмрд╛рдЗрдирд░реА рдкреИрдХреЗрдЬ рдПрдХрддреНрд░ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЕрдкрдиреЗ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реА рдорд╢реАрди рдкрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдПрдХ рд╕реНрдерд╛рдиреАрдп рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБред
 osc co MyProject 

рдЙрд╕рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ MyProject / MyPackage рдХреА рдкрджрд╛рдиреБрдХреНрд░рдо рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рд╣рдордиреЗ рдЕрдкрдиреЗ рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ MyPackage рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд░рдЦрд╛, рдФрд░ рдлрд┐рд░ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝ рджрд┐рдпрд╛:
 osc add MyProject/MyPackage/MyFiles 

рдФрд░ рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ
 osc ci MyProject/MyPackage -m ┬лYour comment┬╗ тАУskip-validation 

рд╕рд░реНрд╡рд░ рдХреЛ рд╕реНрд░реЛрдд рдорд┐рд▓рдиреЗ рдХреЗ рдмрд╛рдж, рд╕рд┐рд╕реНрдЯрдо рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмрд╛рдЗрдирд░реА рдкреИрдХреЗрдЬ рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИред
рд╣рдо рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ
 osc results MyProject/MyPackage 

рдЕрдм рд╣рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ .repo рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рдорд┐рд▓ рдЧрдпрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:
 osc repourls 

рдпрд╣реА рд╣реИ, рдЕрдм рд╣рдо рдЕрдкрдиреА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рд▓рд┐рдирдХреНрд╕ рдорд╢реАрдиреЛрдВ рд╕реЗ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреЗ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдм, рдЬреИрд╕рд╛ рдХрд┐ рд╡рд╛рджрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореИрдВ рдХрдВрд╕реЛрд▓ рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдФрд░ рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ рд╕реЗ рдХрдорд╛рдВрдб рдХреА рдПрдХ рдЫреЛрдЯреА рд╕реВрдЪреА рдкреНрд░рджрд╛рди рдХрд░реВрдВрдЧрд╛ред
 #  . osc ls # . osc meta prj -e ProjectName # . osc meta pkg -e ProjectName PackageName #   . osc rdelete ProjectName/PackageName #   . osc co ProjectName #     . osc add ProjectName/PackageName/YourFiles #  . osc rremove ProjectName PackageName SourceName osc update ProjectName #   . osc ci ProjectName -m ┬лYour comment┬╗ --skip-validation #   . osc ci Project Name/Package Name -m ┬лYour comment┬╗ #   osc results Project Name/Package Name #   (   ). osc buildlog Platform Arch (osc buildlog xUbuntu_12.04 i586) # URLs .repo  (   ) osc repourls 

Source: https://habr.com/ru/post/In160609/


All Articles