{"thread":{"id":"49556","subject":"git issue with builds on Travis-CI","startedAt":"2018-10-13T05:27:26Z","lastAt":"2018-10-13T05:27:26Z","messageCount":1,"participants":["Maurice McCabe"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"360379","messageId":"CAGTUGAszwA63eYi2on_Pn4mSu4n2YDjv9kiakmbCT38gj30iNw@mail.gmail.com","threadId":"49556","inReplyTo":null,"subject":"git issue with builds on Travis-CI","fromName":"Maurice McCabe","fromEmail":"mmcc007@gmail.com","sentAt":"2018-10-13T05:21:57Z","receivedAt":"2018-10-13T05:27:26Z","isPatch":false,"sender":{"key":"mmcc007@gmail.com","avatar":null},"body":"There is a problem on travis-ci with doing builds on Pull Requests\nwith multiple jobs. For each job it will build off the FETCH_HEAD. The\nproblem is that if the FETCH_HEAD changes while the build is running\n(due to a commit), the subsequent jobs will build off the new\nFETCH_HEAD. This results in loss of integrity of the build.\n\nThe fix would have been doing a fetch by the SHA-1 (commit) instead of\nthe FETCH_HEAD. But this results in an error:\n\"error: Server does not allow request for unadvertised object\"\n\nSince this is not working, the current option available to the people\nat travis-ci is to abandon the build with an error message. This is\nnot a good user experience. The preferred option is to trigger a new\nbuild when a commit is made.\n\nYou can see more details about the problem in this comment:\nhttps://github.com/travis-ci/travis-ci/issues/8577#issuecomment-336596843\nand the current discussion:\nhttps://github.com/travis-ci/travis-ci/issues/10210\n\nBTW: on reading the git mailing list a suggestion seems to be to ask\nthe server operator (GitHub in this case) to set:\n\"git config uploadpack.allowReachableSHA1InWant 1\"\nApparently this has some security implications.\n\nDoes anyone have a suggestion how to do a fetch by SHA-1? Or is there\nanother approach to solve this issue on travis-ci?\n\nThnx,\n\nMaurice\n"}]}