Skip to content
This repository was archived by the owner on Jan 23, 2023. It is now read-only.

[release/3.0-preview9] Split blob publish into stages run before Arcade - #7797

Merged
mmitche merged 2 commits into
dotnet:release/3.0-preview9from
dagood:blobs-pre-promote-3.0-p9
Aug 22, 2019
Merged

[release/3.0-preview9] Split blob publish into stages run before Arcade#7797
mmitche merged 2 commits into
dotnet:release/3.0-preview9from
dagood:blobs-pre-promote-3.0-p9

Conversation

@dagood

@dagood dagood commented Aug 21, 2019

Copy link
Copy Markdown
Member

Port #7779 to release/3.0-preview9, for https://github.com/dotnet/core-setup/issues/7772.

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.
...

This port is in case it helps with the build finalization--I'm not planning on pushing it through myself.

* 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)
@mmitche

mmitche commented Aug 21, 2019

Copy link
Copy Markdown
Member

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 }}']))

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm surprised that this works!

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

@mmitche
mmitche merged commit 33c773a into dotnet:release/3.0-preview9 Aug 22, 2019
@dagood
dagood deleted the blobs-pre-promote-3.0-p9 branch August 22, 2019 01:33
Comment thread azure-pipelines.yml
# Publish to Build Asset Registry in order to generate the ReleaseConfigs artifact.
- template: /eng/common/templates/job/publish-build-assets.yml
parameters:
publishUsingPipelines: true

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

?

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?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, that's what Cesar said. Let's see what happens with the p9 build to verify.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Based on log messages, appears to.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants