diff --git a/GitExtensions.PluginManager.sln b/GitExtensions.PluginManager.sln
index 652962d..8093c3b 100644
--- a/GitExtensions.PluginManager.sln
+++ b/GitExtensions.PluginManager.sln
@@ -35,8 +35,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
appveyor.yml = appveyor.yml
Directory.Build.props = Directory.Build.props
Directory.Build.targets = Directory.Build.targets
+ Directory.Packages.props = Directory.Packages.props
GitExtensions.settings = GitExtensions.settings
- Packages.props = Packages.props
README.md = README.md
EndProjectSection
EndProject
diff --git a/appveyor.yml b/appveyor.yml
index 0cd9921..112c272 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -1,5 +1,5 @@
# version format
-version: 3.1.0.{build}
+version: 3.1.1.{build}
matrix:
fast_finish: true
@@ -71,16 +71,51 @@ test_script:
dotnet test -c Release --no-restore --no-build --nologo --verbosity q --test-adapter-path:. --logger:Appveyor --logger:trx /bl:.\artifacts\logs\tests.binlog
if ($LastExitCode -ne 0) { $host.SetShouldExit($LastExitCode) }
+after_test:
+- ps: |
+ # do not sign artifacts for PR to release branches, publish dev builds instead
+ if (!$env:APPVEYOR_REPO_BRANCH.StartsWith("release/") -or $env:APPVEYOR_PULL_REQUEST_TITLE) {
+ Write-Host "[INFO]: Do not sign artifacts from PR to release branch"
+ Get-ChildItem .\artifacts\GitExtensions.PluginManager*.nupkg | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
+ Get-ChildItem .\artifacts\GitExtensions.PluginManager*.zip | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
+ Exit-AppVeyorBuild
+ return
+ }
+ else {
+ Write-Host "[INFO]: Prepare combined artifact for signing on release branch"
+ Write-Host "Creating combined build artifact ..."
+ $nupkg = (Resolve-Path .\artifacts\GitExtensions.PluginManager*.nupkg)[0].Path;
+ $zip = (Resolve-Path .\artifacts\GitExtensions.PluginManager*.zip)[0].Path;
+ $combined = ".\GitExtensions.PluginManager.$($env:APPVEYOR_BUILD_VERSION)$($env:version_suffix).combined-unsigned.zip"
+ Compress-Archive -LiteralPath $nupkg, $zip -CompressionLevel NoCompression -DestinationPath $combined -Force
+ }
+
#---------------------------------#
# artifacts configuration #
#---------------------------------#
artifacts:
-- path: .\artifacts\GitExtensions.PluginManager.*.zip
-- path: .\artifacts\GitExtensions.PluginManager.*.nupkg
+- path: .\GitExtensions.PluginManager.*.combined-unsigned.zip
- path: .\artifacts\logs\*.binlog
+#---------------------------------#
+# artifacts deployment #
+#---------------------------------#
+
+deploy:
+- provider: Webhook
+ on:
+ ARTIFACT_SIGNING_ENABLED: true
+ url: https://app.signpath.io/API/v1/7c19b2cf-90f7-4d15-9b12-1b615f7c18c4/Integrations/AppVeyor?ProjectKey=gitextensions.pluginmanager&SigningPolicyKey=release-signing
+ on_build_success: true
+ on_build_failure: false
+ on_build_status_changed: false
+ method: POST
+ authorization:
+ secure: IlLI/MbhdzmXF/WB2G84zYsDWePXJqHBWDb1zBPxxXvGgx0WRxzMZxuBsvCOcZvbPTRF+UcGp0d5/HT8xZUEjA==
+
+
# on build failure
on_failure:
- ps: |
diff --git a/src/GitExtensions.PluginManager/GitExtensions.PluginManager.csproj b/src/GitExtensions.PluginManager/GitExtensions.PluginManager.csproj
index bfbf6b9..cc203c4 100644
--- a/src/GitExtensions.PluginManager/GitExtensions.PluginManager.csproj
+++ b/src/GitExtensions.PluginManager/GitExtensions.PluginManager.csproj
@@ -24,6 +24,10 @@
+
+
+
+
$(GitExtensionsPath)\GitExtensions.Extensibility.dll
diff --git a/src/GitExtensions.PluginManager/GitExtensions.PluginManager.csproj.user b/src/GitExtensions.PluginManager/GitExtensions.PluginManager.csproj.user
index 90652fc..3505660 100644
--- a/src/GitExtensions.PluginManager/GitExtensions.PluginManager.csproj.user
+++ b/src/GitExtensions.PluginManager/GitExtensions.PluginManager.csproj.user
@@ -3,6 +3,6 @@
..\..\..\gitextensions.shared
latest
AppVeyor
-
+ $(GitExtensionsDownloadPath)
diff --git a/src/GitExtensions.PluginManager/GitExtensions.PluginManager.nuspec b/src/GitExtensions.PluginManager/GitExtensions.PluginManager.nuspec
index be019f5..58bd098 100644
--- a/src/GitExtensions.PluginManager/GitExtensions.PluginManager.nuspec
+++ b/src/GitExtensions.PluginManager/GitExtensions.PluginManager.nuspec
@@ -16,6 +16,7 @@
+
-
+
\ No newline at end of file
diff --git a/src/GitExtensions.PluginManager/Project.Publish.targets b/src/GitExtensions.PluginManager/Project.Publish.targets
index 83b760a..59487da 100644
--- a/src/GitExtensions.PluginManager/Project.Publish.targets
+++ b/src/GitExtensions.PluginManager/Project.Publish.targets
@@ -13,17 +13,27 @@
-->
- <_PackageManagerSourcePath>$([MSBuild]::NormalizePath('$(RepoRoot)', 'src', 'PackageManager.UI', 'bin', '$(Configuration)', '$(TargetFramework)', '$(PackageManagerUIRuntimeIdentifier)', 'publish', 'PackageManager.UI.exe'))
- <_PackageManagerTargetPath>$(_PackageManagerFolder)\PackageManager.UI.exe
+
+ <_PackageManagerSourceDir>$([MSBuild]::NormalizePath('$(RepoRoot)', 'src', 'PackageManager.UI', 'bin', '$(Configuration)', '$(TargetFramework)', '$(PackageManagerUIRuntimeIdentifier)', 'publish'))
+ <_PackageManagerSourcePath>$([MSBuild]::NormalizePath('$(_PackageManagerSourceDir)', 'PackageManager.UI.exe'))
+ <_PackageManagerRuntimeConfigSourcePath>$([MSBuild]::NormalizePath('$(_PackageManagerSourceDir)', '..', 'PackageManager.UI.runtimeconfig.json'))
+
+
+ <_PackageManagerTargetPath>$(_PackageManagerFolder)/PackageManager.UI.exe
+ <_PackageManagerRuntimeConfigTargetPath>$(_PackageManagerFolder)/PackageManager.UI.runtimeconfig.json
+
+