-
Notifications
You must be signed in to change notification settings - Fork 353
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
Streamline and simplify v3 publishing job #8334
Conversation
This change removes a bunch of cruft in the publishing job such that: - v2 is no longer supported, even incidentally (it's not been actually supported by Eng Services for some time, but the code has stuck around) - A single machine is used for publishing. This reduces the number of allocations, making it possible to move to 1ES pools (not in this change, yet). It also reduces general overhead associated with using multiple jobs and stages. Implementation is as follows: - Remove old, unused v3 publishing options and associated templates (nuget, source link and signing validation). - Collapse all publishing down into a single job that first looks up and validates the build and channel info, setting up any necessary variables for passing to the publish task. - Call the publish task with the associated parameters - Also fixes an issue where we were incorrectly passing IsInternalBuild. The value of that was being evaluated in the context of the arcade publishing job, not the actual build we were trying to promote. The value of this is just used for a safety check. - Remove publish installers and checksums options. This was hardcoded to true, and is legacy from when we were rolling this functionality out.
First official test (efcore -> general testing): https://dev.azure.com/dnceng/internal/_build/results?buildId=1547402&view=results Need to check a few others before I call it validated. |
For performance purposes, the average time for an efcore promotion appeared to be around 6:30ish. The tests show that it's about 2:30 with these changes. |
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
@mmitche heads up this seems to have broken publish using darc? https://dev.azure.com/dnceng/internal/_build/results?buildId=1549109&view=logs&j=226748d0-f812-5437-d3f0-2dd291f5666e&t=bad11196-972e-5d03-45a8-9db526506073 |
Yeah, some extra parameters that got removed. I'm going to revert this for now. I think it was just a testing gap, but want to make sure. |
) * Revert "Revert "Streamline and simplify v3 publishing job (dotnet#8334)" (dotnet#8339)" This reverts commit 7189b4a. * Remove parameter usage
* Revert "Revert "Streamline and simplify v3 publishing job"" (#8340) * Revert "Revert "Streamline and simplify v3 publishing job (#8334)" (#8339)" This reverts commit 7189b4a. * Remove parameter usage * Use 1ES pools in templates that run internally (#8344) * Use 1ES pools in templates that run internally - Use the 1ES pools in our templates, jobs, etc. - To reduce some of the cost of this, remove the "Setup Maestro Vars" job and replace with a step so that we don't end up with an additional allocation in those cases. - Call setup maestro vars to populate the azdo params in execute-sdl * Fix DevDiv promotion job (#8370) - Ensure devdiv promotion job uses devdiv pools - Use powershell core (the pools don't have IE initialized so we have to use basic parsing, which is default on powershell core) * Fixup common templates to be compatible with devdiv pools (#8371) In an earlier change, hosted pool usage was moved. This didn't account for differences in pools in devdiv and dnceng. * Fix oneloc template (#8381) The OneLoc template isn't used in the official build when not on main, so validation got skipped.
This change removes a bunch of cruft in the publishing job such that:
Implementation is as follows:
To double check: