[release/3.0-preview9] Split blob publish into stages run before Arcade - #7797
Conversation
* Split blob publish into stages run before Arcade The Arcade publish stages contain the job that promotes the build, causing auto-update PRs to be generated. This means that running installer publish after Arcade can cause a temporarily broken update PR. To fix this, publish blobs before the Arcade stages. Leave dotnet/versions publish and build finalization until after the Arcade stages, so that they still only happen after the nupkgs are published. * Changes per feedback Remove "Custom" verbiage, not useful and in some cases now incorrect. Order publish.yml stages by dependency to help readability. (cherry picked from commit 54ae67a)
|
Thanks. |
| # Logic copied from ../common/templates/post-build/channels/netcore-dev-5.yml | ||
| condition: contains( | ||
| dependencies.setupMaestroVars.outputs['setReleaseVars.InitialChannels'], | ||
| format('[{0}]', variables['${{ parameters.dependency.channel.bar }}'])) |
There was a problem hiding this comment.
What about it? I copy pasted the code that Arcade uses to determine whether to run a job depending on what default channels the branch has.
| # Publish to Build Asset Registry in order to generate the ReleaseConfigs artifact. | ||
| - template: /eng/common/templates/job/publish-build-assets.yml | ||
| parameters: | ||
| publishUsingPipelines: true |
There was a problem hiding this comment.
?
Does this stop it from assigning to the channel during the publish to BAR step so that the promote job can do it? Do I need to port it to master and release/3.0?
There was a problem hiding this comment.
Yeah, that's what Cesar said. Let's see what happens with the p9 build to verify.
There was a problem hiding this comment.
Based on log messages, appears to.
There was a problem hiding this comment.
I see the instruction in https://github.com/dotnet/arcade/blob/master/Documentation/CorePackages/YamlStagesPublishing.md now to do this. I missed it because I ignored the section once it started talking about /eng/common/templates/jobs/jobs.yml and /eng/common/templates/job/job.yml, which Core-Setup doesn't use. (It also doesn't explain what it does, but that probably wouldn't have stopped me from missing it during the initial implementation.)
Port #7779 to
release/3.0-preview9, for https://github.com/dotnet/core-setup/issues/7772.This port is in case it helps with the build finalization--I'm not planning on pushing it through myself.