deployment-tools icon indicating copy to clipboard operation
deployment-tools copied to clipboard

Application manifest codebase incorrect when Linux path separator used

Open IGx89 opened this issue 4 years ago • 1 comments

Description

Take these two almost identical commands:

dotnet-mage -update <deployment manifest> -AppManifest Application Files/<application manifest>
dotnet-mage -update <deployment manifest> -AppManifest Application Files\<application manifest>

They both work, but produce different codebase values in the deployment manifest:

<dependentAssembly dependencyType="install" codebase="/Application Files/<application manifest>">

<dependentAssembly dependencyType="install" codebase="Application Files\<application manifest>">

The first one is absolute, breaking the download in every situation except if the deployment manifest is in the root folder of the web site. The second one is relative, functioning correctly. The tool should ideally be smart enough to make the path relative regardless of the path separator used.

Configuration

.NET 5, Windows, x64

Regression?

Unknown

Other information

Here's what appears to be the problematic line of code: https://github.com/dotnet/deployment-tools/blob/309ac6b00368b13ab32456594c655070d2e5bd21/src/clickonce/MageCLI/Mage.cs#L480

IGx89 avatar Aug 13 '21 16:08 IGx89

I've updated readme to clarify that dotnet-mage is fully supported on Windows. We are gathering feedback about scenarios for usage of the tool on Linux agents.

This and similar issues are very valuable for planning future work.

NikolaMilosavljevic avatar Aug 30 '21 16:08 NikolaMilosavljevic