rpmインストールの中からPythonスクリプトを実行する際に気が付かれるべきことがありますか?rpmインストールプロセスの一部としてPythonスクリプトを実行しています
ここに問題の要点があります。 Djangoアプリケーションを配備するためのカスタムRPMインストーラを作成しました。インストールプロセスの一環として、すべての静的ファイルを収集して定義済みの場所にコピーするDjango管理コマンドを実行したいと考えています。ここでは、これは、コマンドラインから手動で実行したときに次のようになります。問題があることである
%post
# collect static files
pushd .
cd %{installpath}/src/app/
%{__python} manage.py collectstatic --noinput --settings=settings_prod
popd
:
$ python2.6 manage.py collectstatic --noinput
/usr/lib/python2.6/site-packages/reversion/__init__.py:31: UserWarning: django-reversion 1.5 is intended for use with django 1.3.0. You are running django 1.3.1, so some features, such as admin integration, may not work. Please see https://github.com/etianen/django-reversion/wiki/Compatible-Django-Versions
"django_version": format_version(django.VERSION[:3]),
Copying '/usr/lib/python2.6/site-packages/django/contrib/admin/media/img/gis/move_vertex_on.png'
Copying '/usr/lib/python2.6/site-packages/django/contrib/admin/media/img/gis/move_vertex_off.png'
Copying '/usr/lib/python2.6/site-packages/django/contrib/admin/media/img/admin/icon_clock.gif'
Copying '/usr/lib/python2.6/site-packages/django/contrib/admin/media/img/admin/arrow-down.gif'
Copying '/usr/lib/python2.6/site-packages/django/contrib/admin/media/img/admin/inline-restore.png'
...
ので、RPMの一部としてこれを実行するために、私はspecファイルに以下を追加インストール
sudo rpm -U app-0.2.8.18889M-1.x86_64.rpm -vv
...
+ pushd .
//
+ cd /opt/qpsi/app/src/app/
+ /usr/bin/python2.6 manage.py collectstatic --noinput --settings=settings_prod
/usr/lib/python2.6/site-packages/reversion/__init__.py:31: UserWarning: django-reversion 1.5 is intended for use with django 1.3.0. You are running django 1.3.1, so some features, such as admin integration, may not work. Please see https://github.com/etianen/django-reversion/wiki/Compatible-Django-Versions
"django_version": format_version(django.VERSION[:3]),
There is no South database module 'south.db.oracle' for your database. Please either choose a supported database, check for SOUTH_DATABASE_ADAPTER[S] settings, or remove South from INSTALLED_APPS.
+ popd
をしかし、実際に移入されていない出力および静的ディレクトリにコピーされたファイルのない予想されるリストはありません:私はこれを実行すると、私は仕事がキックオフされて見ることができます。
だから、質問は以下のとおりです。
- は私が
- を意識する必要がRPMからPythonスクリプトの実行に関する特別なことは、私は冗長出力を取得するには、rpmコマンドの-vvオプションを使用していますありますPythonスクリプトが起動されると、rpmの内部で何が起こっているのかをさらにデバッグする方法があります。ちょうどそれらをシンボリックリンクについて
おかげ D.
私はDjango 1.3の静的なファイルを扱う新しい方法を利用しているので、これは必要なステップではないと思います。手動でcollectstaticを実行すると、管理メディアに問題はありません。 –