forked from Deuxfleurs/garage
49 lines
1.8 KiB
YAML
49 lines
1.8 KiB
YAML
when:
|
|
event:
|
|
- push
|
|
- tag
|
|
- pull_request
|
|
- deployment
|
|
- cron
|
|
- manual
|
|
|
|
steps:
|
|
- name: check formatting
|
|
image: nixpkgs/nix:nixos-22.05
|
|
commands:
|
|
- nix-shell --attr devShell --run "cargo fmt -- --check"
|
|
|
|
- name: build
|
|
image: nixpkgs/nix:nixos-22.05
|
|
commands:
|
|
- nix-build --no-build-output --attr clippy.amd64 --argstr git_version ${CI_COMMIT_TAG:-$CI_COMMIT_SHA}
|
|
|
|
- name: unit + func tests
|
|
image: nixpkgs/nix:nixos-22.05
|
|
environment:
|
|
GARAGE_TEST_INTEGRATION_EXE: result-bin/bin/garage
|
|
GARAGE_TEST_INTEGRATION_PATH: tmp-garage-integration
|
|
commands:
|
|
- nix-build --no-build-output --attr clippy.amd64 --argstr git_version ${CI_COMMIT_TAG:-$CI_COMMIT_SHA}
|
|
- nix-build --no-build-output --attr test.amd64
|
|
- ./result/bin/garage_db-*
|
|
- ./result/bin/garage_api-*
|
|
- ./result/bin/garage_model-*
|
|
- ./result/bin/garage_rpc-*
|
|
- ./result/bin/garage_table-*
|
|
- ./result/bin/garage_util-*
|
|
- ./result/bin/garage_web-*
|
|
- ./result/bin/garage-*
|
|
- GARAGE_TEST_INTEGRATION_DB_ENGINE=lmdb ./result/bin/integration-* || (cat tmp-garage-integration/stderr.log; false)
|
|
- nix-shell --attr ci --run "killall -9 garage" || true
|
|
- GARAGE_TEST_INTEGRATION_DB_ENGINE=sqlite ./result/bin/integration-* || (cat tmp-garage-integration/stderr.log; false)
|
|
- nix-shell --attr ci --run "killall -9 garage" || true
|
|
- GARAGE_TEST_INTEGRATION_DB_ENGINE=rocksdb ./result/bin/integration-* || (cat tmp-garage-integration/stderr.log; false)
|
|
- rm result
|
|
- rm -rv tmp-garage-integration
|
|
|
|
- name: integration tests
|
|
image: nixpkgs/nix:nixos-22.05
|
|
commands:
|
|
- nix-build --no-build-output --attr clippy.amd64 --argstr git_version ${CI_COMMIT_TAG:-$CI_COMMIT_SHA}
|
|
- nix-shell --attr ci --run ./script/test-smoke.sh || (cat /tmp/garage.log; false)
|