Proper and consistent behavior of the scons build tool is pretty important to repeatable builds. Not aware of any current behavior that's actually broken by old versions of scons, but the patchset to enable java building through scons had to jump through some hoops because it has builtin knowledge of java versions, limited to java versions that existed when that scons version was released. Which is its own interesting issue: by using an old scons, we have to use an old java. Would prefer the same scons to be used everywhere so there are no surprises.
The builders for Linux are based on a very old Ubuntu distribuion, 12.04, which though it was an LTS version has passed Ubuntu's definition of "long" (only 14.04 and 16.04 are still supported as LTS). The distro package there is scons 2.1.0.
It's not that hard to force a specific scons version distinct from the distro version, though we should move off the old Ubuntus also. Here's one approach to provision with a specific version on a Linux host:
At this point "scons" will resolve to the one in the virtualenv, and it will be version 2.5.1 that we requested. The build can proceed normally from there.