google / personfinder

Person Finder is a searchable missing person database written in Python and hosted on App Engine.
https://google.org/personfinder
Apache License 2.0
527 stars 195 forks source link

Travis CI noise #493

Open nworden opened 5 years ago

nworden commented 5 years ago

A Travis CI build failed for PR #486 (specifically, this commit) with this error:

ERROR: for web Cannot start service web: driver failed programming external connectivity on endpoint personfinder_web_1 (bac62aa93b95176c4e84fc5a7cb2d0b0a25786df8423d999b4aaafb1448e5c8b): Error starting userland proxy: listen tcp 0.0.0.0:49532: bind: address already in use

It doesn't make sense that that commit could cause any build failures: we don't yet have integration tests for the React app (or any tests for the React app at all, for that matter). Plus, the URLs from the previous version of the code don't exist yet anyway. So I'm pretty confident the commit's code wasn't the cause of the failure.

This happened when I had a couple other tests running at the same time, so I wonder if maybe the builds aren't 100% isolated from each other.

gimite commented 5 years ago

Looks like it passed: https://travis-ci.org/google/personfinder/builds/483695302

Have you rerun the job? Or maybe it was another job?

When it fails, you can rerun the job to see if it's a transient error or not.

nworden commented 5 years ago

It did pass on a subsequent commit, but the new commit was just adding a comment, so it shouldn't have fixed anything if something was broken.

gimite commented 5 years ago

I see, then it does look like a transient error.

Maybe ports aren't dedicated for each job in Travis CI, so we shouldn't hard-code port numbers?: https://github.com/google/personfinder/blob/56622624bc65e7e9c5f9aa7342067d0e7d0013c0/docker/gae-run-app.sh#L5