tutorials icon indicating copy to clipboard operation
tutorials copied to clipboard

dynamically adjust testing timeout

Open Borda opened this issue 3 years ago • 2 comments

🚀 Feature

Dynamically extend the time limit for running CI on PR touching more content

Motivation

do not penalise PR which are touching multiple notebooks

Additional context

Run one tiny job which would determine how many notebooks are changed, and pass this count N to the test job and for example set timeout for testing as N*30min

Borda avatar Jun 25 '21 09:06 Borda

could be useful for Azure: https://gaunacode.com/passing-variables-between-jobs-for-azure-devops-pipelines

Borda avatar Dec 05 '21 22:12 Borda

another an even better way would be building notebooks in parallel similar to https://github.com/PyTorchLightning/metrics/pull/764 and https://github.com/PyTorchLightning/ecosystem-ci/pull/18

For publishing, it is rather simple, as the git merge goes in CPU job, and each consecutive notebook will be its own job with... For testing it is rather tricky as the testing shall be required check so not sure yet how to include all dynamic jos... :rabbit:

Borda avatar Apr 10 '22 05:04 Borda

yep, so the initial job will generate a list of needed builds and handle eventual removals, and then all particular jobs could even have larger customization such as OS or Python versions... :otter:

Multi-job configuration

  • https://learn.microsoft.com/en-us/azure/devops/pipelines/process/phases?view=azure-devops#multi-job-configuration

Borda avatar Jan 01 '23 15:01 Borda