Родитель
e6e1c30b27
Коммит
389e771e22
|
@ -9,6 +9,28 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Akka.Quartz.Actor.Tests", "
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Akka.Quartz.Actor.IntegrationTests", "src\Akka.Quartz.Actor.IntegrationTests\Akka.Quartz.Actor.IntegrationTests.csproj", "{6F4BDCE1-AFEA-444B-BA13-B560E24C94C6}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Akka.Quartz.Actor.IntegrationTests", "src\Akka.Quartz.Actor.IntegrationTests\Akka.Quartz.Actor.IntegrationTests.csproj", "{6F4BDCE1-AFEA-444B-BA13-B560E24C94C6}"
|
||||||
EndProject
|
EndProject
|
||||||
|
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{FB34DCD0-D371-472E-8E7D-0B29FE0B6D88}"
|
||||||
|
ProjectSection(SolutionItems) = preProject
|
||||||
|
build.cmd = build.cmd
|
||||||
|
build.fsx = build.fsx
|
||||||
|
build.ps1 = build.ps1
|
||||||
|
README.md = README.md
|
||||||
|
RELEASE_NOTES.md = RELEASE_NOTES.md
|
||||||
|
src\Directory.Build.props = src\Directory.Build.props
|
||||||
|
src\Directory.Generated.props = src\Directory.Generated.props
|
||||||
|
src\Directory.Packages.props = src\Directory.Packages.props
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
|
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build-system", "build-system", "{9B4742AA-8EED-486D-9607-BACFD98D3FB9}"
|
||||||
|
ProjectSection(SolutionItems) = preProject
|
||||||
|
build-system\azure-pipeline.template.yaml = build-system\azure-pipeline.template.yaml
|
||||||
|
build-system\linux-pr-validation.yaml = build-system\linux-pr-validation.yaml
|
||||||
|
build-system\nightly-builds.yaml = build-system\nightly-builds.yaml
|
||||||
|
build-system\README.md = build-system\README.md
|
||||||
|
build-system\windows-pr-validation.yaml = build-system\windows-pr-validation.yaml
|
||||||
|
build-system\windows-release.yaml = build-system\windows-release.yaml
|
||||||
|
EndProjectSection
|
||||||
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Any CPU = Debug|Any CPU
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
@ -31,4 +53,7 @@ Global
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
|
GlobalSection(NestedProjects) = preSolution
|
||||||
|
{9B4742AA-8EED-486D-9607-BACFD98D3FB9} = {FB34DCD0-D371-472E-8E7D-0B29FE0B6D88}
|
||||||
|
EndGlobalSection
|
||||||
EndGlobal
|
EndGlobal
|
||||||
|
|
|
@ -20,6 +20,10 @@ jobs:
|
||||||
displayName: "Use .NET SDK 3.1"
|
displayName: "Use .NET SDK 3.1"
|
||||||
inputs:
|
inputs:
|
||||||
version: 3.1.x
|
version: 3.1.x
|
||||||
|
- task: UseDotNet@2
|
||||||
|
displayName: "Use .NET 6.0 SDK"
|
||||||
|
inputs:
|
||||||
|
version: 6.x
|
||||||
# Linux or macOS
|
# Linux or macOS
|
||||||
- task: Bash@3
|
- task: Bash@3
|
||||||
displayName: Linux / OSX Build
|
displayName: Linux / OSX Build
|
||||||
|
|
|
@ -19,4 +19,4 @@ jobs:
|
||||||
name: Ubuntu
|
name: Ubuntu
|
||||||
vmImage: 'ubuntu-latest'
|
vmImage: 'ubuntu-latest'
|
||||||
scriptFileName: ./build.sh
|
scriptFileName: ./build.sh
|
||||||
scriptArgs: all
|
scriptArgs: RunTestsNet
|
|
@ -30,7 +30,7 @@ steps:
|
||||||
displayName: 'FAKE Build'
|
displayName: 'FAKE Build'
|
||||||
inputs:
|
inputs:
|
||||||
filename: build.cmd
|
filename: build.cmd
|
||||||
arguments: 'All nugetpublishurl=https://www.nuget.org/api/v2/package nugetkey=$(nugetKey)'
|
arguments: 'All nugetpublishurl=https://api.nuget.org/v3/index.json nugetkey=$(nugetKey)'
|
||||||
|
|
||||||
- task: GitHubRelease@0
|
- task: GitHubRelease@0
|
||||||
displayName: 'GitHub release (create)'
|
displayName: 'GitHub release (create)'
|
||||||
|
|
86
build.fsx
86
build.fsx
|
@ -35,6 +35,10 @@ let outputTests = __SOURCE_DIRECTORY__ @@ "TestResults"
|
||||||
let outputPerfTests = __SOURCE_DIRECTORY__ @@ "PerfResults"
|
let outputPerfTests = __SOURCE_DIRECTORY__ @@ "PerfResults"
|
||||||
let outputNuGet = output @@ "nuget"
|
let outputNuGet = output @@ "nuget"
|
||||||
|
|
||||||
|
// Configuration values for tests
|
||||||
|
let testNetFrameworkVersion = "net472"
|
||||||
|
let testNetVersion = "net6.0"
|
||||||
|
|
||||||
Target "Clean" (fun _ ->
|
Target "Clean" (fun _ ->
|
||||||
ActivateFinalTarget "KillCreatedProcesses"
|
ActivateFinalTarget "KillCreatedProcesses"
|
||||||
|
|
||||||
|
@ -43,11 +47,14 @@ Target "Clean" (fun _ ->
|
||||||
CleanDir outputPerfTests
|
CleanDir outputPerfTests
|
||||||
CleanDir outputNuGet
|
CleanDir outputNuGet
|
||||||
CleanDir "docs/_site"
|
CleanDir "docs/_site"
|
||||||
|
|
||||||
|
CleanDirs !! "./**/bin"
|
||||||
|
CleanDirs !! "./**/obj"
|
||||||
)
|
)
|
||||||
|
|
||||||
Target "AssemblyInfo" (fun _ ->
|
Target "AssemblyInfo" (fun _ ->
|
||||||
XmlPokeInnerText "./src/common.props" "//Project/PropertyGroup/VersionPrefix" releaseNotes.AssemblyVersion
|
XmlPokeInnerText "./src/Directory.Generated.props" "//Project/PropertyGroup/VersionPrefix" releaseNotes.AssemblyVersion
|
||||||
XmlPokeInnerText "./src/common.props" "//Project/PropertyGroup/PackageReleaseNotes" (releaseNotes.Notes |> String.concat "\n")
|
XmlPokeInnerText "./src/Directory.Generated.props" "//Project/PropertyGroup/PackageReleaseNotes" (releaseNotes.Notes |> String.concat "\n")
|
||||||
)
|
)
|
||||||
|
|
||||||
Target "Build" (fun _ ->
|
Target "Build" (fun _ ->
|
||||||
|
@ -84,13 +91,15 @@ Target "RunTests" (fun _ ->
|
||||||
let projects =
|
let projects =
|
||||||
match (isWindows) with
|
match (isWindows) with
|
||||||
| true -> !! "./src/**/*.Tests.csproj"
|
| true -> !! "./src/**/*.Tests.csproj"
|
||||||
|
++ "./src/**/*.*Tests.csproj"
|
||||||
| _ -> !! "./src/**/*.Tests.csproj" // if you need to filter specs for Linux vs. Windows, do it here
|
| _ -> !! "./src/**/*.Tests.csproj" // if you need to filter specs for Linux vs. Windows, do it here
|
||||||
|
++ "./src/**/*.*Tests.csproj"
|
||||||
|
|
||||||
let runSingleProject project =
|
let runSingleProject project =
|
||||||
let arguments =
|
let arguments =
|
||||||
match (hasTeamCity) with
|
match (hasTeamCity) with
|
||||||
| true -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --results-directory %s -- -parallel none -teamcity" (outputTests))
|
| true -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory %s -- -parallel none -teamcity" testNetFrameworkVersion outputTests)
|
||||||
| false -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --results-directory %s -- -parallel none" (outputTests))
|
| false -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory %s -- -parallel none" testNetFrameworkVersion outputTests)
|
||||||
|
|
||||||
let result = ExecProcess(fun info ->
|
let result = ExecProcess(fun info ->
|
||||||
info.FileName <- "dotnet"
|
info.FileName <- "dotnet"
|
||||||
|
@ -99,6 +108,33 @@ Target "RunTests" (fun _ ->
|
||||||
|
|
||||||
ResultHandling.failBuildIfXUnitReportedError TestRunnerErrorLevel.Error result
|
ResultHandling.failBuildIfXUnitReportedError TestRunnerErrorLevel.Error result
|
||||||
|
|
||||||
|
CreateDir outputTests
|
||||||
|
projects |> Seq.iter (log)
|
||||||
|
projects |> Seq.iter (runSingleProject)
|
||||||
|
)
|
||||||
|
|
||||||
|
Target "RunTestsNet" (fun _ ->
|
||||||
|
let projects =
|
||||||
|
match (isWindows) with
|
||||||
|
| true -> !! "./src/**/*.Tests.csproj"
|
||||||
|
++ "./src/**/*.*Tests.csproj"
|
||||||
|
| _ -> !! "./src/**/*.Tests.csproj" // if you need to filter specs for Linux vs. Windows, do it here
|
||||||
|
++ "./src/**/*.*Tests.csproj"
|
||||||
|
|
||||||
|
let runSingleProject project =
|
||||||
|
let arguments =
|
||||||
|
match (hasTeamCity) with
|
||||||
|
| true -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory %s -- -parallel none -teamcity" testNetVersion outputTests)
|
||||||
|
| false -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --framework %s --results-directory %s -- -parallel none" testNetVersion outputTests)
|
||||||
|
|
||||||
|
let result = ExecProcess(fun info ->
|
||||||
|
info.FileName <- "dotnet"
|
||||||
|
info.WorkingDirectory <- (Directory.GetParent project).FullName
|
||||||
|
info.Arguments <- arguments) (TimeSpan.FromMinutes 30.0)
|
||||||
|
|
||||||
|
ResultHandling.failBuildIfXUnitReportedError TestRunnerErrorLevel.Error result
|
||||||
|
|
||||||
|
CreateDir outputTests
|
||||||
projects |> Seq.iter (log)
|
projects |> Seq.iter (log)
|
||||||
projects |> Seq.iter (runSingleProject)
|
projects |> Seq.iter (runSingleProject)
|
||||||
)
|
)
|
||||||
|
@ -129,30 +165,32 @@ Target "CreateNuget" (fun _ ->
|
||||||
)
|
)
|
||||||
|
|
||||||
Target "PublishNuget" (fun _ ->
|
Target "PublishNuget" (fun _ ->
|
||||||
let projects = !! "./bin/nuget/*.nupkg" -- "./bin/nuget/*.symbols.nupkg"
|
let shouldPushNugetPackages = hasBuildParam "nugetkey"
|
||||||
let apiKey = getBuildParamOrDefault "nugetkey" ""
|
if not shouldPushNugetPackages then ()
|
||||||
let source = getBuildParamOrDefault "nugetpublishurl" ""
|
else
|
||||||
let symbolSource = getBuildParamOrDefault "symbolspublishurl" ""
|
let apiKey = getBuildParam "nugetkey"
|
||||||
let shouldPublishSymbolsPackages = not (symbolSource = "")
|
let sourceUrl = getBuildParamOrDefault "nugetpublishurl" "https://api.nuget.org/v3/index.json"
|
||||||
|
|
||||||
if (not (source = "") && not (apiKey = "") && shouldPublishSymbolsPackages) then
|
let rec publishPackage retryLeft packageFile =
|
||||||
let runSingleProject project =
|
tracefn "Pushing %s Attempts left: %d" (FullName packageFile) retryLeft
|
||||||
|
let tracing = ProcessHelper.enableProcessTracing
|
||||||
|
try
|
||||||
|
try
|
||||||
|
ProcessHelper.enableProcessTracing <- false
|
||||||
DotNetCli.RunCommand
|
DotNetCli.RunCommand
|
||||||
(fun p ->
|
(fun p ->
|
||||||
{ p with
|
{ p with
|
||||||
TimeOut = TimeSpan.FromMinutes 10. })
|
TimeOut = TimeSpan.FromMinutes 10. })
|
||||||
(sprintf "nuget push %s --api-key %s --source %s --symbol-source %s" project apiKey source symbolSource)
|
(sprintf "nuget push %s --api-key %s --source %s --no-service-endpoint" packageFile apiKey sourceUrl)
|
||||||
|
with exn ->
|
||||||
|
if (retryLeft > 0) then (publishPackage (retryLeft-1) packageFile)
|
||||||
|
finally
|
||||||
|
ProcessHelper.enableProcessTracing <- tracing
|
||||||
|
|
||||||
projects |> Seq.iter (runSingleProject)
|
printfn "Pushing nuget packages"
|
||||||
else if (not (source = "") && not (apiKey = "") && not shouldPublishSymbolsPackages) then
|
let normalPackages = !! (outputNuGet @@ "*.nupkg") |> Seq.sortBy(fun x -> x.ToLower())
|
||||||
let runSingleProject project =
|
for package in normalPackages do
|
||||||
DotNetCli.RunCommand
|
publishPackage 3 package
|
||||||
(fun p ->
|
|
||||||
{ p with
|
|
||||||
TimeOut = TimeSpan.FromMinutes 10. })
|
|
||||||
(sprintf "nuget push %s --api-key %s --source %s" project apiKey source)
|
|
||||||
|
|
||||||
projects |> Seq.iter (runSingleProject)
|
|
||||||
)
|
)
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------
|
||||||
|
@ -194,12 +232,15 @@ Target "Help" <| fun _ ->
|
||||||
Target "BuildRelease" DoNothing
|
Target "BuildRelease" DoNothing
|
||||||
Target "All" DoNothing
|
Target "All" DoNothing
|
||||||
Target "Nuget" DoNothing
|
Target "Nuget" DoNothing
|
||||||
|
Target "RunTestsFull" DoNothing
|
||||||
|
Target "RunTestsNetFull" DoNothing
|
||||||
|
|
||||||
// build dependencies
|
// build dependencies
|
||||||
"Clean" ==> "AssemblyInfo" ==> "Build" ==> "BuildRelease"
|
"Clean" ==> "AssemblyInfo" ==> "Build" ==> "BuildRelease"
|
||||||
|
|
||||||
// tests dependencies
|
// tests dependencies
|
||||||
"Build" ==> "RunTests"
|
"Build" ==> "RunTests"
|
||||||
|
"Build" ==> "RunTestsNet"
|
||||||
|
|
||||||
// nuget dependencies
|
// nuget dependencies
|
||||||
"Clean" ==> "Build" ==> "CreateNuget"
|
"Clean" ==> "Build" ==> "CreateNuget"
|
||||||
|
@ -211,6 +252,7 @@ Target "Nuget" DoNothing
|
||||||
// all
|
// all
|
||||||
"BuildRelease" ==> "All"
|
"BuildRelease" ==> "All"
|
||||||
"RunTests" ==> "All"
|
"RunTests" ==> "All"
|
||||||
|
"RunTestsNet" ==> "All"
|
||||||
"Nuget" ==> "All"
|
"Nuget" ==> "All"
|
||||||
|
|
||||||
RunTargetOrDefault "Help"
|
RunTargetOrDefault "Help"
|
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 7.8 KiB |
|
@ -1,28 +1,15 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk" ToolsVersion="Current">
|
<Project Sdk="Microsoft.NET.Sdk" ToolsVersion="Current">
|
||||||
<Import Project="..\common.props" />
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net472</TargetFramework>
|
<TargetFrameworks>$(NetFrameworkTestVersion);$(NetTestVersion)</TargetFrameworks>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="$(TestSdkVersion)" />
|
<PackageReference Include="Microsoft.NET.Test.Sdk" />
|
||||||
<PackageReference Include="xunit.runner.visualstudio" Version="$(XunitRunnerVersion)" />
|
<PackageReference Include="xunit.runner.visualstudio" />
|
||||||
<PackageReference Include="xunit" Version="$(XunitVersion)" />
|
<PackageReference Include="xunit" />
|
||||||
<PackageReference Include="Akka.TestKit.Xunit2" Version="$(AkkaVersion)" />
|
<PackageReference Include="Akka.TestKit.Xunit2" />
|
||||||
<PackageReference Include="EntityFramework" Version="6.4.4" />
|
<PackageReference Include="EntityFramework" />
|
||||||
<PackageReference Include="Microsoft.Data.Sqlite.Core" Version="7.0.11" />
|
<PackageReference Include="Microsoft.Data.Sqlite" />
|
||||||
<PackageReference Include="Quartz" Version="$(QuartzVersion)" />
|
<!-- <PackageReference Include="Microsoft.Data.Sqlite.Core" /> -->
|
||||||
<PackageReference Include="SQLitePCLRaw.bundle_green" Version="2.1.6" />
|
|
||||||
<PackageReference Include="System.Data.SQLite" Version="1.0.118" />
|
|
||||||
<Reference Include="System.Numerics" />
|
|
||||||
<Reference Include="System.Runtime.Remoting" />
|
|
||||||
<Reference Include="System.Xml.Linq" />
|
|
||||||
<Reference Include="System.Data.DataSetExtensions" />
|
|
||||||
<Reference Include="Microsoft.CSharp" />
|
|
||||||
<Reference Include="System.Data" />
|
|
||||||
<Reference Include="System.Xml" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<None Include="App.config" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Content Include="tables_sqlite.sql">
|
<Content Include="tables_sqlite.sql">
|
||||||
|
@ -30,13 +17,7 @@
|
||||||
</Content>
|
</Content>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
|
<ProjectReference Include="..\Akka.Quartz.Actor\Akka.Quartz.Actor.csproj" />
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<ProjectReference Include="..\Akka.Quartz.Actor\Akka.Quartz.Actor.csproj">
|
|
||||||
<Project>{80e909a0-2379-408d-9711-70d1bf3147a2}</Project>
|
|
||||||
<Name>Akka.Quartz.Actor</Name>
|
|
||||||
</ProjectReference>
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
<!-- 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.
|
Other similar extension points exist, see Microsoft.Common.targets.
|
||||||
|
|
|
@ -1,43 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<configSections>
|
|
||||||
<section name="quartz" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
|
|
||||||
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
|
|
||||||
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
|
|
||||||
</configSections>
|
|
||||||
<entityFramework>
|
|
||||||
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
|
|
||||||
<parameters>
|
|
||||||
<parameter value="v12.0"/>
|
|
||||||
</parameters>
|
|
||||||
</defaultConnectionFactory>
|
|
||||||
<providers>
|
|
||||||
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer"/>
|
|
||||||
<provider invariantName="System.Data.SQLite.EF6" type="System.Data.SQLite.EF6.SQLiteProviderServices, System.Data.SQLite.EF6"/>
|
|
||||||
</providers>
|
|
||||||
</entityFramework>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/>
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0"/>
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="System.Data.SQLite" publicKeyToken="db937bc2d44ff139" culture="neutral"/>
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-1.0.111.0" newVersion="1.0.111.0"/>
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="xunit.assert" publicKeyToken="8d05b1bb7a6fdb6c" culture="neutral"/>
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.4.1.0" newVersion="2.4.1.0"/>
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
<startup>
|
|
||||||
</startup>
|
|
||||||
<system.data>
|
|
||||||
<DbProviderFactories>
|
|
||||||
<remove invariant="System.Data.SQLite.EF6"/>
|
|
||||||
<add name="SQLite Data Provider (Entity Framework 6)" invariant="System.Data.SQLite.EF6" description=".NET Framework Data Provider for SQLite (Entity Framework 6)" type="System.Data.SQLite.EF6.SQLiteProviderFactory, System.Data.SQLite.EF6"/>
|
|
||||||
<remove invariant="System.Data.SQLite"/><add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".NET Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite"/></DbProviderFactories>
|
|
||||||
</system.data>
|
|
||||||
</configuration>
|
|
|
@ -6,18 +6,25 @@ using Akka.Quartz.Actor.Commands;
|
||||||
using Akka.Quartz.Actor.Events;
|
using Akka.Quartz.Actor.Events;
|
||||||
using Quartz;
|
using Quartz;
|
||||||
using Xunit;
|
using Xunit;
|
||||||
using System.Data.SQLite;
|
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using Microsoft.Data.Sqlite;
|
using Microsoft.Data.Sqlite;
|
||||||
using System.Collections.Specialized;
|
using System.Collections.Specialized;
|
||||||
using Quartz.Impl.AdoJobStore.Common;
|
using Quartz.Impl.AdoJobStore.Common;
|
||||||
using System.Data;
|
using System.Data;
|
||||||
using Quartz.Impl;
|
using Quartz.Impl;
|
||||||
|
using Xunit.Abstractions;
|
||||||
|
|
||||||
namespace Akka.Quartz.Actor.IntegrationTests
|
namespace Akka.Quartz.Actor.IntegrationTests
|
||||||
{
|
{
|
||||||
public class QuartzPersistentActorIntegration : TestKit.Xunit2.TestKit, IClassFixture<QuartzPersistentActorIntegration.SqliteFixture>
|
public class QuartzPersistentActorIntegration : TestKit.Xunit2.TestKit, IClassFixture<QuartzPersistentActorIntegration.SqliteFixture>
|
||||||
{
|
{
|
||||||
|
private SqliteFixture _fixture;
|
||||||
|
public QuartzPersistentActorIntegration(ITestOutputHelper output, SqliteFixture fixture)
|
||||||
|
: base(nameof(QuartzPersistentActorIntegration), output)
|
||||||
|
{
|
||||||
|
_fixture = fixture;
|
||||||
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
public async Task QuartzPersistentActor_DB_Should_Create_Job()
|
public async Task QuartzPersistentActor_DB_Should_Create_Job()
|
||||||
{
|
{
|
||||||
|
@ -61,7 +68,7 @@ namespace Akka.Quartz.Actor.IntegrationTests
|
||||||
Sys.Stop(quartzActor);
|
Sys.Stop(quartzActor);
|
||||||
}
|
}
|
||||||
|
|
||||||
private class SqliteFixture : IDisposable
|
public class SqliteFixture : IDisposable
|
||||||
{
|
{
|
||||||
private const string DatabaseFileName = "quartz-jobs.db";
|
private const string DatabaseFileName = "quartz-jobs.db";
|
||||||
|
|
||||||
|
@ -72,12 +79,11 @@ namespace Akka.Quartz.Actor.IntegrationTests
|
||||||
File.Delete(DatabaseFileName);
|
File.Delete(DatabaseFileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
SQLiteConnection.CreateFile(DatabaseFileName);
|
var script = File.ReadAllText("tables_sqlite.sql");
|
||||||
string script = File.ReadAllText("tables_sqlite.sql");
|
|
||||||
|
|
||||||
using (SQLiteConnection dbConnection = new SQLiteConnection($"Data Source={DatabaseFileName};Version=3;"))
|
using (var dbConnection = new SqliteConnection($"Data Source={DatabaseFileName};"))
|
||||||
{
|
{
|
||||||
using (SQLiteCommand command = new SQLiteCommand(script, dbConnection))
|
using (var command = new SqliteCommand(script, dbConnection))
|
||||||
{
|
{
|
||||||
dbConnection.Open();
|
dbConnection.Open();
|
||||||
command.ExecuteNonQuery();
|
command.ExecuteNonQuery();
|
||||||
|
|
|
@ -1,16 +1,12 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
<Import Project="..\common.props" />
|
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFrameworks>net471;netcoreapp3.1</TargetFrameworks>
|
<TargetFrameworks>$(NetFrameworkTestVersion);$(NetTestVersion)</TargetFrameworks>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="$(TestSdkVersion)" />
|
<PackageReference Include="Microsoft.NET.Test.Sdk" />
|
||||||
<PackageReference Include="xunit.runner.visualstudio" Version="$(XunitRunnerVersion)" />
|
<PackageReference Include="xunit.runner.visualstudio" />
|
||||||
<PackageReference Include="xunit" Version="$(XunitVersion)" />
|
<PackageReference Include="xunit" />
|
||||||
<PackageReference Include="Akka.TestKit.Xunit2" Version="$(AkkaVersion)" />
|
<PackageReference Include="Akka.TestKit.Xunit2" />
|
||||||
<PackageReference Include="FluentAssertions" Version="6.12.0" />
|
|
||||||
<PackageReference Include="Quartz" Version="$(QuartzVersion)" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="xunit.assert" publicKeyToken="8d05b1bb7a6fdb6c" culture="neutral" />
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-2.4.1.0" newVersion="2.4.1.0" />
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /></startup></configuration>
|
|
|
@ -1,11 +1,16 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
<Import Project="..\common.props" />
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>netstandard2.0</TargetFramework>
|
<TargetFramework>$(NetStandardLibVersion)</TargetFramework>
|
||||||
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
|
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
|
||||||
|
<PackageIcon>icon.png</PackageIcon>
|
||||||
|
<PackageReadmeFile>README.md</PackageReadmeFile>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Akka" Version="$(AkkaVersion)" />
|
<PackageReference Include="Akka" />
|
||||||
<PackageReference Include="Quartz" Version="$(QuartzVersion)" />
|
<PackageReference Include="Quartz" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="../../README.md" Pack="true" PackagePath="\" />
|
||||||
|
<None Include="../../docs/images/icon.png" Pack="true" PackagePath="\" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
|
@ -1,20 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<package xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
||||||
<metadata xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
|
|
||||||
<id>@project@</id>
|
|
||||||
<title>@project@@title@</title>
|
|
||||||
<version>@build.number@</version>
|
|
||||||
<authors>@authors@</authors>
|
|
||||||
<owners>@authors@</owners>
|
|
||||||
<description>Quartz integration plugin for Akka.NET.</description>
|
|
||||||
<licenseUrl>https://github.com/akkadotnet/Akka.Quartz.Actor/blob/master/LICENSE</licenseUrl>
|
|
||||||
<projectUrl>https://github.com/akkadotnet/Akka.Quartz.Actor</projectUrl>
|
|
||||||
<iconUrl>http://getakka.net/images/AkkaNetLogo.Normal.png</iconUrl>
|
|
||||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
|
||||||
<releaseNotes>@releaseNotes@</releaseNotes>
|
|
||||||
<copyright>@copyright@</copyright>
|
|
||||||
<tags>@tags@</tags>
|
|
||||||
@dependencies@
|
|
||||||
@references@
|
|
||||||
</metadata>
|
|
||||||
</package>
|
|
|
@ -1,19 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<configuration>
|
|
||||||
<runtime>
|
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="Common.Logging.Core" publicKeyToken="af08829b84f0328e" culture="neutral"/>
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-3.3.1.0" newVersion="3.3.1.0"/>
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral"/>
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-3.3.1.0" newVersion="3.3.1.0"/>
|
|
||||||
</dependentAssembly>
|
|
||||||
<dependentAssembly>
|
|
||||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/>
|
|
||||||
<bindingRedirect oldVersion="0.0.0.0-10.0.0.0" newVersion="10.0.0.0"/>
|
|
||||||
</dependentAssembly>
|
|
||||||
</assemblyBinding>
|
|
||||||
</runtime>
|
|
||||||
</configuration>
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
<Project>
|
||||||
|
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Generated.props', '$(MSBuildThisFileDirectory)'))" />
|
||||||
|
<PropertyGroup>
|
||||||
|
<Copyright>Copyright © 2015-2021 .NET Foundation</Copyright>
|
||||||
|
<Authors>Akka</Authors>
|
||||||
|
<NoWarn>$(NoWarn);CS1591</NoWarn>
|
||||||
|
</PropertyGroup>
|
||||||
|
<!-- Visual Studio C# settings -->
|
||||||
|
<PropertyGroup>
|
||||||
|
<NetFrameworkTestVersion>net472</NetFrameworkTestVersion>
|
||||||
|
<NetStandardLibVersion>netstandard2.0</NetStandardLibVersion>
|
||||||
|
<NetTestVersion>net6.0</NetTestVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<!-- GitHub SourceLink -->
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Microsoft.SourceLink.GitHub" PrivateAssets="All" />
|
||||||
|
</ItemGroup>
|
||||||
|
<!-- NuGet package properties -->
|
||||||
|
<PropertyGroup>
|
||||||
|
<!-- Optional: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element) -->
|
||||||
|
<PublishRepositoryUrl>true</PublishRepositoryUrl>
|
||||||
|
<!-- Optional: Embed source files that are not tracked by the source control manager in the PDB -->
|
||||||
|
<EmbedUntrackedSources>true</EmbedUntrackedSources>
|
||||||
|
<!-- Optional: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
|
||||||
|
<IncludeSymbols>true</IncludeSymbols>
|
||||||
|
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
|
||||||
|
<PackageTags>akka;streams;quartz</PackageTags>
|
||||||
|
<PackageProjectUrl>https://github.com/akkadotnet/Akka.Quartz.Actor</PackageProjectUrl>
|
||||||
|
<PackageLicenseExpression>Apache-2.0</PackageLicenseExpression>
|
||||||
|
</PropertyGroup>
|
||||||
|
</Project>
|
|
@ -0,0 +1,8 @@
|
||||||
|
<Project>
|
||||||
|
<PropertyGroup>
|
||||||
|
<VersionPrefix>1.5.12</VersionPrefix>
|
||||||
|
<PackageReleaseNotes>[Update Akka.NET to v1.5.12](https://github.com/akkadotnet/akka.net/releases/tag/1.5.12)
|
||||||
|
[Fix persisted job serialization to always serialize using object serializer](https://github.com/akkadotnet/Akka.Quartz.Actor/pull/312)
|
||||||
|
Upgraded all other dependencies</PackageReleaseNotes>
|
||||||
|
</PropertyGroup>
|
||||||
|
</Project>
|
|
@ -0,0 +1,29 @@
|
||||||
|
<Project>
|
||||||
|
<PropertyGroup>
|
||||||
|
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
|
||||||
|
<AkkaVersion>1.5.12</AkkaVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<!-- App dependencies -->
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageVersion Include="Akka" Version="$(AkkaVersion)" />
|
||||||
|
<PackageVersion Include="Quartz" Version="3.7.0" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<!-- Test dependencies -->
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageVersion Include="EntityFramework" Version="6.4.4" />
|
||||||
|
<PackageVersion Condition="'$(TargetFramework)' == 'net472'" Include="Microsoft.Data.Sqlite" Version="2.2.6" />
|
||||||
|
<PackageVersion Condition="'$(TargetFramework)' != 'net472'" Include="Microsoft.Data.Sqlite" Version="7.0.11" />
|
||||||
|
<PackageVersion Include="Akka.Hosting.TestKit" Version="$(AkkaVersion)" />
|
||||||
|
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.7.2" />
|
||||||
|
<PackageVersion Include="xunit" Version="2.5.0" />
|
||||||
|
<PackageVersion Include="xunit.runner.visualstudio" Version="2.5.0" />
|
||||||
|
<PackageVersion Include="Akka.TestKit.Xunit2" Version="$(AkkaVersion)" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<!-- SourceLink support for all Akka.NET projects -->
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="1.1.1" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
|
@ -1,22 +0,0 @@
|
||||||
<Project>
|
|
||||||
<PropertyGroup>
|
|
||||||
<Copyright>Copyright © 2015-2021 .NET Foundation</Copyright>
|
|
||||||
<Authors>Akka</Authors>
|
|
||||||
<VersionPrefix>1.5.1</VersionPrefix>
|
|
||||||
<PackageReleaseNotes>Updated Akka to 1.5.1
|
|
||||||
upgraded to Quartz.NET 3.6.2</PackageReleaseNotes>
|
|
||||||
<PackageIconUrl>http://getakka.net/images/akkalogo.png</PackageIconUrl>
|
|
||||||
<PackageProjectUrl>https://github.com/akkadotnet/Akka.Quartz.Actor</PackageProjectUrl>
|
|
||||||
<PackageLicenseUrl>https://github.com/akkadotnet/Akka.Quartz.Actor/blob/master/LICENSE</PackageLicenseUrl>
|
|
||||||
<Tags>akka streams quartz</Tags>
|
|
||||||
<NoWarn>
|
|
||||||
</NoWarn>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup>
|
|
||||||
<AkkaVersion>1.5.12</AkkaVersion>
|
|
||||||
<QuartzVersion>3.7.0</QuartzVersion>
|
|
||||||
<XunitVersion>2.5.0</XunitVersion>
|
|
||||||
<XunitRunnerVersion>2.5.0</XunitRunnerVersion>
|
|
||||||
<TestSdkVersion>17.7.2</TestSdkVersion>
|
|
||||||
</PropertyGroup>
|
|
||||||
</Project>
|
|
Загрузка…
Ссылка в новой задаче