mirror of
https://gitlab.com/buildfeed/BuildFeed.git
synced 2024-03-22 21:10:34 +08:00
Remove BCL deps, Add Roslyn, Model tweaks
This commit is contained in:
parent
9c987a8060
commit
b36670c999
|
@ -1,4 +1,6 @@
|
|||
using System.Configuration;
|
||||
using BuildFeed.Models;
|
||||
using System.Configuration;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BuildFeed
|
||||
{
|
||||
|
@ -26,5 +28,11 @@ static MongoConfig()
|
|||
ConfigurationManager.AppSettings["data:MongoDB"] :
|
||||
"MongoAuth";
|
||||
}
|
||||
|
||||
public static void SetupIndexes()
|
||||
{
|
||||
Build b = new Build();
|
||||
b.SetupIndexes();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,5 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" />
|
||||
<Import Project="..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
|
@ -83,16 +85,11 @@
|
|||
<HintPath>..\packages\Microsoft.ApplicationInsights.1.2.3\lib\net45\Microsoft.ApplicationInsights.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\lib\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Microsoft.Threading.Tasks">
|
||||
<HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Threading.Tasks.Extensions">
|
||||
<HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.Extensions.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Threading.Tasks.Extensions.Desktop">
|
||||
<HintPath>..\packages\Microsoft.Bcl.Async.1.0.168\lib\net40\Microsoft.Threading.Tasks.Extensions.Desktop.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MongoDB.Bson, Version=2.2.0.262, Culture=neutral, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\MongoDB.Bson.2.2.0\lib\net45\MongoDB.Bson.dll</HintPath>
|
||||
<Private>True</Private>
|
||||
|
@ -1426,7 +1423,8 @@
|
|||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Bcl.Build.1.0.21\build\Microsoft.Bcl.Build.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props'))" />
|
||||
<Error Condition="!Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props'))" />
|
||||
</Target>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
|
|
|
@ -23,6 +23,8 @@ protected void Application_Start()
|
|||
|
||||
ModelBinders.Binders.Add(typeof(DateTime), db);
|
||||
ModelBinders.Binders.Add(typeof(DateTime?), db);
|
||||
|
||||
MongoConfig.SetupIndexes();
|
||||
}
|
||||
|
||||
public override string GetVaryByCustomString(HttpContext context, string custom)
|
||||
|
|
|
@ -14,11 +14,14 @@ public partial class Build
|
|||
[DataObjectMethod(DataObjectMethodType.Select, false)]
|
||||
public async Task<Tuple<BuildGroup, List<BuildModel>>> SelectBuildGroup(BuildGroup bGroup)
|
||||
{
|
||||
var pipeline = _buildCollection.Aggregate()
|
||||
.Match(Builders<BuildModel>.Filter.Eq(b => b.MajorVersion, bGroup.Major))
|
||||
.Match(Builders<BuildModel>.Filter.Eq(b => b.MinorVersion, bGroup.Minor))
|
||||
.Match(Builders<BuildModel>.Filter.Eq(b => b.Number, bGroup.Build))
|
||||
.Match(Builders<BuildModel>.Filter.Eq(b => b.Revision, bGroup.Revision))
|
||||
var pipeline = _buildCollection
|
||||
.Find(new BsonDocument
|
||||
{
|
||||
{ "MajorVersion", BsonValue.Create(bGroup.Major) },
|
||||
{ "MinorVersion", BsonValue.Create(bGroup.Minor) },
|
||||
{ "Number", BsonValue.Create(bGroup.Build) },
|
||||
{ "Revision", BsonValue.Create(bGroup.Revision) },
|
||||
})
|
||||
.SortByDescending(b => b.BuildTime);
|
||||
|
||||
return new Tuple<BuildGroup, List<BuildModel>>(bGroup, await pipeline.ToListAsync());
|
||||
|
|
|
@ -26,6 +26,23 @@ public Build()
|
|||
_buildCollection = _dbClient.GetDatabase(MongoConfig.Database).GetCollection<BuildModel>(_buildCollectionName);
|
||||
}
|
||||
|
||||
public async Task SetupIndexes()
|
||||
{
|
||||
var indexes = await (await _buildCollection.Indexes.ListAsync()).ToListAsync();
|
||||
if(!indexes.Any(i => i["name"] == "_idx_group"))
|
||||
{
|
||||
await _buildCollection.Indexes.CreateOneAsync(Builders<BuildModel>.IndexKeys.Combine(
|
||||
Builders<BuildModel>.IndexKeys.Descending(b => b.MajorVersion),
|
||||
Builders<BuildModel>.IndexKeys.Descending(b => b.MinorVersion),
|
||||
Builders<BuildModel>.IndexKeys.Descending(b => b.Number),
|
||||
Builders<BuildModel>.IndexKeys.Descending(b => b.Revision)
|
||||
), new CreateIndexOptions()
|
||||
{
|
||||
Name = "_idx_group"
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
[DataObjectMethod(DataObjectMethodType.Select, true)]
|
||||
public async Task<List<BuildModel>> Select()
|
||||
{
|
||||
|
|
|
@ -131,4 +131,10 @@
|
|||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
<system.codedom>
|
||||
<compilers>
|
||||
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701" />
|
||||
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+" />
|
||||
</compilers>
|
||||
</system.codedom>
|
||||
</configuration>
|
|
@ -22,10 +22,9 @@
|
|||
<package id="Microsoft.AspNet.WebApi.Core" version="5.2.3" targetFramework="net45" />
|
||||
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net45" />
|
||||
<package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net45" />
|
||||
<package id="Microsoft.Bcl" version="1.1.10" targetFramework="net45" />
|
||||
<package id="Microsoft.Bcl.Async" version="1.0.168" targetFramework="net45" />
|
||||
<package id="Microsoft.Bcl.Build" version="1.0.21" targetFramework="net45" />
|
||||
<package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.0" targetFramework="net46" />
|
||||
<package id="Microsoft.jQuery.Unobtrusive.Validation" version="3.2.3" targetFramework="net45" />
|
||||
<package id="Microsoft.Net.Compilers" version="1.0.0" targetFramework="net46" developmentDependency="true" />
|
||||
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
|
||||
<package id="MongoDB.Bson" version="2.2.0" targetFramework="net46" />
|
||||
<package id="MongoDB.Driver" version="2.2.0" targetFramework="net46" />
|
||||
|
|
Loading…
Reference in New Issue
Block a user