免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1217 | 回复: 0
打印 上一主题 下一主题

本地obs的搭建(—) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-20 09:44 |只看该作者 |倒序浏览
    obs(opensuse build system)是meego源码编译的重要工具,也可以说是必备工具,有了它我们可以方便的对源码中各个包进行编译,进而做出meego镜像,所以搭建一个自己的obs系统是meego开发的中国要部分。
 首先我们建立一个opensuse11.2的虚拟机,然后将我们将要用到的工具源添加到openSUSE的repo中。
  1. cd /etc/zypp/repos.d/;
  2. wget http://download.opensuse.org/repositories/openSUSE:/Tools/openSUSE_11.2/openSUSE:Tools.repo
  3. zypper ref
 安装obs-server和相关的包
        
  1. zypper in obs-server obs-signd obs-utils createrepo nfs-client obs-api memcached lighttpd
 设置数据库

 默认开机开启:
  1. chkconfig --add mysql
  2. rcmysql start
 使用系统提供的工具安装数据库:
  1. /usr/bin/mysql_secure_installation
在这里可以输入自己数据库密码,默认是空的
 
创建数据库:
  1. mysql -u root -p
  2. mysql> create database api_production;
  3. mysql> create database webui_production;
将obs的用户信息加到数据库中:
  1. GRANT all privileges
  2. ON api_production.*
  3. TO 'obs'@'%', 'obs'@'localhost' IDENTIFIED BY 'obspasswd';
  4. GRANT all privileges
  5. ON webui_production.*
  6. TO 'obs'@'%', 'obs'@'localhost' IDENTIFIED BY 'obspasswd';
  7. FLUSH PRIVILEGES;
在这里设置obs的密码:obspasswd

为了使用数据库,需要配置OBS:
  1. vi /srv/www/obs/api/config/database.yml
  2. #change the production section
  3. production:
  4. adapter: mysql
  5. database: api_production
  6. username: obs
  7. password: obspasswd

  1. vi /srv/www/obs/webui/config/database.yml
  2. #change the production section
  3. production:
  4. adapter: mysql
  5. database: webui_production
  6. username: obs
  7. password: obspasswd
填充数据库:

  1. cd /srv/www/obs/api/
  2. RAILS_ENV="production" rake db:setup

  3. cd /srv/www/obs/webui/
  4. RAILS_ENV="production" rake db:setup
  1. 设置lighttpd

  2. 网页形式显现出来
  1. # vi /etc/lighttpd/lighttpd.conf
  2. include_shell "cat /etc/lighttpd/vhosts.d/*.conf"
  3. vi /etc/lighttpd/vhosts.d/obs.conf
    $SERVER["socket"] == ":80" {
    rails_app = "webui"
    rails_root = "/srv/www/obs/webui"
    rails_procs = 3
    # production/development are typical values here
    rails_mode = "production"
    log_root = "/srv/www/obs/webui/log"
    include "vhosts.d/rails.inc"
    }
    $SERVER["socket"] == ":81" {
    rails_app = "api"
    rails_root = "/srv/www/obs/api"
    rails_procs = 3
    # production/development are typical values here
    rails_mode = "production"
    log_root = "/srv/www/obs/api/log"

    include "vhosts.d/rails.inc"
    }
    $SERVER["socket"] == ":82" {
    server.name = "127.0.0.1"   # 这里设置的是虚拟机的IP地址,一般虚拟机就是localhost 即127.0.0.1
    server.document-root = "/srv/obs/repos/"
    dir-listing.activate = "enable"
    }
  4. # vi /etc/lighttpd/modules.conf
    server.modules = (
    "mod_access",
    # "mod_alias",
    # "mod_auth",
    # "mod_evasive",
    # "mod_redirect",
    "mod_rewrite",
    # "mod_setenv",
    # "mod_usertrack",
    )

    ##
    ## mod_magnet
    ##
    include "conf.d/magnet.conf"

    ##
    ## FastCGI (mod_fastcgi)
    ##
    include "conf.d/fastcgi.conf"
服务器地址确认,将相关文件的服务器地址修改为虚拟机所在地址:

  1. # vi /srv/www/obs/webui/config/environments/production.rb
  2. FRONTEND_HOST = "127.0.0.1"
  3. FRONTEND_PORT = 81
  4. FRONTEND_PROTOCOL = 'http'
  5. BUGZILLA_HOST = nil
  6. DOWNLOAD_URL = "http://127.0.0.1:82"
  7. ICHAIN_MODE = "off"
  8. BASE_NAMESPACE = nil
  9. # vi /srv/www/obs/api/config/environments/production.rb
    SOURCE_HOST = "127.0.0.1"
设置服务器开机启动选项
  1. chkconfig --add memcached lighttpd obsapidelayed obswebuidelayed
  2. chkconfig --add obsrepserver obssrcserver obsscheduler obsdispatcher obspublisher obswarden obssigner
修改网页使用权限
  1. chown -R lighttpd.lighttpd /srv/www/obs/{api,webui}
配置obs服务器
  1. # vi /usr/lib/obs/server/BSConfig.pm

  2.     my $hostname = '127.0.0.1';
  3. our $repodownload = "http://$hostname:82/";
启动obs服务器
  1. # rcmemcached start
  2. # rclighttpd start
  3. # rcobsapidelayed start
  4. # rcobswebuidelayed start
这里就可以在网页上打开我们的obs了(http://127.0.0.1), 80端口是主界面,81端口是接口,82端口是仓库(现在还没任何数据产生)
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP