Live data from Hacker News

How CircleCI Processes 4.5M Builds per Month

stackshare.io

21–30 of 89 posts

Re: How CircleCI Processes 4.5M Builds per Month

#21

Earlier quoted context omitted.

Apple's policy on VMs feels so backwards and it really bothers me. Apple expect you to have dedicated hardware if you want to do CI? It makes Mac/iOS projects a real pain and that's not including how much hassle Xcode only functionality is to script.

Apple are a hardware company… they don't make money unless you buy their hardware.

You'd think Apple would be interested in making the workflow for developers easier though so better apps would be made.

It's slightly better now but I've done iOS+Android mobile projects before where CI for Android has been easy to set up and CI for iOS has been a complete nightmare.

Re: How CircleCI Processes 4.5M Builds per Month

#22
post #5

Some of our builds are running on CircleCI but have been trying out drone for a more container focused build. Been enjoying the flexibility and increased speed from custom build images which are trivial to make.

Wercker is great, but the price jump above the free tier is a bit steep.

Re: How CircleCI Processes 4.5M Builds per Month

#23
post #14
post #10

Earlier quoted context omitted.

Turns out it's two, not four VMs. From macOS Sierra's EULA[0]: > (iii) to install, use and run up to two (2) additional copies or instances of the Apple Software within virtual operating system environments on each Mac Computer you own or control that is already running the Apple Software, for purposes of: (a) software development; (b) testing during software development; (c) using macOS Server; or (d) personal, non-…

Wouldn't it be covered by c, though? It's an or condition, not an and, the way I read it.

With c) you're allowed to run up to 2 copies. It doesn't really help you run a hundred containers on a powerful server... (Not that you easily legally could, as I guess the moat powerful Mac hw available is the Mac pro - not exactly great for rack deployment).

[ed: i guess you mean running os x server is an alternative to "non commercial use" - I agree with that reading. The option for nc use seems like a nod to not completely make experimentation and creative development/research entirely illegal.]

Re: How CircleCI Processes 4.5M Builds per Month

#24

Earlier quoted context omitted.

Apple are a hardware company… they don't make money unless you buy their hardware.

You'd think Apple would be interested in making the workflow for developers easier though so better apps would be made. It's slightly better now but I've done iOS+Android mobile projects before where CI for Android has been easy to set up and CI for iOS has been a complete nightmare.

LOL

Re: How CircleCI Processes 4.5M Builds per Month

#25

CircleCI rocks. Our tests ran almost as fast as they do on a MacBook. And their pricing is great. Of course, that was after trying to get shippable to work.

> Our tests ran almost as fast as they do on a MacBook. This doesn't seem like glowing praise to me? If I'm paying 50$ per month for a container, I want it to be faster than a laptop ...

macbook pro's are faster than any VM you can pay $50 a month for.

Re: How CircleCI Processes 4.5M Builds per Month

#27

Earlier quoted context omitted.

> Our tests ran almost as fast as they do on a MacBook. This doesn't seem like glowing praise to me? If I'm paying 50$ per month for a container, I want it to be faster than a laptop ...

> This doesn't seem like glowing praise to me? If I'm paying 50$ per month for a container, I want it to be faster than a laptop... Maybe I am doing it wrong but do people create and destroy a container thingy every time they run a test? I agree with you though. I am no expert by any means I'd expect Circle CI to be faster than a Macbook at building things like Google Chrome from scratch . But if the macbook already…

Yes, CircleCI creates a Docker container for every run. In the CircleCI 2.0 config style it is more explicit about this behavior (one specifies the Docker image they want to use) while in the 1.0 API, the config was more inferred / implicit. It can get more complicated than this, but at minimum every build on CircleCI is creating and destroying at least one container to run the unit test suite. It can do this pretty quickly though: a barebones Python repo (1 function, 22 parameterized unit tests) for me takes ~12 seconds from startup to teardown to displaying the completed build using 2.0 with virtual environment caching.

Re: How CircleCI Processes 4.5M Builds per Month

#28
post #4

This post makes no mention of the macOS part of the CircleCI infrastructure, which is one of the trickiest parts of infrastructure IMHO. Tricky because Apple's EULA prevents virtualizing on anything other than its hardware, never more than 4 VMs per host, and not for commercial purposes...

That's interesting. I always wondered why Macminicolo was so expensive relative to a Linux host (and how they did it).

Re: How CircleCI Processes 4.5M Builds per Month

#29
post #2

We are using GitLab CI, and it seems majority of the features of CircleCI are already provided in GitLab CI. Can someone with experience with CircleCI and GitLab CI to talk about some differences?

Gitlab ci works best with gitlab. Circle ci is is better suited for github

That pretty much sums it up. I've used both on different teams and like both. But everything in GitLab integrates so nicely that it doesn't make sense to break out of the box IMO. With the 2.0 API that just rolled out, CircleCI has flipped from "convention over configuration" to everything being explicit. I find that it takes a bit longer to write the config files in 2.0 but they're easier to read and understand what's going on because they're more explicit.

Since 2.0 just launched and they have solid example projects across languages, it's a good time to give it a shot. It'll be easier if you've never used the 1.0 version of the product IMO.

Re: How CircleCI Processes 4.5M Builds per Month

#30
Is this the only big success story for Clojure or other companies using the Lisp family of programming languages? I know there is Paul Graham's Viaweb. [1] Does anyone know of other examples?

I like the fact that they are a practical company, using Go when needed where "static dependency compilation and fast start-up are more important". I wonder if the ClojureScript's annoucement on integration of NodeJS modules [2] changes that? Also, Lumo [3] is definitely a move in the right direction for this, addressing the slow start-up times for Clojure/ClojureScript, making it suitable for shell scripts and CLI binaries.

> Having a lingua franca also helps reduce overhead when engineers want to move between layers of the stack.

The way I see it, Clojure allows you to use a single language and syntax from the super heavy backend stuffs, to the front end and now to small, fast CLI tools and scripts. A candidate for the "Business English" of the technical world as it were.

[1] http://www.paulgraham.com/avg.html

[2] https://news.ycombinator.com/item?id=14754614

[3] https://github.com/anmonteiro/lumo

Post reply on HN