diff --git a/build-system/windows-release.yaml b/build-system/windows-release.yaml index 4f2d092..0656a6e 100644 --- a/build-system/windows-release.yaml +++ b/build-system/windows-release.yaml @@ -32,7 +32,7 @@ steps: displayName: 'FAKE Build' inputs: filename: build.cmd - arguments: 'Nuget nugetpublishurl=https://www.nuget.org/api/v2/package nugetkey=$(nugetKey)' + arguments: 'Nuget nugetpublishurl=https://api.nuget.org/v3/index.json nugetkey=$(nugetKey)' - task: GitHubRelease@0 displayName: 'GitHub release (create)' diff --git a/build.fsx b/build.fsx index df42fec..6b39618 100644 --- a/build.fsx +++ b/build.fsx @@ -202,31 +202,32 @@ Target "CreateNuget" (fun _ -> ) Target "PublishNuget" (fun _ -> - - let projects = !! "./bin/nuget/*.nupkg" -- "./bin/nuget/*.symbols.nupkg" - let apiKey = getBuildParamOrDefault "nugetkey" "" - let source = getBuildParamOrDefault "nugetpublishurl" "" - let symbolSource = getBuildParamOrDefault "symbolspublishurl" "" - let shouldPublishSymbolsPackages = not (symbolSource = "") - - if (not (source = "") && not (apiKey = "") && shouldPublishSymbolsPackages) then - let runSingleProject project = - DotNetCli.RunCommand - (fun p -> - { p with - TimeOut = TimeSpan.FromMinutes 10. }) - (sprintf "nuget push %s --api-key %s --source %s --symbol-source %s" project apiKey source symbolSource) - - projects |> Seq.iter (runSingleProject) - else if (not (source = "") && not (apiKey = "") && not shouldPublishSymbolsPackages) then - let runSingleProject project = - DotNetCli.RunCommand - (fun p -> - { p with - TimeOut = TimeSpan.FromMinutes 10. }) - (sprintf "nuget push %s --api-key %s --source %s" project apiKey source) - - projects |> Seq.iter (runSingleProject) + let shouldPushNugetPackages = hasBuildParam "nugetkey" + if not shouldPushNugetPackages then () + else + let apiKey = getBuildParam "nugetkey" + let sourceUrl = getBuildParamOrDefault "nugetpublishurl" "https://api.nuget.org/v3/index.json" + + let rec publishPackage retryLeft packageFile = + tracefn "Pushing %s Attempts left: %d" (FullName packageFile) retryLeft + let tracing = ProcessHelper.enableProcessTracing + try + try + ProcessHelper.enableProcessTracing <- false + DotNetCli.RunCommand + (fun p -> + { p with + TimeOut = TimeSpan.FromMinutes 10. }) + (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 + + printfn "Pushing nuget packages" + let normalPackages = !! (outputNuGet @@ "*.nupkg") |> Seq.sortBy(fun x -> x.ToLower()) + for package in normalPackages do + publishPackage 3 package ) FinalTarget "KillCreatedProcesses" (fun _ -> diff --git a/docs/images/icon.png b/docs/images/icon.png new file mode 100644 index 0000000..c0f0ca9 Binary files /dev/null and b/docs/images/icon.png differ diff --git a/src/Akka.Persistence.PostgreSql.Hosting/Akka.Persistence.PostgreSql.Hosting.csproj b/src/Akka.Persistence.PostgreSql.Hosting/Akka.Persistence.PostgreSql.Hosting.csproj index 94c99a5..c19bee1 100644 --- a/src/Akka.Persistence.PostgreSql.Hosting/Akka.Persistence.PostgreSql.Hosting.csproj +++ b/src/Akka.Persistence.PostgreSql.Hosting/Akka.Persistence.PostgreSql.Hosting.csproj @@ -1,6 +1,7 @@ $(NetStandardLibVersion) + icon.png README.md Akka.Persistence.PostgreSql Microsoft.Extensions.Hosting support. @@ -13,4 +14,9 @@ + + + + + diff --git a/src/Akka.Persistence.PostgreSql.sln b/src/Akka.Persistence.PostgreSql.sln index d80469e..cf95476 100644 --- a/src/Akka.Persistence.PostgreSql.sln +++ b/src/Akka.Persistence.PostgreSql.sln @@ -18,12 +18,23 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{CADDD4C2 ..\build.fsx = ..\build.fsx ..\build.ps1 = ..\build.ps1 ..\build.sh = ..\build.sh + Directory.Build.props = Directory.Build.props + Directory.Generated.props = Directory.Generated.props + Directory.Packages.props = Directory.Packages.props EndProjectSection EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Akka.Persistence.PostgreSql.Performance.Tests", "Akka.Persistence.PostgreSql.Performance.Tests\Akka.Persistence.PostgreSql.Performance.Tests.csproj", "{E5A31545-77AA-4BE1-A2A4-853256CC0F5E}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Akka.Persistence.PostgreSql.Hosting", "Akka.Persistence.PostgreSql.Hosting\Akka.Persistence.PostgreSql.Hosting.csproj", "{0725302B-2814-48C6-944B-7E6F5CC72D8E}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build-system", "build-system", "{E89C75C2-959B-4E92-9E4F-83275DAC4374}" + ProjectSection(SolutionItems) = preProject + ..\build-system\azure-pipeline.template.yaml = ..\build-system\azure-pipeline.template.yaml + ..\build-system\pr-validation.yaml = ..\build-system\pr-validation.yaml + ..\build-system\README.md = ..\build-system\README.md + ..\build-system\windows-release.yaml = ..\build-system\windows-release.yaml + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -53,4 +64,7 @@ Global GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {721169D4-809B-4363-85B6-F30A313BC030} EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {E89C75C2-959B-4E92-9E4F-83275DAC4374} = {CADDD4C2-4EFC-4785-8958-35F50C1A8CEE} + EndGlobalSection EndGlobal diff --git a/src/Akka.Persistence.PostgreSql/Akka.Persistence.PostgreSql.csproj b/src/Akka.Persistence.PostgreSql/Akka.Persistence.PostgreSql.csproj index f719663..44de653 100644 --- a/src/Akka.Persistence.PostgreSql/Akka.Persistence.PostgreSql.csproj +++ b/src/Akka.Persistence.PostgreSql/Akka.Persistence.PostgreSql.csproj @@ -2,9 +2,11 @@ Akka.Persistence.PostgreSql Akka Persistence journal and snapshot store backed by PostgreSql database. - $(NetStandardLibVersion) + $(NetStandardLibVersion) true 11 + icon.png + README.md @@ -21,4 +23,9 @@ $(DefineConstants);RELEASE + + + + + diff --git a/src/Directory.Build.props b/src/Directory.Build.props index f993478..b5c288c 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -4,10 +4,6 @@ Copyright © 2013-2023 Akka.NET Team Akka.NET Team - http://getakka.net/images/akkalogo.png - https://github.com/akkadotnet/Akka.Persistence.PostgreSql - https://github.com/akkadotnet/Akka.Persistence.PostgreSql/blob/dev/LICENSE.md - akka;actors;actor model;Akka;concurrency;Postgres;PostgreSql 11 @@ -26,9 +22,24 @@ 5.0.11 8 [$(PostgresLowVersion), $(PostgresHighVersion)) + - 17.4.1 - 2.5.0 - 2.5.0 + + + + true + + true + + true + snupkg + https://github.com/akkadotnet/Akka.Persistence.PostgreSql + Apache-2.0 + akka;actors;actor model;Akka;concurrency;Postgres;PostgreSql + + + + + diff --git a/src/Directory.Generated.props b/src/Directory.Generated.props index e357310..49c23ec 100644 --- a/src/Directory.Generated.props +++ b/src/Directory.Generated.props @@ -1,6 +1,6 @@ - 1.5.1.1 - [Update Npgsql to v7.0.2](https://github.com/akkadotnet/akka.net/releases/tag/1.5.1.1) + 1.5.4.1 + Allow all 7.x major versions of Npgsql \ No newline at end of file diff --git a/src/Directory.Packages.props b/src/Directory.Packages.props index 692746b..6cc1c2a 100644 --- a/src/Directory.Packages.props +++ b/src/Directory.Packages.props @@ -16,8 +16,8 @@ - - + +