通过Jenkins在我的Git上执行python脚本

时间:2019-05-24 11:12:40

标签: python git jenkins

因此,我是Jenkins / Git的新手。我的问题可能很基本,但请花些时间回答。

所以我正在尝试一件简单的事情。我有一个简单的Python脚本,已在git上推送。就是这样:


def about_me(your_name):
    print("The wise {} loves Python.".format(your_name))            

def HW():
    print("Hello World!")

def Both():
    HW()
    about_me("Ab")

Both()
F  = open(r"C:\Users\AMRABET\Documents\VSC\HW\a.txt", "a")
F.write("ok\n")

没什么大不了的。只是控制台/文件打印。 我在git的 master 分支上推送了它。

接下来,我尝试通过Jenkins执行它。在互联网上阅读了多个主题之后,我了解到Jenkins实际上并没有运行该代码。它只能构建

所以我做了 build 。我配置了詹金斯和Git之间的连接,我成功了。这是构建的输出:


Running as SYSTEM
Building in workspace C:\Program Files (x86)\Jenkins\workspace\GitJob
using credential 1f413199-4637-40b4-96b9-a06e1d5aab4c
 > C:\Program Files\Git\bin\git.exe rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
 > C:\Program Files\Git\bin\git.exe config remote.origin.url https://github.com/MbtAbd/HelloWorld # timeout=10
Fetching upstream changes from https://github.com/MbtAbd/HelloWorld
 > C:\Program Files\Git\bin\git.exe --version # timeout=10
using GIT_ASKPASS to set credentials 
 > C:\Program Files\Git\bin\git.exe fetch --tags --force --progress https://github.com/MbtAbd/HelloWorld +refs/heads/*:refs/remotes/origin/*
 > C:\Program Files\Git\bin\git.exe rev-parse "refs/remotes/origin/master^{commit}" # timeout=10
 > C:\Program Files\Git\bin\git.exe rev-parse "refs/remotes/origin/origin/master^{commit}" # timeout=10
Checking out Revision 34500678072eb8536821606367d6ecf329d344d9 (refs/remotes/origin/master)
 > C:\Program Files\Git\bin\git.exe config core.sparsecheckout # timeout=10
 > C:\Program Files\Git\bin\git.exe checkout -f 34500678072eb8536821606367d6ecf329d344d9
Commit message: "Added the file writing stuff"
 > C:\Program Files\Git\bin\git.exe rev-list --no-walk 34500678072eb8536821606367d6ecf329d344d9 # timeout=10
Finished: SUCCESS

有人可以告诉我如何通过Jenkins 运行结果吗? StackOverflow上的所有其他线程建议执行Shell动作(sh 'python script.py'),但就我而言,我实际上并没有PY文件。

感谢您的帮助。谢谢社区!

2 个答案:

答案 0 :(得分:0)

据我了解,您有一个要在Jenkins上运行的python脚本。

他们说的是 PY 文件,是指.py文件,不过就是您的python脚本。

您需要做的是按照以下步骤操作,对每个步骤进行谷歌搜索:

  1. 创建一个Jenkins作业并在其中配置您的git repo。
  2. 在构建步骤中,选择Execute shell script选项。
  3. 使用python3 your_script_name.py作为命令还是使用python2 your_script_name.py取决于您的python版本。
  4. 保存作业,然后单击“构建”。
  5. 检查正在运行的作业的控制台输出。

让我知道这是否是您所期望的。

答案 1 :(得分:0)

根据我对初始OP的了解,他想在git checkout之后运行.py脚本。

因此非常简单,您可以在Jenkins项目中进行git checkout。

在创建BUILD步骤之后,我使用的是Windows,所以我使用EXECUTE WINDOWS BATCH COMMAND,然后像这样运行它:

echo%WORKSPACE%#应该显示jenkins从Git下载文件的目录。

python -u“%WORKSPACE%\ pythonScript.py”#如果位于根文件夹中,则调用位于目录中的脚本