mgr/dashboard: dashboard Jenkins job fails with "global_init: error reading config file. dirname: missing operand"
Ran into the dirname error on my local env when running vstart:
RGW=1 ../src/vstart.sh -n -x /root/src/ceph/build/bin/ceph-conf: error while loading shared libraries: libssl3.so: cannot open shared object file: No such file or directory dirname: missing operand Try 'dirname --help' for more information.
Added set -x to the e2e test script, output of the Jenkins job is now:
+ cd src/pybind/mgr/dashboard + timeout 7200 ./run-frontend-e2e-tests.sh + BASE_URL= + DEVICE= + REMOTE=false + getopts d:r: flag + '[' '' == '' ']' ++ command -v google-chrome + '[' -x /usr/bin/google-chrome ']' + DEVICE=chrome ++ pwd + DASH_DIR=/home/jenkins-build/build/workspace/ceph-dashboard-pull-requests/src/pybind/mgr/dashboard + cd ../../../../build ++ pwd + BUILD_DIR=/home/jenkins-build/build/workspace/ceph-dashboard-pull-requests/build + '[' '' == '' ']' + MGR=2 + RGW=1 + ../src/vstart.sh -n -d global_init: error reading config file. dirname: missing operand Try 'dirname --help' for more information. Build step 'Execute shell' marked build as failure
#3 Updated by Kefu Chai about 1 year ago
- Status changed from New to Resolved
- Pull request ID set to 28776
we run do_cmake.sh to build the tree. this script prepares a minimal ceph.conf so we can run the unit tests. apparently, the ceph.conf is not valid anymore after https://github.com/ceph/ceph/pull/28634.
but what makes the problem more obscure is that, vstart.sh tries to read ceph.conf to cleanup the asock dir, even if "-n" (--new) is specified. if the ceph.conf does not parse. vstart.sh just fails with error message of
global_init: error reading config file. dirname: missing operand
in https://github.com/ceph/ceph/pull/28776, we always add a "[global]" header for the settings. the header name appeases the updated ceph.conf parser.