summaryrefslogtreecommitdiff
path: root/Tools/SyncCloudContent.targets
blob: 01455196a50220b0bf96c01ae5cbfb2a077e9dae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<Project ToolsVersion="12.0" DefaultTargets="DownloadBlobsFromAzureTargets" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <UsingTask TaskName="DownloadFromAzure" AssemblyFile="$(BuildToolsTaskDir)Microsoft.DotNet.Build.CloudTestTasks.dll"/>
  <UsingTask TaskName="ListAzureContainers" AssemblyFile="$(BuildToolsTaskDir)Microsoft.DotNet.Build.CloudTestTasks.dll"/>

  <PropertyGroup>
    <DownloadDirectory Condition="'$(DownloadDirectory)' == ''">$(PackagesDir)/AzureTransfer</DownloadDirectory>
  </PropertyGroup>

  <Target Name="DownloadBlobsFromAzureTargets" DependsOnTargets="GetLatestContainerNameFromAzure;DownloadBlobsFromAzure" />

  <!-- Grab latest azure container if a specific azure container is not specified -->
  <Target Name="GetLatestContainerNameFromAzure" Condition="'$(ContainerName)' == ''">
    <ListAzureContainers AccountName="$(CloudDropAccountName)"
                         AccountKey="$(CloudDropAccessToken)"
                         Prefix="$(ContainerNamePrefix)">
       <Output TaskParameter="ContainerNames" ItemName="AzureContainerName" />
    </ListAzureContainers>
    <Message Importance="Low" Text="Container names: %(AzureContainerName.Identity)" />
    <PropertyGroup>
      <ContainerName>%(AzureContainerName.Identity)</ContainerName>
    </PropertyGroup>
  </Target>

  <Target Name="DownloadBlobsFromAzure" Condition="'$(ContainerName)' != ''">
    <DownloadFromAzure AccountName="$(CloudDropAccountName)"
                       AccountKey="$(CloudDropAccessToken)"
                       ContainerName="$(ContainerName)"
                       BlobNamePrefix="$(BlobNamePrefix)"
                       BlobNameExtension="$(BlobNameExtension)"
                       DownloadDirectory="$(DownloadDirectory)"
                       DownloadFlatFiles="$(DownloadFlatFiles)" />
  </Target>

</Project>