Skip to content
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

Simplify build yml #36567

Merged
merged 25 commits into from
Jul 25, 2024
Merged

Simplify build yml #36567

merged 25 commits into from
Jul 25, 2024

Conversation

scbedd
Copy link
Member

@scbedd scbedd commented Jul 22, 2024

Setting some context

This change is best explained in pictures. A standard build looks like this:

image

With the job dependencies as shown

Build
  -> Build_Extended
    -> Analyze
  -> TestN

When an extension package is present, this changes. (indicated by AdvancedBuild boolean from ci.yml)

Build_Linux
Build_Windows
Build_Mac
  -> Coalesce Artifacts
    -> Build_Extended
      -> Analyze
    -> TestN

As you can see. The build is bigger when we know we have an extension package present. But what about when we don't know at template compile time if we have an extension package? That's the world we're heading for with the pipelinev3 efforts.

This PR is setting the stage to allow a PR build which expands and contracts to handle when azure-storage-extensions is detected to be part of the necessary build set.

What this PR does

  • Removes compile-time difference between advanced and non-advanced builds
  • Allows run-time detection of storage service directory to produce non-linux artifacts when azure-storage-extension is detected
  • Uses ENABLE_EXTENSION_BUILD to skip the build tasks on windows and mac when azure-storage-extension (or any extension package later) is NOT detected

And the job dependencies will look like:

Build_Linux
Build_Windows (steps skipped if no extension package)
Build_Mac (steps skipped if no extension package)
  -> Build_Extended
    -> Analyze
  -> TestN

@scbedd scbedd self-assigned this Jul 22, 2024
@github-actions github-actions bot added the Storage Storage Service (Queues, Blobs, Files) label Jul 22, 2024
@scbedd scbedd merged commit 6f0da99 into main Jul 25, 2024
56 checks passed
@scbedd scbedd deleted the simplify-build-agent-selection branch July 25, 2024 17:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Storage Storage Service (Queues, Blobs, Files)
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

3 participants