12 ms·
How CircleCI Processes 4.5M Builds per Month
- devy 9y agoWe 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?
- the_common_man 9y agoGitlab ci works best with gitlab. Circle ci is is better suited for github
- tedmiston 9y agoThat 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.
- skrebbel 9y agoCircle works great with Bitbucket too, by the way.
- felicianotech 9y agoTo be clear, CircleCI doesn't support GitLab. So if you're using GitLab for a VCS host, you might as well use GitLab CI and the integration will be nice there. If you're using GitHub or Bitbucket, you can't use GitLab CI as they only support their own product. So in that case, CircleCI will be the best choice. So whether or not you want to use GitHub or GitLab is a different discussion. :) note: There is a hack to get GitLab CI to work with other VCS hosts but that requires mirroring everything over to GitLab which isn't ideal. disclaimer: I work for CircleCI
- Davia 9y agoURGENT LOAN HELP @ 2% INTEREST RATE with Victoriafinancier@outlook.com I was stuck in a financial situation and i needed to refinance and pay my bills for my son's medication and buy a home. I tried seeking for a loans from various loan firms both private and corporate but never with success, and most banks declined my credit. But as God would have it, i was introduced to VICTORIA LAWSON Trust Loan Firm ( victoriafinancier@outlook.com ) with 2% interest by a friend, and i got a loan amount within 2 weeks because i was not always online to responds to her mails. Today am a business owner and my kids are doing well... so i want to advice any one in need of a loan to quickly contact her via email on victoriafinancier@outlook.com. I own Victoria every day appreciation for all she has done in my life. Her service is strong, big and reliable. Full Name:_________ Address:_________ Tell:_________ loan amount:_________ Loan duration:_________ Country:_________ Purpose of loan:_________ Monthly Income:__________ Occupation__________ Next of kin:_________ *Email :_________ Contact Her today { victoriafinancier@outlook.com } for quick and financial assistance
- jpsim 9y agoThis 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...
- koolba 9y agoWhat's the commercial usage limitation? Is that specifically for virtualization of OSX to prevent offering a "Mac On Demand" by not letting you run the OS itself?
- jpsim 9y agoTurns 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-commercial use. [0]: http://images.apple.com/legal/sla/docs/macOS1012.pdf http://images.apple.com/legal/sla/docs/macOS1012.pdf
- orf 9y agoWouldn't it be covered by c, though? It's an or condition, not an and, the way I read it.
- e12e 9y agoWith 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.]
- justinwp 9y agoSome 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.
- ergo14 9y agoI feel like http://concourse.ci/ http://concourse.ci/ might be the sweet spot here.
- dtech 9y agoCircleCi 2.0 left beta last week and is fully docker based
- tedmiston 9y agoThey also provide a set of official pre-built Docker images for each language so 2.0 is easy to use even if your project doesn't use Docker. https://circleci.com/docs/2.0/circleci-images/ https://circleci.com/docs/2.0/circleci-images/
- timdorr 9y agoWercker is great, but the price jump above the free tier is a bit steep.
- clarkdave 9y agoIf you don't mind tinkering, I highly recommend Buildkite. They provide the management & cloud UI and you run the actual build agents on your own infrastructure. When you get it going it blows everything else away in value for money. We routinely have hundreds of containers on-the-go and as many concurrent builds as we need; this all runs on a large AWS spot instance at a cost of about $50 a month. Added bonus: our docker cache is always available. Buildkite provide a CloudFormation stack, but we just opted to run the agents as containers via ECS to make the setup quicker and managing them easier.
- robertely 9y ago
- stretchwithme 9y agoCircleCI 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.
- isaac_is_goat 9y ago> 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...
- thanksgiving 9y ago> 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 has a head start, then coming a close second is acceptable I suppose? To be honest, I have no idea what I am talking about and hoping to learn more. My experience with CI is mostly with hobby projects with Gitlab CI and Travis CI. I've only ever "used" Atlassian Bamboo at work if you can call me pushing code to trunk/origin "using Bamboo".
- tedmiston 9y agoYes, 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.
- 9y ago
- tlackemann 9y agoCircleCI has been faster and easier to use than TravisCI. Their macOS builds ran 10x faster and it only took me an hour to rewrite the config. My only complaint is their macOS pricing is based on minutes which I was unaware of. Ended up using 80% of my minutes this month so needed to rethink my build strategy. Not huge, but just a consideration.
- the_mitsuhiko 9y agoI find circle to build significantly slower and it can only build xcode projects. Not impressed at all.
- mrmrcoleman 9y agoMain downside is paid-for parallelism. Ideally (and I'm sure they'll get there) is per second billed builds. Other that that, great job and nice write up.
- circular_logic 9y agoI think each container can have up to 8 cores. So using multiple containers to parallelise your tests is your choice.
- priornix 9y agoIs 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 http://www.paulgraham.com/avg.html [2] https://news.ycombinator.com/item?id=14754614 https://news.ycombinator.com/item?id=14754614 [3] https://github.com/anmonteiro/lumo https://github.com/anmonteiro/lumo
- laktek 9y agoYeah, I also found it interesting. Curious what's their hiring pipeline for Clojure devs? I know a couple of startups that picked Clojure ended up having troubles finding good devs.
- priornix 9y agoWell, I found it found it hard to hire Clojure developers too. But I addressed it by hiring good to competent developers, asking if they are willing to learn Clojure and then getting them to implement a test project in Clojure as part of the interview process. Since Clojure is syntactically not huge, it is easy to pickup, for good developers. That's my hiring pipeline. ;)
- kornish 9y agoOut of interest, roughly what percentage of candidates agreed to take on the project?
- _pmf_ 9y agoThat's pretty impressive, given that a build typically hogs CPU as well as IO.