-
Notifications
You must be signed in to change notification settings - Fork 447
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
Convert consolidated pipeline to a YAML based pipeline and enable nightly builds #4292
base: main
Are you sure you want to change the base?
Conversation
Last thing, have you evaluated the artifacts/drops that are built? Did you try running those cli builds to test they work as expected, and are also signed? |
Yes! I downloaded the artifacts to cross check that they are produced correctly and ensured that the MSI files that are produced for As for testing, we have E2E tests that run here to make sure that everything still works for Also this pipeline won't be used immediately yet, since we would have to update the release pipeline to consume the artifacts produced from this pipeline. This is just the first step to getting there :) |
Issue describing the changes in this PR
resolves #4270 #4271
This PR converts the consolidated pipeline which was initially based off of azure classic pipelines UX to a yaml based pipeline.
I have updated the
ArtifactAssembler
within core tools to be able to process each artifact type one at a time. For example, if I were to pass inAzure.Functions.Cli.win-x64
when running the artifact assembler, the artifact assembler would only assemble artifacts for that win-x64. This enables us to use parallelization when running the consolidated pipeline, which significantly improves the run time overall.The consolidated pipeline also publishes the artifacts to the pipeline directly, rather than publishing to a storage account. Please look at this run for an example of what this would look like.
This pipeline also runs significantly faster than the azure classic based pipeline, as this pipeline takes on average 35-37 min, whereas previous runs would easily take over an hour. This runtime will increase even more once the E2E tests are updated to run in a more efficient and parallel manner outside of the consolidated pipeline.
Finally, nightly builds are enabled for the consolidated artifact pipeline to run every night, after the
in-proc
andmain
artifacts have been created from their nightly builds. This PR also adds a tag callednightly-build
to those builds for thein-proc
andmain
branch to distinguish scheduled builds from manually triggered ones. That way the consolidated pipeline knows which builds to pick for the nightly builds.Pull request checklist