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

CI Build updates: build queuing and Windows PS7 #260

Merged
merged 6 commits into from
Jul 1, 2020

Conversation

HowardWolosky
Copy link
Member

Description

This updates the CI build with two new features:

  1. Validation against Windows PS7 (PowerShell Core)
    This pipeline previously had three platforms that it tested against:

    • Windows PS5
    • Linux PS7 (PowerShell Core)
    • macOS PS7 (PowerShell Core)

    With this change, we add a fourth platform: Windows PS7 (PowerShell Core)

  2. Build queuing
    The unit tests operate against live GitHub accounts (as opposed to mocking out the execution of the API calls). Each platform has its own account that it operates against to alllow each platform to be tested in parallel. However, if more than one build is queued at once, then the builds can start to stomp over the expected state in the tests accounts. This change adds a new job to the pipeline which will create a "queue" of running builds by only allowing a build to continue processing once all previously queued builds have completed.

Issues Fixed

References

https://developercommunity.visualstudio.com/idea/365730/prevent-parallel-execution-of-the-same-build-defin.html

Checklist

  • You actually ran the code that you just wrote, especially if you did just "one last quick change".
  • Comment-based help added/updated, including examples.
  • Static analysis is reporting back clean.
  • New/changed code adheres to our coding guidelines.
  • New/changed code continues to support the pipeline.
  • Changes to the manifest file follow the manifest guidance.
  • Unit tests were added/updated and are all passing. See testing guidelines. This includes making sure that all pipeline input variations have been covered.
  • Relevant usage examples have been added/updated in USAGE.md.
  • If desired, ensure your name is added to our Contributors list

This updates the CI build with two new features:

1. Validation against Windows PS7 (PowerShell Core)
   This pipeline previously had three platforms that it tested against:
   * Windows PS5
   * Linux PS7 (PowerShell Core)
   * macOS PS7 (PowerShell Core)
   With this change, we add a fourth plaform: Windows PS7 (PowerShell Core)

2. Build queuing
   The unit tests operate against live GitHub accounts (as opposed to
   mocking out the execution of the API calls).  Each platform has its
   own account that it operates against to alllow each platform to
   be tested in parallel.  However, if more than one build is queued
   at once, then the tests can start to stomp over the expected state
   in the tests accounts.  This new change adds a new `job` that will
   essentially create a "queue" of running builds, only allowing them
   to start to run once all previously queued builds have completed.
@HowardWolosky HowardWolosky added the build Changes related to the build infrastructure for the project. label Jul 1, 2020
@HowardWolosky
Copy link
Member Author

/azp run PowerShellForGitHub-CI

@azure-pipelines
Copy link

Azure Pipelines failed to run 1 pipeline(s).

@HowardWolosky
Copy link
Member Author

/azp run PowerShellForGitHub-CI

@azure-pipelines
Copy link

Azure Pipelines failed to run 1 pipeline(s).

@HowardWolosky
Copy link
Member Author

/azp run PowerShellForGitHub-CI

@azure-pipelines
Copy link

Azure Pipelines failed to run 1 pipeline(s).

@HowardWolosky
Copy link
Member Author

/azp run PowerShellForGitHub-CI

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@HowardWolosky
Copy link
Member Author

/azp run PowerShellForGitHub-CI

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@HowardWolosky
Copy link
Member Author

/azp run PowerShellForGitHub-CI

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@HowardWolosky HowardWolosky merged commit 79e5ac2 into microsoft:master Jul 1, 2020
@HowardWolosky HowardWolosky deleted the queueBuilds branch July 1, 2020 22:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Changes related to the build infrastructure for the project.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Suggestion: Allow Automatic CI Triggering to be enabled by Adding a 'WaitForRunningBuilds` CI Step.
1 participant