tests for nginx-otel
Signed-off-by: Ava Hahn <a.hahn@f5.com>
This commit is contained in:
parent
1ed551b70b
commit
e7b504fa40
5 changed files with 15 additions and 15 deletions
|
|
@ -35,18 +35,18 @@ For Otel module build and tests:
|
||||||
- c-ares
|
- c-ares
|
||||||
- linux-headers
|
- linux-headers
|
||||||
- g++ / clang++ / etc
|
- g++ / clang++ / etc
|
||||||
|
- python3, pytest, pip
|
||||||
|
- protobuf, grpc
|
||||||
|
|
||||||
### FreeBSD
|
### FreeBSD
|
||||||
- need to install bash
|
- need to install bash
|
||||||
- need to set login shell to bash
|
- need to set login shell to bash
|
||||||
|
- need to install pkgconfig
|
||||||
|
|
||||||
### Fedora
|
### Fedora
|
||||||
- install zlib-ng-compat-devel and zlib-ng-compat-static for zlib, not zlibrary-devel or zlib-ng-devel.
|
- install zlib-ng-compat-devel and zlib-ng-compat-static for zlib, not zlibrary-devel or zlib-ng-devel.
|
||||||
- fedora also seems to need the openssl-devel-engine package.
|
- fedora also seems to need the openssl-devel-engine package.
|
||||||
|
|
||||||
### Alpine
|
|
||||||
- need to install clang instead of gcc
|
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
Invoke `test.sh` with some or all of the following flags:
|
Invoke `test.sh` with some or all of the following flags:
|
||||||
- `--nginx <nginx>` takes an nginx code directory and builds it on remote hosts
|
- `--nginx <nginx>` takes an nginx code directory and builds it on remote hosts
|
||||||
|
|
|
||||||
|
|
@ -55,7 +55,7 @@ function parallel_invoke_and_wait() {
|
||||||
wait $p
|
wait $p
|
||||||
local code=$?
|
local code=$?
|
||||||
log "procedure with input $input returned $code"
|
log "procedure with input $input returned $code"
|
||||||
if [[ $3 && ! $code == 0 ]]; then # needs to catch code==2, etc
|
if [[ $3 && ! $code == 0 ]]; then
|
||||||
log "tail of related logs..."
|
log "tail of related logs..."
|
||||||
tail ${3}${input}.log
|
tail ${3}${input}.log
|
||||||
log "see more in ${3}${input}.log"
|
log "see more in ${3}${input}.log"
|
||||||
|
|
|
||||||
9
nginx.sh
9
nginx.sh
|
|
@ -69,12 +69,17 @@ function clean_nginx() {
|
||||||
function build_otel() {
|
function build_otel() {
|
||||||
mkdir -p build && \
|
mkdir -p build && \
|
||||||
cd build && \
|
cd build && \
|
||||||
cmake -DNGX_OTEL_NGINX_BUILD_DIR=../../nginx/objs .. && \
|
cmake -DCMAKE_CXX_COMPILER=$(which g++) \
|
||||||
|
-DNGX_OTEL_NGINX_BUILD_DIR=../../nginx/objs \
|
||||||
|
-DNGX_OTEL_GRPC=package \
|
||||||
|
-DCMAKE_CXX_FLAGS="-D_LARGEFILE64_SOURCE" .. && \
|
||||||
make -j$(num_jobs)
|
make -j$(num_jobs)
|
||||||
}
|
}
|
||||||
|
|
||||||
function test_otel() {
|
function test_otel() {
|
||||||
echo "UNIMPLEMENTED!"
|
pip install --break-system-packages -r tests/requirements.txt
|
||||||
|
pytest tests --maxfail=10 --nginx=../nginx/objs/nginx \
|
||||||
|
--module=build/ngx_otel_module.so
|
||||||
}
|
}
|
||||||
|
|
||||||
function clean_otel() {
|
function clean_otel() {
|
||||||
|
|
|
||||||
10
test.sh
10
test.sh
|
|
@ -47,7 +47,7 @@ while [ $# -gt 0 ]; do
|
||||||
log "tests flag requires valid dir" && \
|
log "tests flag requires valid dir" && \
|
||||||
exit 1 )
|
exit 1 )
|
||||||
[ $nginx_dir ] || [ $otel_dir ] || ( \
|
[ $nginx_dir ] || [ $otel_dir ] || ( \
|
||||||
log "must set nginx flag before tests flag" && \
|
log "must set nginx or otel flag before tests flag" && \
|
||||||
exit 1 )
|
exit 1 )
|
||||||
tests_dir=$2
|
tests_dir=$2
|
||||||
;;
|
;;
|
||||||
|
|
@ -56,11 +56,7 @@ while [ $# -gt 0 ]; do
|
||||||
[ $2 ] || ( \
|
[ $2 ] || ( \
|
||||||
log "VM must be specified" && \
|
log "VM must be specified" && \
|
||||||
exit 1 )
|
exit 1 )
|
||||||
[[ $vms_available == *"$2"* ]] || ( \
|
vm_list="${vm_list}$2"$'\n'
|
||||||
log "VM not available" && \
|
|
||||||
exit 1 )
|
|
||||||
[ $vm_list ] && vm_list+="\n"
|
|
||||||
vm_list+=$2
|
|
||||||
;;
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
|
|
@ -76,7 +72,7 @@ done
|
||||||
[ $otel_dir ] && vm_otel_dir=$(basename $otel_dir)
|
[ $otel_dir ] && vm_otel_dir=$(basename $otel_dir)
|
||||||
[ $tests_dir ] && vm_tests_dir=$(basename $tests_dir)
|
[ $tests_dir ] && vm_tests_dir=$(basename $tests_dir)
|
||||||
|
|
||||||
if [ ! $vm_list ]; then
|
if [[ ! $vm_list ]]; then
|
||||||
vm_list=$(vms_avail)
|
vm_list=$(vms_avail)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
|
||||||
3
virt.sh
3
virt.sh
|
|
@ -164,11 +164,10 @@ function vsh() {
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
get_vm_ip $1
|
|
||||||
sshpass -p $PASSP \
|
sshpass -p $PASSP \
|
||||||
ssh -o PreferredAuthentications=password \
|
ssh -o PreferredAuthentications=password \
|
||||||
-o StrictHostKeyChecking=no \
|
-o StrictHostKeyChecking=no \
|
||||||
$USERN@$ret
|
$USERN@$(get_vm_ip $1)
|
||||||
|
|
||||||
turn_off_vm $1
|
turn_off_vm $1
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue