python程序打包rpm包

python程序及其依赖包打包成rpm包部署

项目中要求将一个python脚本打包成rpm包,方便yum安装,研究了一遍,把其中的过程记录一下。python

1.首先一个简单测试脚本
#/usr/bin/env python
#-*- coding=utf-8 -*-
print 'this is test'

这个脚本运行结果一目了然。测试

2.安装pyinstaller

经过pip命令安装该组件:pip install pyinstallerui

3.经过pyinstaller打包脚本及其依赖
pyinstaller -F test.py

将生成的dist目录下生成的test文件打包为test.tar文件this

4.使用 rpmbuild 制做成rpm 包

安装rpmbuild 组件及生成相关目录code

yum install rpmdevtools
yum install -y rpm-build
rpmdev-setuptree

以上命令运行成功后会在当前用户目录下生成rpmbuild目录,该目录会包含如下子目录ip

--BUILD #编译以前,如解压包后存放的路径
--BUILDROOT #编译后存放的路径
--RPMS #打包完成后rpm包存放的路径
--SOURCES #源包所放置的路径
--SPECS #spec文档放置的路径
--SPRMS #源码rpm包放置的路径utf-8

将3步骤生成的test.tar 文件考入SOURCES目录,编辑test.spec文件文档

Name:test
Version:1.0
Release:0%{?dist}
Summary: test

Group:test
License:GPL
Source0:test.tar
BuildRoot:%(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
%description -l zh_CN
"the tools for test"
%prep
%setup -c -n test
%install
mkdir -p %{buildroot}/%{_usr}/bin
install test %{buildroot}/%{_usr}/bin/test1.0

%files
%doc
/%{_usr}/bin/test1.0

该文件中具体的含义后续会有文章具体解释。部署

运行命令源码

rpmbuild -ba SPECS/test.spec

命令成功后会在RPMS目录中生成相应的rpm包

相关文章
相关标签/搜索