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

Auto-clearing the AppVeyor queue backlog #1938

Closed
effigies opened this issue Jul 30, 2019 · 5 comments
Closed

Auto-clearing the AppVeyor queue backlog #1938

effigies opened this issue Jul 30, 2019 · 5 comments

Comments

@effigies
Copy link
Contributor

Description

Hi all. DiPy has a pretty long build, which can end up causing congestion for other nipy projects when a lot of commits are pushed in a relatively short period, particularly for AppVeyor, which only gets one simultaneous job.

Occasionally if the queue is getting long, I will kill the builds for all but the most recent commits on AppVeyor, so each PR will not build superseded commits. (I leave master alone.) Apologies if this is abusing a privilege I have, but right now, for instance, there is a queue of 3 hour builds that would be 15 deep if I didn't do this, and now it's down to 7, which will still take most of a day. I assume you don't actually need every commit built.

I know Travis has a setting to auto-cancel jobs on PRs that are superseded by later commits, and I looked into this in AppVeyor. They're called rolling builds, and can be configured in https://ci.appveyor.com/project/nipy/dipy/settings.

For nibabel I'm trying out these settings:

Screen Shot 2019-07-30 at 08 23 04

I think this will reproduce my policy, which is to cancel all but the most recent commit, except master, which I'll cancel manually if I'm merging a lot at once.

Anyway, just something for y'all to consider when you get time. It took digging for me to find this, because of the unintuitive name, so I thought I'd share. And feel free to tell me to stop cancelling your jobs if you really do want them all built.

@skoudoro
Copy link
Member

Hi @effigies,

Occasionally if the queue is getting long, I will kill the builds for all but the most recent commits on AppVeyor, so each PR will not build superseded commits. (I leave master alone.)

Thank you really much for this! It makes me crazy too. We are thinking to move to Azure and leave Appveyor, they allow 10 parallel jobs / illimited time on Windows for opensource software. I will set up that for the release 1.1.

I know Travis has a setting to auto-cancel jobs on PRs that are superseded by later commits, and I looked into this in AppVeyor. They're called rolling builds, and can be configured in https://ci.appveyor.com/project/nipy/dipy/settings

Unfortunately, I do not have access to the nipy/dipy account on Appveyor so I can not set up this. @arokem or @Garyfallidis, Can you do it?

Anyway, just something for y'all to consider when you get time. It took digging for me to find this, because of the unintuitive name, so I thought I'd share. And feel free to tell me to stop cancelling your jobs if you really do want them all built.

Thank you for pinging us and feel free to cancel some builds until we manage to update our AppVeyor settings

@effigies
Copy link
Contributor Author

We are thinking to move to Azure and leave Appveyor, they allow 10 parallel jobs / illimited time on Windows for opensource software.

Same. Anything beyond working with a few PRs a day is just unmanageable with AppVeyor.

@larsoner
Copy link
Contributor

I just came to look into asking y'all to enable this. Been waiting 3h and counting for a PySurfer PR to run...

I have admin rights for the Nipy org on AppVeyor so I enabled this for dipy. Let me know if you want me to revert.

@skoudoro
Copy link
Member

I just came to look into asking y'all to enable this. Been waiting 3h and counting for a PySurfer PR to run..

Sorry for that...

I have admin rights for the Nipy org on AppVeyor so I enabled this for dipy

Thank you!

@skoudoro
Copy link
Member

closing since we use Azure pipelines now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants