appveor の設定に問題があります。生成された Web デプロイ パッケージを Appveyor アーティファクト フィードに公開したいと考えています。appveyor.yml で Web デプロイ パッケージをビルドすることを選択しました。
build:
project: Apps/MyProject.sln
publish_wap: true
ログから、2 つの webdeploy パッケージが生成されていることがわかります。
[00:00:24] Package "Backend.zip" is successfully created as single file at the following location:
[00:00:24] file:///C:/Users/appveyor/AppData/Local/Temp/1/cul57h0ak9
これらのパッケージをファイル名で参照するだけで、これらのパッケージを github リリースにプッシュできます。
deploy:
- provider: GitHub
tag: v$(appveyor_build_version)
auth_token:
secure: stuff
artifact: api.zip, backend.zip
force_update: false
on:
DEPLOY: true
ただし、これらのパッケージを Appveyor アーティファクト フィードに公開することはできません。これは、「デプロイ」とは異なり、アーティファクトの正確なパスを知る必要があるように思われるためです。Appveyour は、これらを生成するときに一時フォルダーを使用しているように見えるため、パスを知ることはかなり絶望的です。ビルド エージェントのユーザーの一時ファイル ディレクトリをコールド トラバースしてそれらを探しましたが、それは少しハッキリしているように思えます。
だから、私の質問は次のとおりです。生成されたzipをアーティファクトフィードに送信するようにappveyorに確実に指示するにはどうすればよいですか?
(Visual Studio で「パブリッシュ ターゲット」を構成し、代わりにそれを使用できることはわかっていることに注意してください。ただし、「publish_wap」オプションの背後にある全体的な考え方を理解できる限り、すべてのプロジェクトでそれを行う必要はありません。 msbuild プロジェクト内にビルド固有の構成を含める必要がないように、コードを明確に分離しようとしています)。