Browse Source

Rebuild assets.

pull/400/head
Sebastian Stehle 6 years ago
parent
commit
05d49c781f
  1. 2
      src/Squidex.Domain.Apps.Core.Operations/Squidex.Domain.Apps.Core.Operations.csproj
  2. 51
      src/Squidex.Domain.Apps.Entities.MongoDb/Assets/MongoAssetEntity.cs
  3. 10
      src/Squidex.Domain.Apps.Entities.MongoDb/Assets/MongoAssetRepository.cs
  4. 2
      src/Squidex.Domain.Apps.Entities.MongoDb/Squidex.Domain.Apps.Entities.MongoDb.csproj
  5. 2
      src/Squidex.Domain.Users.MongoDb/Squidex.Domain.Users.MongoDb.csproj
  6. 4
      src/Squidex.Infrastructure.MongoDb/Squidex.Infrastructure.MongoDb.csproj
  7. 2
      src/Squidex.Infrastructure/Squidex.Infrastructure.csproj
  8. 6
      src/Squidex/Squidex.csproj
  9. 2
      tests/Squidex.Domain.Apps.Entities.Tests/Squidex.Domain.Apps.Entities.Tests.csproj
  10. 2
      tests/Squidex.Web.Tests/Squidex.Web.Tests.csproj
  11. 2
      tools/Migrate_00/Migrate_00.csproj
  12. 8
      tools/Migrate_01/MigrationPath.cs

2
src/Squidex.Domain.Apps.Core.Operations/Squidex.Domain.Apps.Core.Operations.csproj

@ -17,7 +17,7 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="Jint" Version="3.0.0-beta-1580" /> <PackageReference Include="Jint" Version="3.0.0-beta-1580" />
<PackageReference Include="Microsoft.OData.Core" Version="7.6.0" /> <PackageReference Include="Microsoft.OData.Core" Version="7.6.0" />
<PackageReference Include="NJsonSchema" Version="10.0.21" /> <PackageReference Include="NJsonSchema" Version="10.0.22" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="System.Collections.Immutable" Version="1.5.0" /> <PackageReference Include="System.Collections.Immutable" Version="1.5.0" />

51
src/Squidex.Domain.Apps.Entities.MongoDb/Assets/MongoAssetEntity.cs

