...
- Jenkins:
- ability to self-manage plugins, credentials, job parameters
- start and restart build feature for maintainers
- Multiplatform/multiarchitecture builds:
- Linux x86_64, armv7 (hard to find large RAM instances), armv8
- Windows x86_64
- MacOS x86_64
- Multi compilers:
- gcc5, gcc7, clang6, Apple clang (on macos), Visual C++ (windows)
- Instead of compiling on a native platform cross-compilation can be used (but it hurts):
- Requires a list of specific-version dependencies for each platform
- Compiling dependencies for other dependencies
- ~ 2-2.5GB RAM per compilation thread (currently builds are running on one-off AWS EC2 instances (c5.2xlarge))
- Uploading artifacts to DockerHub and our Nexus repository (debug builds, etc)
Fabric
Support for Existing Setups:
- Docker