web-dev-qa-db-ja.com

python applicationのrpmを作成する方法

私は、cherrypyとflask-restfulを使用してWebサービスを提示する単純なアプリケーション(1つの.pyファイルのみ)を持っています。私の開発環境はWindowsです。 Python 3.5.2を使用し、virtualenvを作成して使用してプロジェクトで作業します。

これをLinuxシステムにデプロイする必要があります。 Linuxマシンにインストールして実行できるように、このための「RPM」を作成するように依頼されました。

私はグーグルでいくつかのドキュメントを読みました:

しかし、これをLinuxシステムにデプロイするために実行する必要のある手順については非常によくわかりません。よろしくお願いします。

9
Sam

これはtreeコマンドによって出力されるミニデモ構造です。color_printはパッケージ名とディレクトリです。

.
├── color_print
│   ├── color_print.py
│   └── __init__.py
├── __init__.py
└── setup.py

これがデモ用のsetup.pyの例です

from setuptools import setup

setup(name='color_print',
    version='0.1',
    description='Color String',
    url='http://github/xxxx/color_print/',
    author='Joe Bob',
    author_email='[email protected]',
    license='MIT',
    packages=['color_print'],
    Zip_safe=False)

ディレクトリを変更する必要はありません。この1つのコマンドを実行してrpmをビルドします。

python setup.py bdist_rpm

これが出力です、それはとても簡単です:

-bash-4.1$ find . -name "*.spec"
./build/bdist.linux-x86_64/rpm/SPECS/color_print.spec
-bash-4.1$ find . -name "*.rpm"
./dist/color_print-0.1-1.noarch.rpm
./dist/color_print-0.1-1.src.rpm

実際には、スペックファイルを手動で変更する必要があります。実行します

rpmbuild -ba ./build/bdist.linux-x86_64/rpm/SPECS/color_print.spec
4
Gang