xref: /spdk/docker/spdk-app/init (revision 0f57273a578706b63281d885ff4c82e665719b76)
1e8ea27f8SMichal Berger#!/usr/bin/env bash
2eb53c232Spaul luse#  SPDX-License-Identifier: BSD-3-Clause
3eb53c232Spaul luse#  Copyright (C) 2021 Intel Corporation
4eb53c232Spaul luse#  All rights reserved.
5eb53c232Spaul luse#
6e8ea27f8SMichal Berger
7e8ea27f8SMichal Bergerapp=spdk_tgt args=() limit_args=()
8e8ea27f8SMichal Berger
9e8ea27f8SMichal Berger# Override default app
10e8ea27f8SMichal Bergerif [[ -n $SPDK_APP ]]; then
11e8ea27f8SMichal Berger	app=$SPDK_APP
12e8ea27f8SMichal Bergerfi
13e8ea27f8SMichal Berger
14e8ea27f8SMichal Berger# Define extra arguments to the app
15e8ea27f8SMichal Bergerif [[ -n $SPDK_ARGS ]]; then
16e8ea27f8SMichal Berger	args=($SPDK_ARGS)
17e8ea27f8SMichal Bergerfi
18e8ea27f8SMichal Berger
19e8ea27f8SMichal Berger# Limit the app with to following options,
20e8ea27f8SMichal Berger# to allow for minimal impact on the host.
21e8ea27f8SMichal Bergerlimit_args+=("--no-pci")
22e8ea27f8SMichal Bergerlimit_args+=("--num-trace-entries" 0)
23e8ea27f8SMichal Berger
24e8ea27f8SMichal Berger# if set, don't include limit_args[] on the cmdline
25e8ea27f8SMichal Bergerif [[ ! -v SPDK_NO_LIMIT ]]; then
26e8ea27f8SMichal Berger	args+=("${limit_args[@]}")
27e8ea27f8SMichal Bergerfi
28e8ea27f8SMichal Berger
29e8ea27f8SMichal Bergerif [[ -e /config ]]; then
30e8ea27f8SMichal Berger	args+=("--json" "/config")
31e8ea27f8SMichal Bergerfi
32e8ea27f8SMichal Berger
33e8ea27f8SMichal Berger# Wait a bit to make sure ip is in place
34e8ea27f8SMichal Bergersleep 2s
35e8ea27f8SMichal Berger
36*0f57273aSBoris Glimcherif [[ -n $SPDK_HTTP_PROXY ]]; then
37*0f57273aSBoris Glimcher	rpc_http_proxy.py $SPDK_HTTP_PROXY &
38*0f57273aSBoris Glimcherfi
39*0f57273aSBoris Glimcher
40e8ea27f8SMichal Bergerexec "$app" "${args[@]}"
41