commercialhaskell / commercialhaskell/stack
Docs/Travis: Recommend sudo-enabled CI environment over container-based env?
- Dominant language
- Haskell
- Stars
- 4.1k
- Forks
- 850
- Avg merge
- 10h 37m
- Merged PRs (30d)
- 4
Description
In both `travis-simple.yml` and `travis-complex.yml` we currently recommend using the container-based CI environment:
```
# Use new container infrastructure to enable caching
sudo: false
```
The explanation in the comment is no longer correct though: https://blog.travis-ci.com/2016-05-03-caches-are-coming-to-everyone
Apart from fixing that comment, I'm wondering if we should recommend the sudo-enabled CI env over the container-based one. Judging from https://docs.travis-ci.com/user/ci-environment/#Virtualization-environments the most important differences between the two environments seem to be that:
* The container-based env will startup slightly faster
* The sudo-enabled env has more memory (7.5 GB vs. 4 GB)
* The container-based env has exactly 2 cores, while the sudo-enabled env has "~2, bursted" (and I [don't](https://github.com/travis-ci/travis-ci/issues/6191) [know](http://stackoverflow.com/questions/42601256/what-does-a-number-of-cores-of-2-bursted-mean) what that means.)
The difference in startup time isn't _that_ important for Haskell projects IMO: I'm under the impression that virtually any Haskell Travis job takes > 2 minutes anyway with many taking upwards of 10 minutes.
Now if the sudo-enabled env was known to be at least as fast as the container-based one, I'd recommend that one but I don't currently have that data. Does anyone know more about this?
Contributor guide
Assessment
This issue has not been assessed yet.