簡體   English   中英

通過 Jenkins 執行我的 Git 上的 python 腳本

[英]Execute a python script that is on my Git via 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 並沒有運行代碼。 它只會構建它。

所以我確實建造了它。 我在 Jenkins 和 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 文件。

任何幫助表示贊賞。 感謝社區!

據我了解,您有一個要在 Jenkins 上運行的 Python 腳本。

當他們說PY文件時,他們指的是.py文件,它只不過是您的 Python 腳本。

您需要做的是通過谷歌搜索每個步驟來執行以下步驟:

  1. 創建一個 Jenkins 作業並在其中配置您的 git 存儲庫。
  2. 在構建步驟中,選擇Execute shell script選項。
  3. 將命令作為python3 your_script_name.py或使用python2 your_script_name.py取決於您的 python 版本。
  4. 保存作業並單擊構建。
  5. 檢查正在運行的作業的控制台輸出。

讓我知道這是否是您期望發生的事情。

從我對初始 OP 的理解來看,他想在 git checkout 之后運行 .py 腳本。

所以這很容易,你在 Jenkins 項目中進行 git checkout。

之后,您創建了一個 BUILD 步驟,我使用的是 Windows,所以我使用 EXECUTE WINDOWS BATCH COMMAND,然后像這樣運行它:

echo %WORKSPACE% # 應該打印 jenkins 從 Git 下載文件的目錄。

python -u "%WORKSPACE%\\pythonScript.py" #調用位於目錄中的腳本如果在根文件夾中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM