buildgrid 0.3.4__tar.gz → 0.3.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {buildgrid-0.3.4 → buildgrid-0.3.5}/PKG-INFO +1 -1
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/bots/service.py +12 -3
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/scheduler/impl.py +30 -38
- buildgrid-0.3.5/buildgrid/server/sql/alembic/versions/ff09fbc30c3e_add_bots_version.py +47 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/models.py +1 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/provider.py +6 -1
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/version.py +1 -1
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid.egg-info/PKG-INFO +1 -1
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid.egg-info/SOURCES.txt +1 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/pyproject.toml +1 -1
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_scheduler.py +113 -84
- {buildgrid-0.3.4 → buildgrid-0.3.5}/BuildGrid.doap +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/CONTRIBUTING.rst +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/LICENSE +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/MANIFEST.in +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/README.rst +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/asset/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/asset/v1/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/asset/v1/remote_asset_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/asset/v1/remote_asset_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/asset/v1/remote_asset_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/asset/v1/remote_asset_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/asset/v1/remote_asset_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/asset/v1/remote_asset_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/execution/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/execution/v2/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/execution/v2/remote_execution_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/execution/v2/remote_execution_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/execution/v2/remote_execution_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/execution/v2/remote_execution_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/execution/v2/remote_execution_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/execution/v2/remote_execution_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/logstream/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/logstream/v1/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/logstream/v1/remote_logstream_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/logstream/v1/remote_logstream_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/logstream/v1/remote_logstream_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/logstream/v1/remote_logstream_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/logstream/v1/remote_logstream_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/remote/logstream/v1/remote_logstream_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/semver/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/semver/semver_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/semver/semver_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/semver/semver_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/semver/semver_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/semver/semver_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/bazel/semver/semver_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildbox/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildbox/execution_stats_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildbox/execution_stats_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildbox/execution_stats_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildbox/execution_stats_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildbox/execution_stats_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildbox/execution_stats_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/identity_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/identity_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/identity_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/identity_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/identity_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/identity_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/introspection_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/introspection_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/introspection_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/introspection_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/introspection_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/introspection_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/messaging_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/messaging_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/messaging_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/messaging_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/messaging_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/messaging_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/monitoring_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/monitoring_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/monitoring_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/monitoring_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/monitoring_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/monitoring_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/query_build_events_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/query_build_events_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/query_build_events_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/query_build_events_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/query_build_events_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/query_build_events_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/quota_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/quota_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/quota_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/quota_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/quota_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/quota_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/scheduling_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/scheduling_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/scheduling_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/scheduling_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/scheduling_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/build/buildgrid/scheduling_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/annotations_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/annotations_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/annotations_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/annotations_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/annotations_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/annotations_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/client_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/client_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/client_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/client_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/client_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/client_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/field_behavior_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/field_behavior_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/field_behavior_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/field_behavior_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/field_behavior_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/field_behavior_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/http_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/http_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/http_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/http_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/http_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/api/http_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/bytestream/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/bytestream/bytestream_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/bytestream/bytestream_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/bytestream/bytestream_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/bytestream/bytestream_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/bytestream/bytestream_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/bytestream/bytestream_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/build_events_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/build_events_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/build_events_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/build_events_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/build_events_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/build_events_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/build_status_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/build_status_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/build_status_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/build_status_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/build_status_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/build_status_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/publish_build_event_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/publish_build_event_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/publish_build_event_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/publish_build_event_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/publish_build_event_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/build/v1/publish_build_event_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/bots_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/bots_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/bots_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/bots_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/bots_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/bots_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/command_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/command_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/command_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/command_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/command_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/command_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/tasks_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/tasks_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/tasks_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/tasks_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/tasks_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/tasks_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/worker_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/worker_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/worker_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/worker_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/worker_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/devtools/remoteworkers/v1test2/worker_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/longrunning/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/longrunning/operations_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/longrunning/operations_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/longrunning/operations_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/longrunning/operations_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/longrunning/operations_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/longrunning/operations_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/code_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/code_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/code_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/code_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/code_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/code_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/error_details_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/error_details_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/error_details_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/error_details_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/error_details_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/error_details_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/status_pb2.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/status_pb2.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/status_pb2_grpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/status_pb2_grpc.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/status_pb2_grpc_aio.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/_protos/google/rpc/status_pb2_grpc_aio.pyi +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/caches/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/caches/action_cache_abc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/caches/lru_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/caches/mirrored_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/caches/redis_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/caches/remote_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/caches/s3_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/caches/sharded_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/caches/with_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/caches/write_once_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/instance.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/actioncache/service.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/cli.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/commands/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/commands/cmd_actioncache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/commands/cmd_capabilities.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/commands/cmd_cas.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/commands/cmd_cleanup.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/commands/cmd_execute.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/commands/cmd_janitor.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/commands/cmd_logstream.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/commands/cmd_operation.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/commands/cmd_quota.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/commands/cmd_server.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/commands/rpc_utils.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/settings/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/settings/config.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/settings/mapper.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/settings/parser.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/settings/reference.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/app/settings/schema.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/auth/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/auth/config.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/auth/enums.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/auth/exceptions.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/auth/manager.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/bots/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/bots/instance.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/build_events/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/build_events/service.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/build_events/storage.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/capabilities/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/capabilities/instance.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/capabilities/service.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/instance.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/service.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/disk.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/index/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/index/index_abc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/index/redis.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/index/sql.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/lru_memory_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/redis.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/remote.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/replicated.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/s3.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/sharded.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/size_differentiated.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/sql.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/storage_abc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cas/storage/with_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cleanup/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cleanup/cleanup.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cleanup/janitor/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cleanup/janitor/config.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cleanup/janitor/index.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cleanup/janitor/s3.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cleanup/janitor/sql.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cleanup/janitor/types.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/cleanup/janitor/utils.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/client/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/client/actioncache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/client/asset.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/client/auth_token_loader.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/client/authentication.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/client/capabilities.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/client/cas.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/client/channel.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/client/interceptors.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/client/logstream.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/client/quota.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/client/retrier.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/context.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/controller.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/decorators/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/decorators/authorize.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/decorators/errors.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/decorators/instance.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/decorators/io.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/decorators/limiter.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/decorators/metadata.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/decorators/requestid.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/decorators/rpc.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/decorators/time.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/enums.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/exceptions.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/execution/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/execution/instance.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/execution/service.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/introspection/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/introspection/instance.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/introspection/service.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/limiter.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/logging.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/metadata.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/metrics_names.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/metrics_tags.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/metrics_utils.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/monitoring.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/operations/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/operations/filtering/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/operations/filtering/filter.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/operations/filtering/filter_grammar.lark +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/operations/filtering/interpreter.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/operations/filtering/parser.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/operations/filtering/sanitizer.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/operations/instance.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/operations/service.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/quota/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/quota/service.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/redis/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/redis/provider.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/s3/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/s3/s3utils.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/scheduler/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/scheduler/assigner.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/scheduler/cohorts.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/scheduler/events.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/scheduler/notifier.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/scheduler/properties.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sentry.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/server.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/servicer.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/settings.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/README +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/env.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/script.py.mako +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/0596ea8f5c61_add_bot_locality_hints_table_and_.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/0c17a7cb2bc5_initial_database_state.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/12992085e81a_add_a_job_index_on_worker_name_and_.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/1f959c3834d3_drop_the_leases_table.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/22cc661efef9_add_instance_quotas_table.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/55acd9b4ec38_add_ix_jobs_property_label_stage.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/55fcf6c874d3_remove_request_metadata_from_operations.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/5745d1f0e537_drop_unused_indexes_and_create_.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/5b90ed0e9d0b_drop_ix_jobs_worker_name_stage.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/85096c931383_drop_ix_jobs_stage_property_label_and_.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/8f7f43e4a833_add_immutable_jobs_max_capacity_column.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/8fd7118e215e_add_instanced_job_scheduling_index.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/90bd87d052a0_add_an_audit_table_for_job_state_changes.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/910398062924_add_property_labels_table.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/9e7a59ee4370_add_bot_platform_capabilities_to_the_.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/9ecd996412a9_add_worker_name_to_jobs_table.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/b3b9d7300155_add_capacity_to_bots.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/bde0df23383b_add_cohort_to_bots.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/d850621a10d8_add_assigner_name_to_jobs.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/alembic/versions/fb8afebee8e6_add_ix_jobs_worker_name_stage.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/sql/utils.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/threading.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/types.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/utils/__init__.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/utils/async_lru_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/utils/bots.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/utils/cancellation.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid/server/utils/digests.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid.egg-info/dependency_links.txt +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid.egg-info/entry_points.txt +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid.egg-info/requires.txt +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/buildgrid.egg-info/top_level.txt +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/all-in-one.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/artifacts.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/bots-interface.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/cache.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/controller.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/default.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/logstream.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/monitoring-controller.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/multi-container.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/multi-layer-storage.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/redis-cache.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/s3-indexed-cas.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/storage-redis.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/storage-s3.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/storage.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/with-metering.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/data/config/with-pgbouncer.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/docs/Makefile +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/docs/source/data/basic-disk-cas.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/docs/source/data/bazel-example-server.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/docs/source/data/buildstream-example-server.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/docs/source/data/cas-and-ac.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/docs/source/data/cas-example-server.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/docs/source/data/execution-and-bots.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/docs/source/data/postgresql-index-cas-only.yml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/docs/source/index.rst +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/setup.cfg +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/setup.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/auth.yaml +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwks-valid.json +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwt-hs256-conflicting.secret +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwt-hs256-expired.token +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwt-hs256-matching.secret +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwt-hs256-unbounded.token +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwt-hs256-valid.token +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwt-rs256-conflicting.pub.key +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwt-rs256-expired.token +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwt-rs256-jwk-encrypted.token +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwt-rs256-matching.priv.key +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwt-rs256-matching.pub.key +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwt-rs256-unbounded.token +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/auth/data/jwt-rs256-valid.token +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_async_lru_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_example_configs.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_execution_instance.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_instance_pools.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_job_assigner.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_limiter.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_logging.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_metrics_tags.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_metrics_utils.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_mirrored_cache.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_request_metadata_utils.py +0 -0
- {buildgrid-0.3.4 → buildgrid-0.3.5}/tests/test_utils.py +0 -0
|
@@ -120,16 +120,18 @@ class BaseBotsService:
|
|
|
120
120
|
orig_leases_count = len(request.bot_session.leases)
|
|
121
121
|
with scheduler.bot_notifier.subscription(request.bot_session.name) as event:
|
|
122
122
|
capacity = get_bot_capacity(request.bot_session)
|
|
123
|
-
leases = scheduler.synchronize_bot_leases(
|
|
123
|
+
leases, new_version = scheduler.synchronize_bot_leases(
|
|
124
124
|
request.bot_session.name,
|
|
125
125
|
request.bot_session.bot_id,
|
|
126
126
|
request.bot_session.status,
|
|
127
|
+
int(request.bot_session.version) if request.bot_session.version else 0,
|
|
127
128
|
request.bot_session.leases,
|
|
128
129
|
lease_id_to_partial_execution_metadata,
|
|
129
130
|
max_capacity=capacity,
|
|
130
131
|
)
|
|
131
132
|
del request.bot_session.leases[:]
|
|
132
133
|
request.bot_session.leases.extend(leases)
|
|
134
|
+
request.bot_session.version = str(new_version)
|
|
133
135
|
|
|
134
136
|
LOGGER.debug("Completed initial lease synchronization.", tags=bot_log_tags(request.bot_session))
|
|
135
137
|
|
|
@@ -231,11 +233,18 @@ class BaseBotsService:
|
|
|
231
233
|
|
|
232
234
|
# Synchronize the lease again to pick up db changes.
|
|
233
235
|
LOGGER.debug("Synchronizing leases after job assignment wait.", tags=bot_log_tags(bot_session))
|
|
234
|
-
if
|
|
235
|
-
bot_session.name,
|
|
236
|
+
if leases_version := scheduler.synchronize_bot_leases(
|
|
237
|
+
bot_session.name,
|
|
238
|
+
bot_session.bot_id,
|
|
239
|
+
bot_session.status,
|
|
240
|
+
int(bot_session.version) if bot_session.version else 0,
|
|
241
|
+
bot_session.leases,
|
|
242
|
+
max_capacity=capacity,
|
|
236
243
|
):
|
|
244
|
+
leases, new_version = leases_version
|
|
237
245
|
del bot_session.leases[:]
|
|
238
246
|
bot_session.leases.extend(leases)
|
|
247
|
+
bot_session.version = str(new_version)
|
|
239
248
|
|
|
240
249
|
|
|
241
250
|
class BotsService(BotsServicer, BaseBotsService, InstancedServicer[BotsInterface]):
|
|
@@ -918,7 +918,7 @@ class Scheduler:
|
|
|
918
918
|
update_query = (
|
|
919
919
|
update(BotEntry)
|
|
920
920
|
.where(BotEntry.bot_id == job.worker_name)
|
|
921
|
-
.values(capacity=BotEntry.capacity + 1)
|
|
921
|
+
.values(capacity=BotEntry.capacity + 1, version=BotEntry.version + 1)
|
|
922
922
|
.returning(BotEntry.cohort)
|
|
923
923
|
)
|
|
924
924
|
if cohort := session.execute(update_query).scalar_one_or_none():
|
|
@@ -1127,6 +1127,7 @@ class Scheduler:
|
|
|
1127
1127
|
|
|
1128
1128
|
bot.lease_id = job.name
|
|
1129
1129
|
bot.last_update_timestamp = datetime.utcnow()
|
|
1130
|
+
bot.version += 1
|
|
1130
1131
|
|
|
1131
1132
|
# Reduce the capacity by 1, to prevent overallocation to this specific bot
|
|
1132
1133
|
bot.capacity -= 1
|
|
@@ -1999,10 +2000,11 @@ class Scheduler:
|
|
|
1999
2000
|
bot_name: str,
|
|
2000
2001
|
bot_id: str,
|
|
2001
2002
|
bot_status: int,
|
|
2003
|
+
bot_version: int,
|
|
2002
2004
|
bot_session_leases: Sequence[Lease],
|
|
2003
2005
|
partial_execution_metadata: dict[str, ExecutedActionMetadata] | None = None,
|
|
2004
2006
|
max_capacity: int = 1,
|
|
2005
|
-
) -> list[Lease]:
|
|
2007
|
+
) -> tuple[list[Lease], int]:
|
|
2006
2008
|
log_tags = {
|
|
2007
2009
|
"instance_name": try_current_instance(),
|
|
2008
2010
|
"request.bot_id": bot_id,
|
|
@@ -2071,8 +2073,6 @@ class Scheduler:
|
|
|
2071
2073
|
# release locks
|
|
2072
2074
|
session.commit()
|
|
2073
2075
|
|
|
2074
|
-
# Backwards compatibility: Activate any pending leases for this bot
|
|
2075
|
-
self._activate_bot_pending_leases(bot_id, instance_restricted_bot)
|
|
2076
2076
|
# Report completed leases
|
|
2077
2077
|
if completed_leases or self.proactive_fetch_to_capacity:
|
|
2078
2078
|
active_leases = self._synchronize_completed_leases(
|
|
@@ -2080,47 +2080,38 @@ class Scheduler:
|
|
|
2080
2080
|
)
|
|
2081
2081
|
|
|
2082
2082
|
# Synchronize active lease from scheduler
|
|
2083
|
-
return self._synchronize_active_leases(
|
|
2083
|
+
return self._synchronize_active_leases(
|
|
2084
|
+
bot_name,
|
|
2085
|
+
bot_id,
|
|
2086
|
+
bot_version,
|
|
2087
|
+
instance_restricted_bot,
|
|
2088
|
+
active_leases,
|
|
2089
|
+
log_tags,
|
|
2090
|
+
)
|
|
2084
2091
|
|
|
2085
2092
|
except (BotSessionMismatchError, BotSessionClosedError) as e:
|
|
2086
2093
|
self.close_bot_sessions(bot_name)
|
|
2087
2094
|
raise e
|
|
2088
2095
|
|
|
2089
|
-
def _activate_bot_pending_leases(self, bot_id: str, instance_restricted_bot: bool) -> None:
|
|
2090
|
-
# Activate any pending leases for a bot that may have been assigned by an old version of scheduler
|
|
2091
|
-
with self._sql.session() as session:
|
|
2092
|
-
pending_leases_stmt = (
|
|
2093
|
-
select(JobEntry)
|
|
2094
|
-
.where(
|
|
2095
|
-
JobEntry.worker_name == bot_id,
|
|
2096
|
-
JobEntry.assigned.is_(True),
|
|
2097
|
-
JobEntry.stage == OperationStage.QUEUED.value,
|
|
2098
|
-
)
|
|
2099
|
-
.with_for_update(skip_locked=True)
|
|
2100
|
-
)
|
|
2101
|
-
|
|
2102
|
-
# If this bot is instance-restricted, only look for jobs in the current instance.
|
|
2103
|
-
if instance_restricted_bot:
|
|
2104
|
-
pending_leases_stmt = pending_leases_stmt.where(self._job_in_instance_pool())
|
|
2105
|
-
|
|
2106
|
-
for job in session.execute(pending_leases_stmt).scalars().all():
|
|
2107
|
-
log_tags = {
|
|
2108
|
-
"instance_name": job.instance_name,
|
|
2109
|
-
"request.bot_id": bot_id,
|
|
2110
|
-
"db.lease_id": job.name,
|
|
2111
|
-
"db.lease_state": job.lease_state(),
|
|
2112
|
-
"db.job_stage": job.stage,
|
|
2113
|
-
}
|
|
2114
|
-
LOGGER.info("Activating pending lease for bot.", tags=log_tags)
|
|
2115
|
-
job.stage = OperationStage.EXECUTING.value
|
|
2116
|
-
self._create_logstream_for_job(job, log_tags)
|
|
2117
|
-
self._notify_job_updated(job.name, session)
|
|
2118
|
-
|
|
2119
2096
|
def _synchronize_active_leases(
|
|
2120
|
-
self,
|
|
2121
|
-
|
|
2097
|
+
self,
|
|
2098
|
+
bot_name: str,
|
|
2099
|
+
bot_id: str,
|
|
2100
|
+
bot_version: int,
|
|
2101
|
+
instance_restricted_bot: bool,
|
|
2102
|
+
active_leases: list[Lease],
|
|
2103
|
+
log_tags: Tags,
|
|
2104
|
+
) -> tuple[list[Lease], int]:
|
|
2122
2105
|
synchronized_leases = []
|
|
2106
|
+
new_bot_version = bot_version
|
|
2123
2107
|
with self._sql.session() as session:
|
|
2108
|
+
if db_bot_version := session.execute(
|
|
2109
|
+
select(BotEntry.version).where(BotEntry.name == bot_name)
|
|
2110
|
+
).scalar_one_or_none():
|
|
2111
|
+
new_bot_version = db_bot_version
|
|
2112
|
+
if db_bot_version == bot_version:
|
|
2113
|
+
return active_leases, bot_version
|
|
2114
|
+
|
|
2124
2115
|
bot_jobs_stmt = select(JobEntry).where(
|
|
2125
2116
|
JobEntry.worker_name == bot_id,
|
|
2126
2117
|
JobEntry.stage >= OperationStage.QUEUED.value,
|
|
@@ -2248,7 +2239,7 @@ class Scheduler:
|
|
|
2248
2239
|
|
|
2249
2240
|
synchronized_leases.append(job.to_lease_proto())
|
|
2250
2241
|
|
|
2251
|
-
return synchronized_leases
|
|
2242
|
+
return synchronized_leases, new_bot_version
|
|
2252
2243
|
|
|
2253
2244
|
def _synchronize_completed_leases(
|
|
2254
2245
|
self,
|
|
@@ -2305,6 +2296,7 @@ class Scheduler:
|
|
|
2305
2296
|
|
|
2306
2297
|
# Adjust bot capacity
|
|
2307
2298
|
bot.capacity += num_synced
|
|
2299
|
+
bot.version += 1
|
|
2308
2300
|
|
|
2309
2301
|
# Determine how many jobs to proactively fetch
|
|
2310
2302
|
fetch_limit = bot.capacity if self.proactive_fetch_to_capacity else num_synced
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Copyright (C) 2025 Bloomberg LP
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# <http://www.apache.org/licenses/LICENSE-2.0>
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
|
|
15
|
+
"""Add bots.version
|
|
16
|
+
|
|
17
|
+
Revision ID: ff09fbc30c3e
|
|
18
|
+
Revises: 8f7f43e4a833
|
|
19
|
+
Create Date: 2025-12-17 13:09:00.326376
|
|
20
|
+
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
import sqlalchemy as sa
|
|
24
|
+
from alembic import op
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
# revision identifiers, used by Alembic.
|
|
28
|
+
revision = "ff09fbc30c3e"
|
|
29
|
+
down_revision = "8f7f43e4a833"
|
|
30
|
+
branch_labels = None
|
|
31
|
+
depends_on = None
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
def upgrade() -> None:
|
|
35
|
+
# ### commands auto generated by Alembic - please adjust! ###
|
|
36
|
+
with op.batch_alter_table("bots", schema=None) as batch_op:
|
|
37
|
+
batch_op.add_column(sa.Column("version", sa.BigInteger(), server_default=sa.text("0"), nullable=False))
|
|
38
|
+
|
|
39
|
+
# ### end Alembic commands ###
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def downgrade() -> None:
|
|
43
|
+
# ### commands auto generated by Alembic - please adjust! ###
|
|
44
|
+
with op.batch_alter_table("bots", schema=None) as batch_op:
|
|
45
|
+
batch_op.drop_column("version")
|
|
46
|
+
|
|
47
|
+
# ### end Alembic commands ###
|
|
@@ -283,6 +283,7 @@ class BotEntry(Base):
|
|
|
283
283
|
bot_status: Mapped[int]
|
|
284
284
|
lease_id: Mapped[str | None]
|
|
285
285
|
capacity: Mapped[int] = mapped_column(server_default=text("1"))
|
|
286
|
+
version: Mapped[int] = mapped_column(BigInteger, server_default=text("0"))
|
|
286
287
|
|
|
287
288
|
# Auditing data
|
|
288
289
|
expiry_time: Mapped[datetime.datetime] = mapped_column(index=True)
|
|
@@ -407,7 +407,12 @@ class SqlProvider:
|
|
|
407
407
|
if transient_dberr:
|
|
408
408
|
LOGGER.warning("Rolling back database session due to transient database error.", exc_info=True)
|
|
409
409
|
else:
|
|
410
|
-
|
|
410
|
+
# Only log full stacktrace if exception is not expected to be suppressed
|
|
411
|
+
log_stacktrace = type(e) not in exceptions_to_not_raise_on
|
|
412
|
+
if log_stacktrace:
|
|
413
|
+
LOGGER.error("Error committing database session. Rolling back.", exc_info=True)
|
|
414
|
+
else:
|
|
415
|
+
LOGGER.warning(f"Error committing database session. Rolling back: {repr(e)}")
|
|
411
416
|
if type(e) not in exceptions_to_not_raise_on:
|
|
412
417
|
if transient_dberr:
|
|
413
418
|
# Ask the client to retry when the pool is expected to be healthy again
|
|
@@ -375,6 +375,7 @@ buildgrid/server/sql/alembic/versions/b3b9d7300155_add_capacity_to_bots.py
|
|
|
375
375
|
buildgrid/server/sql/alembic/versions/bde0df23383b_add_cohort_to_bots.py
|
|
376
376
|
buildgrid/server/sql/alembic/versions/d850621a10d8_add_assigner_name_to_jobs.py
|
|
377
377
|
buildgrid/server/sql/alembic/versions/fb8afebee8e6_add_ix_jobs_worker_name_stage.py
|
|
378
|
+
buildgrid/server/sql/alembic/versions/ff09fbc30c3e_add_bots_version.py
|
|
378
379
|
buildgrid/server/utils/__init__.py
|
|
379
380
|
buildgrid/server/utils/async_lru_cache.py
|
|
380
381
|
buildgrid/server/utils/bots.py
|