@ -7,82 +7,97 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using MongoDB.Bson;
using MongoDB.Bson.Serialization.Attributes; using MongoDB.Bson.Serialization.Attributes;
using NodaTime;
using Squidex.Domain.Apps.Core.ValidateContent; using Squidex.Domain.Apps.Core.ValidateContent;
using Squidex.Domain.Apps.Entities.Assets; using Squidex.Domain.Apps.Entities.Assets;
using Squidex.Infrastructure; using Squidex.Infrastructure;
using Squidex.Infrastructure.MongoDb;
namespace Squidex.Domain.Apps.Entities.MongoDb.Assets namespace Squidex.Domain.Apps.Entities.MongoDb.Assets
{ {
public sealed class MongoAssetEntity : public sealed class MongoAssetEntity :
MongoEntity,
IAssetEntity, IAssetEntity,
IUpdateableEntityWithVersion, IUpdateableEntityWithVersion,
IUpdateableEntityWithCreatedBy, IUpdateableEntityWithCreatedBy,
IUpdateableEntityWithLastModifiedBy IUpdateableEntityWithLastModifiedBy
{ {
[BsonId]
[BsonElement("_id")]
[BsonRepresentation(BsonType.String)]
public Guid Id { get; set; }
[BsonRequired] [BsonRequired]
[BsonElement("AppIdId")] [BsonElement("_ai")]
[BsonRepresentation(BsonType.String)]
public Guid IndexedAppId { get; set; } public Guid IndexedAppId { get; set; }
[BsonRequired] [BsonRequired]
[BsonElement] [BsonElement("ct")]
public Instant Created { get; set; }
[BsonRequired]
[BsonElement("mt")]
public Instant LastModified { get; set; }
[BsonRequired]
[BsonElement("ai")]
public NamedId<Guid> AppId { get; set; } public NamedId<Guid> AppId { get; set; }
[BsonRequired] [BsonRequired]
[BsonElement] [BsonElement("mm")]
public string MimeType { get; set; } public string MimeType { get; set; }
[BsonRequired] [BsonRequired]
[BsonElement] [BsonElement("fn")]
public string FileName { get; set; } public string FileName { get; set; }
[BsonIgnoreIfDefault] [BsonIgnoreIfDefault]
[BsonElement] [BsonElement("fh")]
public string FileHash { get; set; } public string FileHash { get; set; }
[BsonIgnoreIfDefault] [BsonIgnoreIfDefault]
[BsonElement] [BsonElement("sl")]
public string Slug { get; set; } public string Slug { get; set; }
[BsonRequired] [BsonRequired]
[BsonElement] [BsonElement("fs")]
public long FileSize { get; set; } public long FileSize { get; set; }
[BsonRequired] [BsonRequired]
[BsonElement] [BsonElement("fv")]
public long FileVersion { get; set; } public long FileVersion { get; set; }
[BsonRequired] [BsonRequired]
[BsonElement] [BsonElement("im")]
public bool IsImage { get; set; } public bool IsImage { get; set; }
[BsonRequired] [BsonRequired]
[BsonElement] [BsonElement("vs")]
public long Version { get; set; } public long Version { get; set; }
[BsonRequired] [BsonRequired]
[BsonElement] [BsonElement("pw")]
public int? PixelWidth { get; set; } public int? PixelWidth { get; set; }
[BsonRequired] [BsonRequired]
[BsonElement] [BsonElement("ph")]
public int? PixelHeight { get; set; } public int? PixelHeight { get; set; }
[BsonRequired] [BsonRequired]
[BsonElement] [BsonElement("cb")]
public RefToken CreatedBy { get; set; } public RefToken CreatedBy { get; set; }
[BsonRequired] [BsonRequired]
[BsonElement] [BsonElement("mb")]
public RefToken LastModifiedBy { get; set; } public RefToken LastModifiedBy { get; set; }
[BsonIgnoreIfNull] [BsonIgnoreIfNull]
[BsonElement] [BsonElement("td")]
public HashSet<string> Tags { get; set; } public HashSet<string> Tags { get; set; }
[BsonElement] [BsonRequired]
[BsonElement("dl")]
public bool IsDeleted { get; set; } public bool IsDeleted { get; set; }
Guid IAssetInfo.AssetId Guid IAssetInfo.AssetId

10
src/Squidex.Domain.Apps.Entities.MongoDb/Assets/MongoAssetRepository.cs

@ -39,19 +39,13 @@ namespace Squidex.Domain.Apps.Entities.MongoDb.Assets
{ {
new CreateIndexModel<MongoAssetEntity>( new CreateIndexModel<MongoAssetEntity>(
Index Index
.Ascending(x => x.AppId) .Ascending(x => x.IndexedAppId)
.Ascending(x => x.IsDeleted) .Ascending(x => x.IsDeleted)
.Ascending(x => x.FileName)
.Ascending(x => x.Tags) .Ascending(x => x.Tags)
.Descending(x => x.LastModified)), .Descending(x => x.LastModified)),
new CreateIndexModel<MongoAssetEntity>( new CreateIndexModel<MongoAssetEntity>(
Index Index
.Ascending(x => x.AppId) .Ascending(x => x.IndexedAppId)
.Ascending(x => x.IsDeleted)
.Ascending(x => x.FileHash)),
new CreateIndexModel<MongoAssetEntity>(
Index
.Ascending(x => x.AppId)
.Ascending(x => x.IsDeleted) .Ascending(x => x.IsDeleted)
.Ascending(x => x.Slug)) .Ascending(x => x.Slug))
}, ct); }, ct);

2
src/Squidex.Domain.Apps.Entities.MongoDb/Squidex.Domain.Apps.Entities.MongoDb.csproj

@ -17,7 +17,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.OData.Core" Version="7.6.0" /> <PackageReference Include="Microsoft.OData.Core" Version="7.6.0" />
<PackageReference Include="MongoDB.Driver" Version="2.8.1" /> <PackageReference Include="MongoDB.Driver" Version="2.9.0" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="System.ValueTuple" Version="4.5.0" /> <PackageReference Include="System.ValueTuple" Version="4.5.0" />

2
src/Squidex.Domain.Users.MongoDb/Squidex.Domain.Users.MongoDb.csproj

@ -17,7 +17,7 @@
<PackageReference Include="IdentityServer4" Version="2.5.2" /> <PackageReference Include="IdentityServer4" Version="2.5.2" />
<PackageReference Include="Microsoft.AspNetCore.Identity" Version="2.2.0" /> <PackageReference Include="Microsoft.AspNetCore.Identity" Version="2.2.0" />
<PackageReference Include="Microsoft.Win32.Registry" Version="4.5.0" /> <PackageReference Include="Microsoft.Win32.Registry" Version="4.5.0" />
<PackageReference Include="MongoDB.Driver" Version="2.8.1" /> <PackageReference Include="MongoDB.Driver" Version="2.9.0" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="System.Security.Principal.Windows" Version="4.5.1" /> <PackageReference Include="System.Security.Principal.Windows" Version="4.5.1" />

4
src/Squidex.Infrastructure.MongoDb/Squidex.Infrastructure.MongoDb.csproj

@ -12,8 +12,8 @@
<ProjectReference Include="..\Squidex.Infrastructure\Squidex.Infrastructure.csproj" /> <ProjectReference Include="..\Squidex.Infrastructure\Squidex.Infrastructure.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="MongoDB.Driver" Version="2.8.1" /> <PackageReference Include="MongoDB.Driver" Version="2.9.0" />
<PackageReference Include="MongoDB.Driver.GridFS" Version="2.8.1" /> <PackageReference Include="MongoDB.Driver.GridFS" Version="2.9.0" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.9.0" /> <PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.9.0" />

2
src/Squidex.Infrastructure/Squidex.Infrastructure.csproj

@ -21,7 +21,7 @@
<PackageReference Include="Microsoft.Orleans.Core" Version="2.4.1" /> <PackageReference Include="Microsoft.Orleans.Core" Version="2.4.1" />
<PackageReference Include="Microsoft.Orleans.OrleansRuntime" Version="2.4.1" /> <PackageReference Include="Microsoft.Orleans.OrleansRuntime" Version="2.4.1" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.2" /> <PackageReference Include="Newtonsoft.Json" Version="12.0.2" />
<PackageReference Include="NJsonSchema" Version="10.0.21" /> <PackageReference Include="NJsonSchema" Version="10.0.22" />
<PackageReference Include="NodaTime" Version="2.4.6" /> <PackageReference Include="NodaTime" Version="2.4.6" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="SixLabors.ImageSharp" Version="1.0.0-beta0004" /> <PackageReference Include="SixLabors.ImageSharp" Version="1.0.0-beta0004" />

6
src/Squidex/Squidex.csproj

@ -66,14 +66,14 @@
<PackageReference Include="Microsoft.Orleans.Core" Version="2.4.1" /> <PackageReference Include="Microsoft.Orleans.Core" Version="2.4.1" />
<PackageReference Include="Microsoft.Orleans.Core.Abstractions" Version="2.4.1" /> <PackageReference Include="Microsoft.Orleans.Core.Abstractions" Version="2.4.1" />
<PackageReference Include="Microsoft.Orleans.OrleansRuntime" Version="2.4.1" /> <PackageReference Include="Microsoft.Orleans.OrleansRuntime" Version="2.4.1" />
<PackageReference Include="MongoDB.Driver" Version="2.8.1" /> <PackageReference Include="MongoDB.Driver" Version="2.9.0" />
<PackageReference Include="Namotion.Reflection" Version="1.0.6" /> <PackageReference Include="Namotion.Reflection" Version="1.0.6" />
<PackageReference Include="NJsonSchema" Version="10.0.21" /> <PackageReference Include="NJsonSchema" Version="10.0.22" />
<PackageReference Include="NSwag.AspNetCore" Version="13.0.4" /> <PackageReference Include="NSwag.AspNetCore" Version="13.0.4" />
<PackageReference Include="OpenCover" Version="4.7.922" PrivateAssets="all" /> <PackageReference Include="OpenCover" Version="4.7.922" PrivateAssets="all" />
<PackageReference Include="Orleans.Providers.MongoDB" Version="2.5.0" /> <PackageReference Include="Orleans.Providers.MongoDB" Version="2.5.0" />
<PackageReference Include="Orleans.WebHostCompatibilityLayer" Version="2.3.1" /> <PackageReference Include="Orleans.WebHostCompatibilityLayer" Version="2.3.1" />
<PackageReference Include="OrleansDashboard" Version="2.4.0" /> <PackageReference Include="OrleansDashboard" Version="2.4.1" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="ReportGenerator" Version="4.2.15" PrivateAssets="all" /> <PackageReference Include="ReportGenerator" Version="4.2.15" PrivateAssets="all" />
<PackageReference Include="Squidex.ClientLibrary" Version="3.7.0" /> <PackageReference Include="Squidex.ClientLibrary" Version="3.7.0" />

2
tests/Squidex.Domain.Apps.Entities.Tests/Squidex.Domain.Apps.Entities.Tests.csproj

@ -21,7 +21,7 @@
<PackageReference Include="FluentAssertions" Version="5.8.0" /> <PackageReference Include="FluentAssertions" Version="5.8.0" />
<PackageReference Include="GraphQL" Version="2.4.0" /> <PackageReference Include="GraphQL" Version="2.4.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.2.0" /> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.2.0" />
<PackageReference Include="MongoDB.Driver" Version="2.8.1" /> <PackageReference Include="MongoDB.Driver" Version="2.9.0" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="System.ValueTuple" Version="4.5.0" /> <PackageReference Include="System.ValueTuple" Version="4.5.0" />

2
tests/Squidex.Web.Tests/Squidex.Web.Tests.csproj

@ -15,7 +15,7 @@
<PackageReference Include="IdentityServer4" Version="2.5.2" /> <PackageReference Include="IdentityServer4" Version="2.5.2" />
<PackageReference Include="IdentityServer4.AspNetIdentity" Version="2.5.2" /> <PackageReference Include="IdentityServer4.AspNetIdentity" Version="2.5.2" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.2.0" /> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.2.0" />
<PackageReference Include="NJsonSchema" Version="10.0.21" /> <PackageReference Include="NJsonSchema" Version="10.0.22" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="xunit" Version="2.4.1" /> <PackageReference Include="xunit" Version="2.4.1" />

2
tools/Migrate_00/Migrate_00.csproj

@ -6,7 +6,7 @@
<LangVersion>7.3</LangVersion> <LangVersion>7.3</LangVersion>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="MongoDB.Driver" Version="2.8.1" /> <PackageReference Include="MongoDB.Driver" Version="2.9.0" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
</ItemGroup> </ItemGroup>

8
tools/Migrate_01/MigrationPath.cs

@ -17,7 +17,7 @@ namespace Migrate_01
{ {
public sealed class MigrationPath : IMigrationPath public sealed class MigrationPath : IMigrationPath
{ {
private const int CurrentVersion = 17; private const int CurrentVersion = 18;
private readonly IServiceProvider serviceProvider; private readonly IServiceProvider serviceProvider;
public MigrationPath(IServiceProvider serviceProvider) public MigrationPath(IServiceProvider serviceProvider)
@ -115,6 +115,12 @@ namespace Migrate_01
yield return serviceProvider.GetService<RenameSlugField>(); yield return serviceProvider.GetService<RenameSlugField>();
} }
// Version 18: Rebuild assets.
if (version < 18)
{
yield return serviceProvider.GetService<RebuildAssets>();
}
yield return serviceProvider.GetRequiredService<StartEventConsumers>(); yield return serviceProvider.GetRequiredService<StartEventConsumers>();
} }
} }

Loading…
Cancel
Save