summaryrefslogtreecommitdiff
path: root/test/end-to-end
AgeCommit message (Collapse)Author
2023-11-22Test ["end-to-end/gc", "export"]: fix workspace layoutKlaus Aehlig
This end-to-end test, of course, depends on the tools, provided inside the test's working directory. The test, being end to end, constructs a workspace with multi-repository configuration with the main repo a file repsoitory at the root of the constructed work space; to be able to test exporting this repository has pragma "to_git". Move the constructed work space to sub directory to not include the tools to be tested in the work space that is gitified; one the one hand, the tested tools should not be part of the test workspace and on the other hand, this shaves off a large fraction of the test's run time.
2023-11-21test: Verify fetching from just serve of absent distdir archivesPaul Cristian Sarbu
2023-11-21Extend --fetch-absent tests to verify regular fetching from just serveKlaus Aehlig
Whenever a just-serve endpoint is given, fetching archives or Git commits from there is preferrable to fetching them from other sources. Verify in the tests that this actually happens. Co-authored-by: Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com>
2023-11-16test: Check that serve service works in compatible modePaul Cristian Sarbu
Added compatibility envariable to the with_serve rule, guarded tests using --fetch-absent such that they run only in native mode, and made all serve-service tests aware of the compatibility flag.
2023-11-16remote-execution-endpoint: fall back to remote-serve-endpointAlberto Sartori
If only the `--remote-serve-endpoint` option is specified on the command line, the `--remote-execution-endpoint` is also set to the given value. This makes the spawning and usage of just-execute consistent. When just-serve is started, if no remote execution endpoint is provided, the same process will also act as a just-execute instance. With the current patch, the client can thus only write, on command line, the remote serve address, avoiding the repetition of the same address for two different options.
2023-11-16end-to-end serve-target-cache-hit: test the failure if...Alberto Sartori
...the client and serve use two different remote execution endpoints fixup test
2023-11-15just-serve: add end-to-end testsAlberto Sartori
serve_target_remote_build.sh should be updated once just-serve can orchestrate the remote build
2023-11-15test end-to-end: Expose the serve build root in the test environmentPaul Cristian Sarbu
This will allow end-to-end tests to pre-populate the serve build root if needed.
2023-11-15test end-to-end: Cleanup of with_serve runner Python scriptPaul Cristian Sarbu
2023-11-15test ["end-to-end/just-mr", "git-tree-env"]: fix negative test conditionKlaus Aehlig
This test was only working by accident, as the missing target specification ["", "sources.txt"] was making the build fail, not the (supposedly) unset variable. Fix this by looking only at the setup command and expect failure there---and also unset the correct variable.
2023-11-15git tree repository: Creating absent roots should not run the commandPaul Cristian Sarbu
Also extended absent-roots test with this scenario.
2023-11-14test: Set a fixed number of retries for starting Python servers...Paul Cristian Sarbu
...to avoid waiting for the test timeout on an internal error.
2023-11-14test: Fetch from mirrors given in just's specification filePaul Cristian Sarbu
2023-11-14test: Add check for 'mirrors' field in just-mr repositoriesPaul Cristian Sarbu
2023-11-13test: Verify unlink of symlinksOliver Reiche
2023-11-13Add end-to-end test for environment handling of "git tree" repositoriesKlaus T. Aehlig
... ensuring that just-mr passes on the specified environment variables (and only those) to the tree-generating action.
2023-11-02just-mr fetch: Add handling of --fetch-absent optionPaul Cristian Sarbu
2023-11-02test: Add simple check that 'just serve' resolves symlinks as expectedPaul Cristian Sarbu
2023-11-02serve test runner: Fix style and missing counter incrementPaul Cristian Sarbu
2023-11-02Add end-to-end test for fetching absent archivesKlaus Aehlig
Includes check to ensure we do not cache subtrees unnecessarily. Co-authored-by: Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com>
2023-11-02ArchiveOps: Move libarchive utilities outside other_toolsPaul Cristian Sarbu
This way they can be used by 'just serve'.
2023-10-27Add a test for similar but different exportsKlaus Aehlig
Export the same target from different repositories, as well as an explicit file reference with the same name and verify that no spourious cache hits occur.
2023-10-20with_serve_test_runner.py: terminate serve process at the endAlberto Sartori
2023-09-28Avoid conflicts on case-insensitive file systemsKlaus Aehlig
... by renaming test/end-to-end/targets.
2023-09-22Add regression test that --fetch-absent does not store a subtreeKlaus Aehlig
... as tree for the whole commit, and thus pollutes subsequent builds.
2023-09-20Add end-to-end test for the absent configuration of just-mrKlaus Aehlig
2023-09-15just-mr: ensure that after --fetch-absent a local build is possibleKlaus Aehlig
... by also keeping the map of commit to tree locally.
2023-09-15Add an end-to-end test for fetching absent rootsKlaus Aehlig
2023-09-15Add infrastructure for end-to-end tests using just serveKlaus Aehlig
2023-09-15just serve: add remote execution endpoint and --fetch-absent optionPaul Cristian Sarbu
The serve service will communicate with this endpoint when needed, as well as ensure artifacts it provides are synced with the remote execution CAS, if requested by the client. If just-mr is given the --fetch-absent option, it Always produce present roots irrespective of the 'absent' pragma. For Git repositories marked with the 'absent' pragma, first try to fetch any commit trees provided by the serve endpoint from the execution endpoint CAS, before reverting to a network fetch. Co-authored-by: Klaus Aehlig <klaus.aehlig@huawei.com> Co-authored-by: Alberto Sartori <alberto.sartori@huawei.com>
2023-09-13test: Check that just-mr creates correct absent rootsPaul Cristian Sarbu
2023-09-01add basic test for deduplicationKlaus Aehlig
... verifying that deduplication does not modify the analysis result.
2023-08-29python: Add type hints and fix style in test scriptsPaul Cristian Sarbu
For maximum compatibility, we use the uppercase types from the typing package instead of the built-in types, therefore compliant with PEP 484 and PEP 526.
2023-08-28Add end-to-end test that the shell is settable in "generic"Klaus Aehlig
2023-08-25test: Check that just-mr interacts correctly with a remote endpointPaul Cristian Sarbu
The argument --backup-to-remote of just-mr and, thus, also this test can only be run in native mode.
2023-08-24test: verify that actions with incompelete outputs are requestedKlaus Aehlig
... on next invocation, instead of being taken from cache.
2023-08-17["shell/test", "script"] Rename implicit dependenciesKlaus Aehlig
... and document at the appropriate places what can be overwritten by setting those targets.
2023-08-14ArchiveOps: reduce verbosity in archive type enumPaul Cristian Sarbu
2023-08-11Add basic end-to-end test for build -PKlaus Aehlig
... also verifying that we can look into tree outputs
2023-08-10test: Add checks for the 'symlink' built-in rulePaul Cristian Sarbu
2023-08-08Add a test verifying the overwrite property of install and install-casKlaus Aehlig
Verify that install and install-cas do not overwrite and instead replace existing files. This behaviour is less surprising for the user in the presence of hard links.
2023-08-07test: Add checks for 'special' pragma in just-mrPaul Cristian Sarbu
Checks that the new 'special' pragma works for all supported repository types. In particular, checks that symlinks get resolved as expected and that resolved trees add their unresolved counterparts to the CAS for 'file' and 'archive' type repositories. Splits install-roots test into a basic check which works with the bootstrappable just-mr, and a new check focusing on the newly introduced 'special' pragma.
2023-08-07just-mr: Set ignore-special roots via a pragma...Paul Cristian Sarbu
...instead of a regular field. Also removes the ignore-special logic from distdir repositories, as those will never contain symlinks, so no entries would be ignored.
2023-07-27install-cas test: also verify the -P optionKlaus Aehlig
2023-07-27link install-cas test to test suiteKlaus Aehlig
While there, fix a typo in the setup.
2023-07-26Add basic test for install-casKlaus Aehlig
... verifying the consistency of the representation of trees between local and remote CAS.
2023-07-25test_server: avoid racesKlaus Aehlig
... by creating a file only once the server is ready and waiting for that file instead of waiting a fixed period of time.
2023-07-21bugfix: stage symlinks as symlinks when creating an action directoryAlberto Sartori
Before this patch, when creating an action directory, symlinks were staged as regular files.
2023-07-11test: Extend coverage for symlinks and ignore_special rootsPaul Cristian Sarbu
2023-07-10test: Extend cas-independent check with .gitignore filePaul Cristian Sarbu