Open cschuchardt88 opened 1 month ago
Tagging subscribers to this area: @vitek-karas, @agocke See info in area-owners.md if you want to be subscribed.
I don't think this is the right repo for this issue - this is an SDK or MSBuild issue. That being said - is the lack of a line separator of after --version-suffix 3.7.5
just a typo on the sample?
Yes just a typo.
Possible this is an SDK-argument-processing error instead of at the MSBuild layer but there should not be any OS difference in this behavior.
Maybe not so much OS problem.
When I run simple command like below only with *.csproj
file.
dotnet publish --output ../out -p:BaseOutputPath=/bin
Command will make a folder with different name like below at the root
of the drive
.
--output
for the dotnet publish
command only sets the PublishDir
property - this property is normally derived from BaseOutputPath
, but when set explicitly like this it cannot be overridden.
Similarly with -p:BaseOutputPath=/bin
- with this you are telling the build to use /bin
in your root. If you meant bin
directory relative to the current directory you need to specify a relative path, like -p:BaseOutputPath=./bin
or similar. In addition, currently a BaseOutputPath
is assumed to be /
-terminated, which is why you see the odd /binRelease
directory - because we don't generally expect folks to set BaseOutputPath
we didn't guard against this. If you choose to set BaseOutputPath
I'd suggest putting a trailing /
for safety/consistency.
Any reason why $(SolutionDir)
wouldn't be the current working directory? Without being empty
; if specifying a *.csproj
file.
Lastly, for example if I had
<BaseOutputPath>$(SolutionDir)/bin/$(ProjectName)</BaseOutputPath>
In *.props
both SolutionDir
and ProjectName
would be empty when specifying a *.csproj
file.
Description
The below publish command doesn't work on linux when
BaseOutputPath
property is set in the project.###Reproduction Steps
*.csproj file
Pushlish (works on windows)
Publish from project file will have
$(SolutionDir)
empty and render the link to/bin/Neo.CLI
for example. That is normal. However then I tack on to thedotnet publish
command-p:BaseOutputPath=/home/runner/work/neo/neo/bin/Neo.CLI/build
it should override that property. It doesn't do that, but does onwindows
no problem;NOT LINUX
.Expected behavior
Work like it does on windows.
Actual behavior
Regression?
No response
Known Workarounds
No response
Configuration
github actions
Other information
No response