This repository has been archived on 2024-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
dagger/tests
Erik Sipsma efa24a44a0 client: fix deadlock when connect to buildkitd fails
Before this change, if BUILDKIT_HOST was set to an invalid value that
resulted in the connection of the grpc client to the server to fail,
then deadlock occured waiting for the `eventsCh` to be closed.

This happened because the call to the buildkit client's Build method
returned an error before the provided callback was executed, which is
where the `eventsCh` gets closed.

This change places the creation of `eventsCh` inside the Build callback,
which avoids the increment of the WaitGroup and thus the deadlock in
this error path.

Signed-off-by: Erik Sipsma <erik@sipsma.dev>
2022-04-07 19:34:53 -07:00
..
cue.mod implements dagger project update 2022-03-08 16:58:20 -07:00
plan Add experimental way to set a target platform when building 2022-04-05 18:24:14 -03:00
stdlib/terraform/s3
tasks ci: Unify keys and add private key for testing purposes 2022-03-30 19:18:32 -03:00
age_key.txt ci: Unify keys and add private key for testing purposes 2022-03-30 19:18:32 -03:00
helpers.bash Fix export cache issue 2022-03-31 20:36:50 +02:00
package.json Fix export cache issue 2022-03-31 20:36:50 +02:00
plan.bats client: fix deadlock when connect to buildkitd fails 2022-04-07 19:34:53 -07:00
project.bats tests: Adding update to project info for negative test case 2022-04-07 17:17:42 -04:00
README.md
secrets_sops.yaml ci: Unify keys and add private key for testing purposes 2022-03-30 19:18:32 -03:00
tasks.bats Move core actions to a subpackage 2022-03-27 17:33:47 +00:00
yarn.lock tests: upgraded bats 2021-12-17 13:25:04 -08:00

Testing

TL;DR

# Install dependencies
yarn install

# Install gnu parallel if needed
# macOS
brew install parallel
# Debian derivatives
# apt-get install parallel

# Install sops if needed
# macOS
brew install sops

# Run all tests
yarn test

By default, the dagger binary is expected to be found in ../cmd/dagger/dagger relative to the tests directory.

If you need to change this, pass along DAGGER_BINARY=somewhere/dagger

Run a single test

To run a single test:

make && ./tests/node_modules/.bin/bats "./tests/<TESTFILE>.bats" -f "<TESTNAME>"