Skip to content

TMP: How to run integration tests

shyamjesal edited this page Jun 3, 2021 · 4 revisions

To be incorporated into the docs folder

Cri Tests on bare metal

./scripts/cloudlab/setup_node.sh
# in 3 separate terminals, run
sudo containerd
sudo /usr/local/bin/firecracker-containerd --config /etc/firecracker-containerd/config.toml
source /etc/profile && go build && sudo ./vhive
# in new termical, create a k8s cluster
cd vhive
./scripts/cluster/create_one_node_cluster.sh
# wait for the pods to boot up
watch kubectl get pods -A
# Setup local registry
go run ./examples/registry/populate_registry.go -imageFile ./examples/registry/images.txt
# deploy functions
kn service apply helloworld -f ./configs/knative_workloads/helloworld.yaml
kn service apply helloworldlocal -f ./configs/knative_workloads/helloworld_local.yaml
kn service apply helloworldserial -f ./configs/knative_workloads/helloworldSerial.yaml
kn service apply pyaes -f ./configs/knative_workloads/pyaes.yaml
# run tests
cd cri
go test ./ -v -race -cover
# clean 
./scripts/github_runner/clean_cri_runner.sh

Integration tests on bare metal

./scripts/cloudlab/setup_node.sh
sudo apt-get install numactl linux-tools-`uname -r` -y
ln -s /usr/bin/python3 /usr/bin/python
./scripts/install_pmutools.sh

go build -race -v -a ./...
make test
# clean
./scripts/clean_fcctr.sh
./scripts/cloudlab/setup_node.sh
go build -race -v -a ./...
make test-man-bench
# clean
./scripts/clean_fcctr.sh