So during the whole setup of my actions, I had no idea there were any limits to overall usage since the documentation only talked about concurrency limits, not total time limits. I got surprise billed since the default billing option is unlimited. While annoying, that’s fine, it was only a few bucks.
My real questions is: what can we do to optimize our build times? I’m definitely going to remove some of the extraneous platforms now that I know about it, however there’s a few things going on that are outside my ability to control:
Windows time is charged double, but it’s by far the longest to compile.
I have to use devenv to build and it has very expensive first time startup costs, line 28-29 is when devenv is invoked, it took 9 minutes just to start.
How can we deal with dependencies on external SDK? I use Vulkan which takes 2 minutes each run to install.
When trying to make any changes to CI, there’s alot of trial and error involved when pushing changes to the yml file. I probably blew 90% of my first months budget just getting things setup.
I think for the short term I’ll collapse seperate builds (debug,release,retail) into a single run so I the vulkan and deven costs don’t hit me too hard, but what can we do about some of these redundant, fixed costs in the long term? Is there any way to iterate on the build config without eating too much time other than disabling everything while iterating?