Details
- Reviewers
- None
- Group Reviewers
Blessed Reviewers - Required Signatures
L28 Phacility Individual Contributor License Agreement
Diff Detail
- Repository
- rXPRF XHProf
- Branch
- experimental (branched from patch-1)
- Lint
Lint Passed - Unit
Tests Passed - Build Status
Buildable 18771 Build 25296: arc lint + arc unit
Event Timeline
Why do we need sudo: required? What fails if we don't have it?
Does dist: trusty need to be updated every couple years? Does omitting dist mean "precise" forever? Is there a dist: reasonably-stable-recent-distro setting?
@epriestley For new projects the default is containers and Trusty.
For existing projects, the OS was eventually changed to match the new default. So dist: trusty is redundant indeed. I've removed it.
The use of VMs vs containers has not affected older/pre-existing projects as far as I know. So both with and without this change, it would use a VM. This change makes that explicit instead of relying on the fact that the Travis hook for phacility/xhprof was enabled before a certain date.
Before adding sudo: required, I did try a build without it, which failed. The log at https://travis-ci.org/phacility/xhprof/builds/284331493 documents the build failure. I'm not familiar enough with XHProf and PHP C-extensions to know why it failed, but I just assumed that it was known and intentional. I've taken another look at the logs of the failed build, but couldn't find anything obvious. The test runner doesn't even say whether there was an assertion failure, fatal error, or otherwise.
I'd like to understand why sudo: required is required. It doesn't seem like it should be required. If you aren't sure how to figure it out, I can dig into this eventually, or more likely move the build to Drydock and delete this file.
@epriestley In an attempt to figure out why the tests are failing in the container (sudo=false) mode, I triggered another build with an extra command to read the php test diffs read to stdout.
https://travis-ci.org/Krinkle/xhprof/jobs/341317027#L734
001+ setaffinity: Invalid argument 002+ setaffinity: Invalid argument 003+ Segmentation fault (core dumped) ... 005+ Termsig=11 ...
The other tests produced a similar error.