vaticle / typedb-driver

TypeDB Drivers for Rust, Python, Java, Node.js, C, C++, and C#.
https://typedb.com
Apache License 2.0
30 stars 32 forks source link

Add Bazel remote cache setup for CircleCI unix commands #628

Closed farost closed 2 months ago

farost commented 2 months ago

Usage and product changes

CircleCI has random fails because of some process races (when a setup process takes too much time to initialize) or network errors working with Bazel (Server terminated abruptly (error code: 14, error message: 'Socket closed', log file: '/root/.cache/bazel/_bazel_root/37e9b89f8be6f62402523a372e67422a/server/jvm.out')).

To address the last problem, we connect CircleCI builds to our Bazel remote cache for each Bazel operation on Unix-based systems. This way, we won't send too many requests to the remote Bazel servers, using already existing build results from our cache when it's possible.

Implementation

We add a remote cache setup call before each Bazel command for Unix CircleCI builds.

vaticle-bot commented 2 months ago

PR Review Checklist

Do not edit the content of this comment. The PR reviewer should simply update this comment by ticking each review item below, as they get completed.


Trivial Change

Code

Architecture

farost commented 2 months ago

This PR can cause some of the machines to have errors because of the too big amount of open files (it had already been tested before), so we don't go this way.