summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2024-07-16StorageConfig: Store also the execution backend description idPaul Cristian Sarbu
...such that it will be available to the TargetCache for sharing. Also, GC does not require remote execution information, so the logic for this subcommand is moved earlier in main.
2024-07-16target service: Replace duplicated code in TC shard computationPaul Cristian Sarbu
...by using the new DescribeBackend method instead. This ensures that the TC shard computation is indeed consistent between local and serve endpoint.
2024-07-16Create separate library for DescribeBackendPaul Cristian Sarbu
2024-07-16Add useful aliases for platform properties and dispatch endpointPaul Cristian Sarbu
2024-07-16Remove the LocalExecutionConfig singletonPaul Cristian Sarbu
...and replace it with passed instances created early via a builder pattern.
2024-07-16Pass LocalExecutionConfig to TargetServicePaul Cristian Sarbu
2024-07-16Pass LocalExecutionConfig to ApiBundlePaul Cristian Sarbu
2024-07-16Pass LocalExecutionConfig to LocalAction and LocalApiPaul Cristian Sarbu
2024-07-16LocalAction, BazelAction: Extend constness in fields and methodsPaul Cristian Sarbu
2024-07-16Remove Data struct from LocalExecutionConfigPaul Cristian Sarbu
...to simplify the class and clarify the singleton pattern in preparation for its removal.
2024-07-16Add missing RemoteExecutionConfig includesPaul Cristian Sarbu
2024-07-16Ensure config builders always have a valid statePaul Cristian Sarbu
...by making the respective Build methods const. It should be perfectly valid for multiple Build calls to happen for the same builder instance, so its internal state should never be invalidated by, e.g., moving from internal fields.
2024-07-12Remove redundant ArtifactFactory class used in tests onlyMaksim Denisov
...and move the related tests to artifact_description.test
2024-07-12ArtifactFactory: remove FromDescription methodMaksim Denisov
...since it is used in tests only.
2024-07-12ArtifactFactory: remove Identifier methodMaksim Denisov
...since it is used in tests only. It also duplicated serialization-deserialization of ArtifactDescription.
2024-07-12Use precalculated hash for comparison of ArtifactDescriptionsMaksim Denisov
...instead of comparing raw data.
2024-07-12Use static Create functions to construct ArtifactDescriptionMaksim Denisov
...instead of unobvious ctors relying on overload resolution.
2024-07-12Move implementation details of ArtifactDescription to the cpp fileMaksim Denisov
2024-07-12DAG: remove methods used in tests onlyMaksim Denisov
2024-07-12DAG: remove IsValid since it is used in tests only.Maksim Denisov
2024-07-12DAG: remove unused methodsMaksim Denisov
2024-07-12Capture in TreeReaders by pointer to avoid temporariesMaksim Denisov
2024-07-12Replace IBundle classes family with BazelBlobMaksim Denisov
2024-07-12Return std::nullopt if creation of an action digest failsMaksim Denisov
...instead of dereferencing nullptr.
2024-07-12Pack arguments of CreateActionDigestFromCommandLine to a structMaksim Denisov
2024-07-12Remove unused parameters in CreateDirectoryDigestFromTreeMaksim Denisov
2024-07-12Move BazelMsgFactory reading functions to a separate classMaksim Denisov
2024-07-12Store newly spliced executables as copies.Maksim Denisov
During multithreaded splicing, the main process can be forked (inheriting open file descriptors). In this case, the executable file saved using hardlinking becomes inaccessible. To prevent this, executables must be stored as copies made in a child process.
2024-07-11just: Fix storage instantiation in mainPaul Cristian Sarbu
As the storage instance also instantiates the target cache, we need to ensure that each such instance has at that point all the correct remote endpoint information to ensure the target cache sharding works as expected. In particular, the server-side and client-side operations of just have a slightly different setup for the remote endpoint address, therefore they require the storage instantiation to be done separately.
2024-07-10ParallelRetrieveToCas: process prerequisites in parallelKlaus Aehlig
2024-07-10ParallelRetrieveToCas: avoid duplicated requestsKlaus Aehlig
While no additional blob will be transferred, doing a request for missing blobs is still a request and, in particular, an unnecessary round trip. Therefore avoid this, by remembering what we synchronized already.
2024-07-10Artifact::ObjectInfo: add orderKlaus Aehlig
2024-07-10ArtifactDigest: add orderKlaus Aehlig
2024-07-05local action: copy input file on reaching symlink limitKlaus Aehlig
... and continue with the newly created copy as target for the next hard links. In this way, we get rid of the restriction we used to have that the number of identical inputs be not greater than the hardlink limit.
2024-07-05FileSystemManager::CreateFileHardlink: return error code on failureKlaus Aehlig
Instead of returning a plain boolean, return an expected with the same boolean value that in case of an error indicates the error code. In this way, an error-specific handling is possible by consumers. While there, also add proper quoting of the involved file names.
2024-07-05Convert StorageConfig to a general classMaksim Denisov
2024-07-05Convert Storage to a general classMaksim Denisov
2024-07-05Call uplinking via UplinkerMaksim Denisov
... instead of static calls to GarbageCollector
2024-07-05Implement uplinking logic in a separate class.Maksim Denisov
2024-07-05Use StorageConfig with generation for initialization of Storage's generationsMaksim Denisov
...instead of std::filesystem::path. StorageConfig is extended to return paths of Storage's parts.
2024-07-05Pass StorageConfig and Storage to just-mr mapsMaksim Denisov
2024-07-05Pass Storage to add-to-casMaksim Denisov
2024-07-05Pass Storage to RepositoryConfigMaksim Denisov
...and adjust AnalyseContext.
2024-07-05Pass StorageConfig and Storage to LocalApiMaksim Denisov
2024-07-05Pass StorageConfig and Storage to ServerImplMaksim Denisov
2024-07-05Pass StorageConfig and Storage to ServeMaksim Denisov
2024-07-05Pass StorageConfig to git_repo and git_repo_remoteMaksim Denisov
2024-07-05Pass Storage and StorageConfig to StorageUtils by referenceMaksim Denisov
2024-07-05Pass StorageConfig to GarbageCollectionMaksim Denisov
2024-07-05Pass StorageConfig to GarbageCollector::SharedLockMaksim Denisov