I believe last time I’ve checked the free plan had 1,500 minutes of build time free per month. But I’ve checked on my account (and on the pricing page now) and I see 1,000 minutes.
Has it always been 1,000 or has it been reduced recently? Any official announcements on the matter?
Yes, looks like a free tier change has been made, see the pricing page. That’s unfortunate, as GitLab have offered 2,000 minutes/month for some time (and still do). It was indeed 1,500 for many months, at least back to October 2017. I guess it changed in August or September 2018.
I wonder if the cost of supporting an increasing number of free tier users went past the budget that was set for them?
Just wanted to clear things up here. Yes the build minutes allowance did drop. An email was sent out a couple of weeks ago to existing free tier customers about this. The information is also posted in the CircleCI Changelog.
Open source projects aren’t affected by this change though.
It doesn’t matter too much on my side, but I don’t think I received it. A quick email search reveals I did get:
October 2018 updates from CircleCI
September 2018 updates: CircleCI 2.1 configuration, Xcode 10 image available for macOS jobs, upcoming events, and more!
I’m well within the new tier, so the change isn’t onerous for me, but just for interest: I can’t see that my build times have changed much at all. The change log indicates I should be seeing 33% speed improvements.
I’ve just looked through some history, and my daily PhantomJS + PHP browser tests are stubbornly on 9:30 to 11:00 minutes. If the 33% was across the board I’d be looking at dropping to 6 or 7 minutes.
I wonder if I am using time-based waits too much? I seem to recall I did a lot of DOM testing to wait for element changes, but perhaps there is something I am forgetting
I’m not too sure, I wasn’t part of putting out that email and the underlying message but I believe the build speed improves happened gradually earlier this year as we switched the hardware we were working with. It’s not like on the day the message went out we flipped a switch for the change.
I myself have sleep 10 scattered throughout various CircleCI configs though it’s not necessarily the right way to do it. There’s plenty of posts such as this one where people are trying to figure out the best way to wait for things. It’s something I’m thinking about and hoping to write about soon.
Yeah. I believe my tests are broadly in this form:
while (dom element does not exist && not timeout) {
sleep(1/10th sec)
}
if (dom element exists) {
read status of dom element
} else {
exit with error / fail
}
I might take a look at it to see if there is an area that could be optimised, but perhaps my tests just are not CPU bound.