0

XMPP ボットとカスタム SMTP サーバーを組み込んだ Web サイトを開発しています (主にこれらのサービスはコマンドと応答を処理します)。ローカルで開発できるシステムをセットアップし、変更をステージング サーバーにプッシュし、最後に運用システムにプッシュしたいと考えています。(基本的に、現在ライブサーバーで開発しています。)

私は Python を使用しており、ファブリックについて少し読んでいますが、メンタル ブロックに陥っています。

私は sqlalchemy-migrate を使用してデータベースのバージョンを管理し、ホスト用に基本的な DNS をセットアップしています。さらに、これら 2 つのサービスの両方が使用するライブラリを現在取り組んでいます (私のグローバル サイト パッケージ ディレクトリにあります)。何かを変更した後、この卵を展開します。これも理想的には展開可能ですが、正しいバージョンでのみ利用可能です。stage-lib と live-lib の 2 つのバージョンが必要ですか? これはpythonの卵で可能ですか?

これらのサービスのステージング サーバーとして機能する別のホストが必要ですか? または、something@staging.myhost.com が 25 以外のポートに接続されていることを DNS に伝える方法はありますか?

現在、stage_smtp、stage_xmpp、live_smtp、live_xmpp などのメソッドを含む fabfile があります。

4

1 に答える 1

2

部分的な回答:DNSには、SRVレコードがある場合でも、非標準のSMTPポートに接続するように指示する方法がありません。(XMPPは行います。)

したがって、電子メールを送信するには、次のようなことを行う必要があります。

import smtplib
server = smtplib.SMTP('localhost:2525')
server.sendmail(fromaddr, toaddrs, msg)
server.quit()
于 2009-11-04T18:28:57.690 に答える