#!/bin/bash
#
-# Copyright (C) 2019 Jonathan Rajotte-Julien <jonathan.rajotte-julien@efficios.com>
+# Copyright (C) 2019 Jonathan Rajotte <jonathan.rajotte-julien@efficios.com>
#
# SPDX-License-Identifier: LGPL-2.1-only
TESTDIR=$CURDIR/../../..
EVENT_NAME="lttng_test_filter_event"
-TRACE_PATH=$(mktemp -d)
+TRACE_PATH=$(mktemp --tmpdir -d tmp.test_metadata_env_kernel_trace_path.XXXXXX)
NUM_TESTS=13
function test_kernel ()
{
- local metadata
- local metadata_env
local metadata_path
local value
local expected_path="${TRACE_PATH}/lttng-traces"
local session_name="kernel"
+ local metadata_env
- metadata=$(mktemp)
- metadata_env=$(mktemp)
+ metadata_env=$(mktemp --tmpdir "tmp.${FUNCNAME[0]}_metadata_env.XXXXXX")
diag "Test Kernel metadata env field"
create_lttng_session_ok "$session_name"
# bt1 accepts only a directory while bt2 accepts either the metadata
# file directly or a directory with an immediate metadata file.
# Settle for the common denominator.
- metadata_path=$(find "${expected_path}/${session_name}"* | grep metadata)
+ metadata_path=$(find "${expected_path}/${session_name}"* -name "metadata")
metadata_path=$(dirname "$metadata_path")
- $BABELTRACE_BIN --output-format=ctf-metadata "${metadata_path}" > "$metadata"
-
- # Extract "env" scope
- awk '/env {/,/};/' < "$metadata" > "$metadata_env"
+ extract_env_to_file "$metadata_path" "$metadata_env"
# Construct the expected path from the env metadata and use it to
# validate that all information make sense. This information is present
ok $? "Extracting hostname from env metadata"
is "$value" "$(hostname)" "Hostname is valid"
- rm -f "$metadata"
rm -f "$metadata_env"
}
plan_tests $NUM_TESTS
print_test_banner "$TEST_DESC"
+bail_out_if_no_babeltrace
if [ "$(id -u)" == "0" ]; then
isroot=1
${fct_test}
done
- rmmod lttng-test
+ modprobe --remove lttng-test
stop_lttng_sessiond
unset LTTNG_HOME