Making tests a prerequisite for others; Caching in between these tests
Hello,
Is it possible to make groups of tests, make some depend on others and execute them in order? I'd like to build some dependencies first, cache them and make that cache available to the jobs that depend on them. That would significantly decrease build time for me because large libraries would only need to be built one time instead of N times. I guess that would also require some change to the cache semantics.
Kind regards
Noel
Comments are currently closed for this discussion. You can start a new one.
Keyboard shortcuts
Generic
? | Show this help |
---|---|
ESC | Blurs the current field |
Comment Form
r | Focus the comment reply box |
---|---|
^ + ↩ | Submit the comment |
You can use Command ⌘
instead of Control ^
on Mac
Support Staff 1 Posted by Feodor Fitsner on 17 Mar, 2020 07:26 PM
Hi Noel,
Do you mean dependencies between build jobs within a single build?
2 Posted by noel.kuntze on 18 Mar, 2020 12:14 PM
Hello Feodor,
Yes, exactly.
Support Staff 3 Posted by Feodor Fitsner on 18 Mar, 2020 08:01 PM
Yes, it's possible. Look at this yaml template defining 3 jobs running in a sequence:
Support Staff 4 Posted by Feodor Fitsner on 18 Mar, 2020 08:03 PM
You can also have groups of jobs and then depend on a group, for example:
Now jobs
Part 1 - A
andPart 1 - B
will be running in parallel andDelay between parts
will run when all jobs withinPart 1
group are finished.We are going to document this functionality this week.
5 Posted by noel.kuntze on 19 Mar, 2020 10:09 AM
Hello Feodor,
Thank you for your insight! I will test this out later. :)
Kind regards
Noel
6 Posted by noel.kuntze on 27 Mar, 2020 09:48 AM
Hello Feodor,
How are the cache semantics of appveyor exactly? Is the cache updated in between jobs already? So can i pass data from job 1 to job 2 via a cache, if they run consecutively?
Kind regards
Noel
Support Staff 7 Posted by Feodor Fitsner on 01 Apr, 2020 05:31 PM
Hi Noel,
The cache is job-specific. However, you can pack your dependencies (intermediate results), upload (deploy) to Azure storage, S3 or FTP account and then download/unpack in the next jobs. This is what, actually, AppVeyor cache does.
8 Posted by noel.kuntze on 02 Apr, 2020 02:16 PM
Hi Feodor,
Thank you for your response.
Kind regards
Noel
noel.kuntze closed this discussion on 02 Apr, 2020 02:16 PM.