# README
ci-tricks

ci-tricks is a single-binary that can be run on multiple continuous integration providers to setup the environment in an efficient way.
WARNING: This approach is hacky, dirty and ugly. It is meant to provide some last resort hacks for projects that run on multiple CI providers and platforms.
Supported platforms
- Appveyor/Windows/amd64
- Travis/Linux/amd64 (sudo-enabled)
- Travis/macOS/amd64
Usage
- Set the environment variables as required by each trick.
- Run
ci-tricks
.
On Travis CI you can run latest ci-tricks
version with:
install:
- wget -qO - https://raw.githubusercontent.com/smola/ci-tricks/master/get.sh | bash
On Appveyor you can use:
install:
- ps: iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/smola/ci-tricks/master/get.ps1'))
Tricks
PostgreSQL
PostgreSQL can be set up by setting the POSTGRESQL_VERSION
environment variable to the desired PostgreSQL version.
Version | Travis/Linux | Travis/macOS | Appveyor/Windows |
---|---|---|---|
9.2 | ✅ | ❌ | ❌ |
9.3 | ✅ | ❌ | ❌ |
9.4 | ✅ | ✅ | ❌ |
9.5 | ✅ | ✅ | ✅ |
9.6 | ✅ | ✅ | ✅ |
10 | ✅ | ✅ | ✅ |
- '''Note:''' PostgreSQL 10 on Travis/Linux requires using xenial or higher.
RabbitMQ
RabbitMQ can be set up by setting the RABBITMQ_VERSION
environment variable to the desired RabbitMQ version.
Version | Travis/Linux | Travis/macOS | Appveyor/Windows |
---|---|---|---|
any | ✅ | ✅ | ✅ |
- '''Note:''' RabbitMQ on macOS will not work on old Travis images. Use
xcode9.4
or higher.
Contributing
Issues and pull requests are welcome.
Platforms: We are not accepting issues or pull requests related to running ci-tricks outside a continuous integration provider.
Bugs: If you find a bug, please, include a link to an affected CI build.
Features: We are open to include new tricks. For new services, we are initially interested only in those supported either by Travis or by Appveyor.
License
This project is released under the terms of the Apache License 2.0.