-
Notifications
You must be signed in to change notification settings - Fork 316
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable arcade support #113
Conversation
OK, this is now ready for review. Please take a look and let me know what you think. |
6611ce0
to
c4e4116
Compare
- Set official build id parameter - Build nuget package on Build leg - Publish the worker using MSBuild instead of cmd
…ed directly in teh Packages folder. Clean up official build definition.
src/csharp/Microsoft.Spark.Worker.UnitTest/Microsoft.Spark.Worker.UnitTest.csproj
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left some comments but looks great. Thanks @eerhardt great cleanup as well.
So do we plan to remove files under eng\common? Also, do you have an internal build to share so I can double check the nuget and worker binaries? |
I see this error message in https://dev.azure.com/dnceng/public/_build/results?buildId=198008, but the build task is marked as success. Is this expected?
|
No, these stay in the repo. But you don't modify them here- the "master" version is located in https://github.com/dotnet/arcade/tree/master/eng/common. When we take new versions of arcade, these files are updated automatically.
https://dev.azure.com/dnceng/internal/_build/results?buildId=198161
No, looking into it now. |
OK, all feedback is now addressed, and I've updated the branch to the latest code. This should be ready for a final review.
The issue here is caused by an F# bug: dotnet/fsharp#6832. But also, our |
I checked the nupkg and worker binaries and the names are appended with "-prerelease.19272.6". What's the recommended way of releasing from now on? We were planning to release without the prerelease tag. |
targetFolder: $(Build.ArtifactStagingDirectory)/BuildArtifacts/src/csharp/Microsoft.Spark/bin/$(buildConfiguration) | ||
**/*.nupkg | ||
**/*.snupkg | ||
targetFolder: $(Build.ArtifactStagingDirectory)/BuildArtifacts/artifacts/packages/$(buildConfiguration)/Shipping |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If the target folder is $(Build.ArtifactStagingDirectory)/BuildArtifacts
and we make the contents
be: **/Shipping/**/*.nupkg
and **/Shipping/**/*.snupkg
and then the sourceFolder being (Build.SourcesDirectory)
it should preserve the folder structure, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes I think so. I can try changing it that way tomorrow morning.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not required to merge but it’s a nice cleanup.
Daily builds get a build number appended to the end. That’s how you know it isn’t an officially released NuGet package - it has a daily build number. We can push those daily builds to feeds that aren’t NuGet.org. When you are ready to ship, you queue a build with a variable set to build without the build number at the end. And then you release that package. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Thanks for the great work @eerhardt!
This is the first round of using dotnet/arcade as the build infrastructure.
It doesn't make use of everything in arcade, but it is the first step to using arcade, and we can incrementally make changes as we go to make use of more and more arcade functionality (for example the signtool which will sign nugets and their contained assemblies in a single step).
It is easiest to review by ignoring the first commit "Copy eng\common from Aracde repo". It is a strict copy of the
eng\common
folder that is defined by the arcade repo. It will get sync'd automatically when we start taking new versions of arcade using the dependency flow infrastructure.This should solve #40.