0

我正在尝试每天从 crontab 启动守夜测试。当我在 macOS 终端上启动我的 python 脚本时一切正常,但是一旦我通过调用我的 python script 启动 cron 作业。发生以下错误:

"env: node: No such file or directory"

我试图设置下面是我尝试从 python 子进程运行的命令:

cmd_run =["/usr/local/bin/yarn test /Users/mytest/path/ --tag dbg"]
child_env = os.environ.copy() // inherit shell env setting ? 

with open(full_log, 'w') as fd:
        process=subprocess.Popen(cmd_run, stdout=fd, stderr=fd, shell=True, env=child_env)

我需要运行的实际命令是:

E2E_BASEHOST=https://<myhost> E2E_ENV=bk E2E_TESTS_DIRECTORY=./bk/tests **node**  node_modules/nightwatch/bin/runner.js -c ./node_modules/@bk/e2e-testing-configuration/src/nightwatch.conf.js
--group affiliates/bookings2/tests/src/app/ --tag bsb --retries 2

我想这是因为子进程找不到“节点”我在终端上运行“哪个节点”它可以在这里找到:

/usr/local/bin/node

那么我在这里缺少什么?

4

1 回答 1

0

你可以把它放在你的 crontab 中:

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
于 2020-07-14T09:28:31.160 回答