web-dev-qa-db-ja.com

MSBuildコミュニティタスクドキュメント

私だけですか、このプロジェクトのドキュメントは本当に不足していますか?

FtpCreateRemoteDirectoryとFTP機能の一般的な使用方法を探していますが、何も見つからないようです。

FtpCreateRemoteDirectoryをグーグルすると、プロジェクトのソースコードのみが表示されます...

27
Bertvan

ドキュメンテーションはあなたが本当に乏しいと言っているようなものです。私が見つけた最高のものは、ここで最新のソースコードをダウンロードすることです https://github.com/loresoft/msbuildtasks

最新のドキュメントは、ソースをダウンロードせずにGitHubから直接表示することもできます。 https://github.com/loresoft/msbuildtasks/tree/master/Documentation

MSIを使用してインストールする場合は、インストールフォルダー(C:\ Program Files(x86)\ MSBuild\MSBuildCommunityTasks\MSBuild.Community.Tasks.xsd)にあるXSDを見て、少なくともどのタスクが利用可能かを確認することもできます。そしてそれらに関連するドキュメント。

24

Githubの最新リリースには、ドキュメントは含まれていません( issue#24 )。

Tigrisの古いリリースには、CHMファイルの形式のドキュメントが含まれています。MSBuild.Community.Tasks.msiを プロジェクトダウンロードページ からインストールすると、ドキュメントはインストールフォルダーにあります。一般的なパスは、「C:\ Program Files(x86)\ MSBuild\MSBuildCommunityTasks\MSBuild.Community.Tasks.chm」です。

9
Edward Brey

ドキュメントは崇高ですが、完全に欠落しています。ただし、コードは非常に読みやすいです-少なくとも、利用可能なタスクとその入出力を見つけるために。

私のやり方:

  1. Jetbrains dotPeek (またはその他の.NET Reflectorフリークローン)のような.NETデコンパイラをインストールします。

  2. PM> Install-Package MSBuildTasks(VSから)または
    > nuget install MSBuildTasks(cmd行から)

  3. 開いた slnDir\.build\MSBuild.Community.Tasks.dll上記のdotPeekで、名前空間に移動しますMSBuild.Community.Tasksをクリックして、目的のタスクをダブルクリックします。

  4. 利益!

enter image description here

8

同じ情報を探していたのでこれに遭遇したので、FTPフォルダーを作成し、内容を新しい場所にコピーする完全なMSBuildターゲットの例を追加することもできます。 NBサンプルは安全なサイトにアップロードされるため、状況に応じてポート番号を変更する必要がある場合があります。

<Project DefaultTargets="Build" xmlns="http://schemas.Microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets" />

  <Target Name="MSBuildFTP">    

    <PropertyGroup>
        <ftpHost>Your Host</ftpHost>
        <ftpUser>Your username</ftpUser>
        <ftpPass>you guessed it.. your password</ftpPass>
    </PropertyGroup>

    <Message Text="Create the directory if it does not exist - FtpUploadDirectoryContent fails if the dir does not exist" /> 
    <FtpCreateRemoteDirectory 
        ServerHost="$(ftpHost)"
        Port="21"
        Username="$(ftpUser)"
        Password="$(ftpPass)"
        RemoteDirectory="SSL/secure/"
        />

    <Message Text="Copy the contents of our directory to the ftp location" /> 
    <FtpUploadDirectoryContent
        ServerHost="$(ftpHost)"
        Port="21"
        Username="$(ftpUser)"
        Password="$(ftpPass)"
        LocalDirectory="deployment"
        RemoteDirectory="SSL/secure"
        Recursive="false"
        />
  </Target>
</Project>
3

XSDを使用して、使用可能なオプションを確認することもできます。

乾杯。

1
Eddietec