任务失败,因为 return 代码为 -1 而预期为 0 - Bamboo

Failing task since return code was -1 while expected 0 - Bamboo

我在 Bitbucket Repo 中有一个简单的 hello world python 脚本。我已将我的 Bamboo 和 Bitbucket 与一个 Default job 链接起来,它有两个任务:

  1. 源代码检出
  2. 脚本

当我 运行 脚本为 Inline 的计划并输入 python hello_world.py 时,它工作正常并在 logs 中打印出 'hello world'。

但是当我 运行 将脚本作为 file 的计划并将文件名命名为 'hello_world.py' 时。构建失败,日志中显示以下内容:

Failing task since return code of [/var/lib/ci/xml-data/build-dir/ABCD-BAM-JOB1/hello_world.py] was -1 while expected 0

GNU linux 中的竹 运行。

我的脚本

#! /usr/bin python
print('Hello World')

脚本任务配置:

编辑 1

解释器有3种选择

  1. Shell
  2. windows powershell
  3. /bin/sh 或 cmd.exe

您应该将 'shebang' 行更改为 #!/usr/bin/python。现在,您的系统可能正在尝试使用 /usr/bin 执行它,这是一个目录,而不是可执行文件。

有些人会争辩说 #!/usr/bin/env python#!/usr/bin/env python3 之类的东西更可靠。这实际上取决于您的系统配置方式。

找到了。这是因为权限。

以防有人因为您在公司设置中而遇到同样的无法访问终端的问题。随便做:

  1. 创建脚本任务并写入内联,chmod XXX filename

  2. 创建另一个脚本任务并在那里调用文件。

这应该会更改权限。请注意,一旦构建完成,权限就会变回。