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

Make linux CI parallel #9209

Merged
merged 4 commits into from
Mar 24, 2019
Merged

Conversation

TravisEz13
Copy link
Member

@TravisEz13 TravisEz13 commented Mar 23, 2019

PR Summary

Make the Linux CI build once and then run the tests on 4 different machines, by tag.

PR Context

Running in parallel allows us to run all tests in about the same amount of clock time

PR Checklist

@TravisEz13 TravisEz13 marked this pull request as ready for review March 23, 2019 01:31
@TravisEz13 TravisEz13 changed the title Make linux ci parallel Make linux CI parallel Mar 23, 2019
@TravisEz13 TravisEz13 added the CL-BuildPackaging Indicates that a PR should be marked as a build or packaging change in the Change Log label Mar 23, 2019
@iSazonov
Copy link
Collaborator

Looks great!

Unelevated tests on all platforms take about 13-14 minutes. Can we split them and run on 2-3 VMs?

Copy link
Contributor

@RDIL RDIL left a comment

Choose a reason for hiding this comment

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

LGTM, but I agree with Ilya, the unelevated pspester tests would be better off on different VMs for speed

@TravisEz13
Copy link
Member Author

@iSazonov We can split them up by folder or another tag. Folder would be easier.

@TravisEz13
Copy link
Member Author

We also need to remove the [feature] tag code. It causes problems and isn't needed after this PR. I'll do it in another PR...

@RDIL
Copy link
Contributor

RDIL commented Mar 23, 2019

@TravisEz13 I’ll take care of it after this is merged.

@iSazonov
Copy link
Collaborator

Folder would be easier.

It seems we need to put the list in a config file to load-balance VMs.

@TravisEz13
Copy link
Member Author

@iSazonov That might work... the script would need to see if any folders had been added and run those on some machine designated as a primary machine

@iSazonov
Copy link
Collaborator

iSazonov commented Mar 23, 2019

Interesting, can these machines interact so as to receive a test batch from a controller VM and return a report? This would solve the load-balancing problem. And we could use this for remoting tests.

@TravisEz13
Copy link
Member Author

@iSazonov Interactions between the machines may work sometimes but not consistently. The machines are only given private IP Addresses and are not guaranteed to be on the same subnet. I don't think we need that complexity. It's not needed to create a solution. The added complexity would add failure cases.

A simpler solution does mean that we would need to manually rebalance occasionally, but I don't think that is a problem.

@daxian-dbw
Copy link
Member

Come on @PoshChan you are nitpicking the letter case 😆

@TravisEz13
Copy link
Member Author

@PoshChan Please remind me in 3 hours

@PoshChan
Copy link
Collaborator

@TravisEz13, all requests start with the magic word Please.

@PowerShell PowerShell deleted a comment from PoshChan Mar 23, 2019
@TravisEz13 TravisEz13 added this to the 6.2.0-GA-Consider milestone Mar 24, 2019
@TravisEz13 TravisEz13 merged commit 5aed18d into PowerShell:master Mar 24, 2019
@TravisEz13 TravisEz13 deleted the make_linux_CI_parallel branch March 24, 2019 01:23
TravisEz13 added a commit that referenced this pull request Mar 25, 2019
Make the Linux CI build once and then run the tests on 4 different machines, by tag.

## PR Context

Running in parallel allows us to run all tests in about the same amount of clock time
@TravisEz13 TravisEz13 modified the milestones: 6.2.0-GA-Consider, 6.2.0 Mar 25, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CL-BuildPackaging Indicates that a PR should be marked as a build or packaging change in the Change Log
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants