OBS (open build service ) 是OpenSUSE 开发的用于rpm构建的一个平台服务,使用方便,且提供了批量自动化管理功能,已成为linux开源社区用于RPM包构建的标准工具。
OBS打包服务的大致工作流程是:
1、本地准备好源代码包;
2、本地编辑好SPEC文件;
3、提交所有编译代码到OBS服务器;
4、OBS服务器自动根据SPEC文件进行编译链接源代码,打包RPM二进制包,并检查软件包信息。
OSC为 OBS 命令行客户端,比web页面操作更加快捷且便于批量。下面列一些常用命令
#下载获取远程项目的某一个单包
osc co xxxProjuectName/PackageName
例如:osc co home:jiangtaigong:branches:centosOS:KernelInDev keepalived
#下载获取远程项目的某一个单包的源码:
cd "$PROJECT/$PACKAGE"; osc up -S;
#删除_service开头的源码
rm -f _service; for file in `ls _service:*`; do newfile=${file##*:}; mv -v $file $newfile;done
#提交重命名后的修改
osc addremove
#更新本地代码为最新的
osc update
#类似git commit + push的动作,直接推送修改后的内容到远程OBS仓库中去
osc ci -m1
#如果你是需要本地新增一个文件,再提交到OBS,可以使用add
osc add *