cargo template-ci - automatically generate a fast travis.yml

In all my rust projects, I use travis to provide continuous integration services, and to validate that things are correct. However, rust's commandline utilities have changed a lot (and clippy still does!), so I had to adjust the invocations in every single .travis.yml I had. Not fun!

So here's a little tool that will generate a .travis.yml file for your project according to a few flags, with a bunch of nice things:

Running

Once installed, you can run this tool in a rust project with cargo template-ci. It will overwrite the project's existing .travis.yml, so make sure you check if it did a good job!

Configuring

By default, the configuration is as follows:

You can configure the generated config file by editing your project's package metadata in Cargo.toml: Everything lives under the key package.metadata.template_ci. This project has an example that makes clippy failures fatal.

Here's a list of configurable keys:

There are additional matrix build settings: