crate-ci / azure-pipelines

Easy continuous integration for Rust projects with Azure Pipelines
MIT License
88 stars 24 forks source link

Provide just install and solid default #73

Closed jonhoo closed 4 years ago

jonhoo commented 4 years ago

This removes most of the templates from the repository, and encourages anyone who cannot use the (very opinionated and inflexible) default.yml template to write their own azure-pipelines.yml (probably by copy-pasting from default.yml and hand-tuning) that's based only on the provided install-rust.yml template.

This frees us up from all the pain of trying to maintain configuration parameters for every possible use-case, which still allowing easy setup for most projects.

I'd like to hear opinions on this change before merging though.

jonhoo commented 4 years ago

This approach should also result in much faster builds, since we'll no longer be compiling the thing again and again in different jobs.

jonhoo commented 4 years ago

@epage Yeah, the intention behind default.yml is that it is for "standard-looking" crates. That is, no nightly-only features, no weird build steps, single crate, etc. That should, I think, cover like 80% of projects. For anything else, the strategy should be to just copy-paste default.yml (which isn't really that complicated any more) and modify as needed. Part of the reasoning here is that for the remaining 20% of projects, we end up with a plethora of different, subtly different requirements, and we end up in "parameter hell" like we saw in 0.2 :)

jonhoo commented 4 years ago

Consolidated the docs into README.md (which I think makes sense now that the repo is simpler) and updated them!