1

公開した後、Webプロジェクトで必要なすべてを実行するPythonスクリプトがあります。現在のところ、Webプロジェクトで「公開」をローカルHDに使用し、手動で.pyを実行すると、必要な結果(縮小、名前の変更、ジャンクの削除など)が得られます。その後、FTPを使用して共有ホスティングに出力をアップロードし、問題ありません。

現在、Windows Azureに移行していますが、.pyの実行を統合する通常の方法が見つからなかったため、クラウドで使用できる「Azureパッケージ」が作成されます(または手動で行う方法もあります)。

私は本当に迷っています。HTMLの一部のコードを変更し、ソリューションの元のHTMLを変更したくないのでビルド後ではありません。公開/パッケージ化されたものだけです。

4

1 に答える 1

2

同様の状況で、各 Web プロジェクトのビルド後に、各プロジェクトのビルド後のイベントからスクリプトを実行し、すべてのファイルを別の展開フォルダーにコピーします。(存在する場合は最初にすべてのファイルを削除し、空のディレクトリまたは役に立たないディレクトリをクリーンアップするなどの変更を行います)

ステップ 1 - ビルド後のスクリプトを作成する

私はバッチファイルとして私のものを作成しましたが、何でも使用できます。

このスクリプトには、次のような行があります

RMDIR "C:\Visual Studio 2010\Projects\Promotion\Deployment\FacebookApp" /S /Q
xcopy "C:\Visual Studio 2010\Projects\Promotion\FacebookApp" "C:\Visual Studio 2010\Projects\Promotion\Deployment\FacebookApp\" /s /e
RMDIR "C:\Visual Studio 2010\Projects\Promotion\Deployment\FacebookApp\obj" /S /Q
RMDIR "C:\Visual Studio 2010\Projects\Promotion\Deployment\FacebookApp\Styles" /S /Q

ビルド後のイベントにスクリプトを追加する

PostBuildEvent

手順 2 - 新しいフォルダーを指すように Azure プロジェクトを変更します

次に、開発フォルダーを直接指定するのではなく、プロジェクトが含まれるデプロイ フォルダーを指定するように Azure プロジェクトをセットアップします。

サービス定義

ServiceDefinition.csdef では、ここに私の例があります

<Site name="FacebookApp" physicalDirectory="..\Deployment\FacebookApp">
    <Bindings>
      <Binding name="Endpoint1" endpointName="Endpoint1" hostHeader="sub.domain.com" />
      <Binding name="Endpoint2" endpointName="Endpoint2" hostHeader="sub.domain.com" />
    </Bindings>
</Site>

(Endpoint1 がポート 80 の通常の http であり、Endpoint2 がポート 443 の https であることに疑問がある場合に備えて)

ここで行うことは、プロジェクトを再構築し、Azure プロジェクトで [発行] をクリックするだけです。これですべて完了です。展開して更新するまで30分待った後:)

于 2012-04-07T12:53:24.847 に答える