当前位置: 首页 > 知识库问答 >
问题:

无法在jenkins管道脚本中运行python命令

公羊俊
2023-03-14

我使用Jenkins在docker容器中使用以下命令

码头工人拉詹金斯/詹金斯

docker run-p8080:8080--name=jenkins master jenkins/jenkins

获取此错误

  • calc.py/var/jenkins_home/workspace/pythoncalculator@tmp/耐用-b7e99e01/脚本。sh:1:/var/jenkins\u home/workspace/pythoncalculator@tmp/耐用-b7e99e01/脚本。sh:calc.py:未找到

存储库链接--https://github.com/jatin633/Calculator.git

  pipeline {
  agent any 
  stages {
    stage('Build') { 
        steps {
            echo 'Building the application....'
            
        }
    }
    stage('Test') { 
        steps {
            echo 'Testing the application....'
            git branch: 'python', url: 'https://github.com/jatin633/Calculator.git'
            sh 'python calc.py'
            sh 'python calculator_unittest.py'
        }
    }
    stage('Deploy') { 
        steps {
            echo 'Deploy the application....'
        }
    }
}

}

共有1个答案

齐迪
2023-03-14

我认为calc.py文件不在根目录中,因此可能尝试更改:

stage('Test') { 
    steps {
        echo 'Testing the application....'
        git branch: 'python', url: 'https://github.com/jatin633/Calculator.git'
        sh 'python calc.py'
        sh 'python calculator_unittest.py'
    }
}

进入:

stage('Checkout') { 
    steps {
        echo 'Testing the application....'
        git branch: 'python', url: 'https://github.com/jatin633/Calculator.git'
    }
}
stage('Run Program') {
    dir('sources') {
       steps {
           sh 'python calc.py'
           sh 'python calculator_unittest.py'
       }
    }
}

如果有帮助,请告诉我。问候!

 类似资料:
  • 问题内容: 我能够运行以下shell脚本,但无法从Jenkins管道代码运行。 尝试1。 输出: 尝试2: 尝试过sh“”“ 输出 : 美元符号后的非法字符串体字符;解决方案:要么转义文字美元符号,要么将值表达式括起来 有人能帮我吗? 问题答案: 这应该工作。 您还需要在调用下面的新subshel​​l时转义$

  • 问题内容: 我正在尝试运行Python工作。我创建了以下文件夹: C:\ Users \ herod \ jenkins_ws \ workspace \ window_testing 并添加了脚本“ testing.py”。 该脚本非常简单: 但是从Jenkins运行它时出现以下错误(如果我从命令行运行它会起作用): 我究竟做错了什么 ? 这是我尝试过的: 在构建部分的作业配置中,我选择“执行p

  • 问题内容: 在groovy脚本中(用于jenkins管道):如何运行命令而不是命令? 我尝试了以下方法: 在通话中致电“ ” : 将呼叫替换为呼叫: 附加信息: 我的命令比命令更复杂。 问题答案: 您提供的Groovy脚本正在将结果脚本中的第一行格式化为空白行。shebang告诉脚本使用/ bin / bash而不是/ bin / sh运行,它需要位于文件的第一行,否则它将被忽略。 因此,您应该这

  • 我有一个Jenkinsfile,其中构建和测试在同一个Slaver上运行。我的要求是,构建必须在一个从站(比如A)上,测试必须在另一个从站(比如B)上运行。 我刚刚设置了奴隶B,我可以看到我的奴隶A和B都在Jenkins- 以下是看到的问题: 1.)在构建阶段成功后,我得到以下错误: " java.lang.NoSuchMethodError:在步骤[archive,bat,build,catch

  • 问题内容: 我正在尝试从Jenkins管道中的文件运行Powershell脚本。 我已经阅读了本文,该文章显示了如何运行输入到管道中的Powershell脚本,但是我无法从文件中运行脚本。 我努力了: 和各种组合,但无法弄清楚该如何做。 问题答案: 很快就弄清楚了,该行应该已经阅读

  • 问题内容: 我最近将bash执行命令重写为Jenkins管道。旧代码就像 现在,我使用管道脚本来包装命令,像这样 但是,我遇到了一个错误。当我尝试时,它会正确显示。所以我怀疑内部有问题。 在使用管道之前,命令在外壳执行中工作正常。因此,源代码安装在Jenkins服务器上,似乎管道脚本不知道源命令是什么。 如何在sh wrapd块中运行source命令? 问题答案: 替换为 请注意,第一个点后有一个