Cross-platform hosted continuous integration

Are there existing platforms for cross-platform continuous integration with Linux + OSX + Windows?

The workflow I'm looking for is:

  • I pass GitHub or change PR.
  • Using a single set of configuration scripts, the project is compiled and tested on Linux, Windows, and OSX machines.
  • If everything goes smoothly, artifacts are uploaded to S3 or something like that, and ping returns to the github status API.
  • It all works in the cloud, so I donโ€™t need to manage the infrastructure.
  • The pricing structure is either free for open-source (cannot surpass it) or sufficiently accessible to access small to medium open source projects.
  • The platform is not limited to web applications or scripting languages. At some point, we will need to compile some C / C ++.

A variety of platforms handle this side of Linux: TravisCI, CircleCI, CodeShip, etc. I know that AppveyorCI does this for Windows.

Does any provider provide CI for all three platforms?

+5
source share
2 answers

It can be built on top of Jenkins and the IaaS provider.

Jenkins will be responsible for polling GitHub (or receive messages from him about fixing the message) and run the assembly on the slave nodes. You will need three slaves, one for each platform you need (Linux, Windows, and OSX). This will be an open source solution, as Jenkins, Linux, and the OSX kernel are Open Source (not Windows, of course).

With all that can be done, the cloud can be used with the hosted CI + service provider IaaS for slave devices.

You can look at http://clinkerhq.com , which provides Jenkins as a service and subordinate sites at an affordable price.

Disclaimer: I participate in ClinkerHQ.

+1
source

Binstar.org offers the CI service (beta so far), which provides all three platforms. But access to Linux is free. It is provided by the creators of Anaconda, and therefore there is close integration with conda (-build) and binstar downloads.

  • The assembly configuration is stored in the git repository, so the assemblies must run on push / pr.

  • Write .binstar.yml to indicate howto build for all platforms. http://docs.binstar.org/build_config.html

  • The service has tight integration with Binstar, but I think S3 may also be possible.

  • Yes, it is a cloud service.

  • Its 47 $ / month for organizations to access all platforms. 7 $ / m for a personal account.

  • Since the conda assembly is going to create extensions, it should provide c / C ++ compilers.

+1
source

Source: https://habr.com/ru/post/1207688/


All Articles