簡體   English   中英

Azure 自托管 windows 代理,使用 Python 版本配置中的{工具文件}是什么?

[英]Azure self hosted windows agent, What is the {tool files} in Use Python Version configuration?

更新:

現在我嘗試了答案中的解決方案

python -m ensurepip
python -m pip install --upgrade pip
pip install tox poetry

我意識到自托管 windows 代理顯然甚至沒有 python。 我遵循了 azure 的這條指令:使用 python 版本

他們在哪里說諸如方向結構之類的東西。

$AGENT_TOOLSDIRECTORY/
Python/
    3.6.4/
        x64/
            {tool files}
        x64.complete

令人困惑的是{tool files}的定義最初,我從網站下載了 python 可執行文件在此處輸入圖像描述 這給了我一個 .exe 文件。 所以我在c:/agent/_work/_tool/中創建了一個文件夾結構,如下所示

$AGENT_TOOLSDIRECTORY/
    Python/
        3.9.9/
            x64/
                python_3.9.9-amd64.exe
            x64.complete

因為這絕對不是正確的方法。 我不確定 {tool files} 的定義是什么。 我目前對如何在自托管 windows 代理上正確安裝 python 感到困惑。

然后我嘗試按照Link中的建議使用 venv 創建文件夾架構。 由於演示是針對 Linux 的,因此 venv 安裝結果有所不同。 沒有創建 bin 文件夾。 而是創建了一個pyvenv.cfg文件。 此 venv 配置引用了 python 最初安裝的路徑。 當我這樣做時,文件夾結構如下。

$AGENT_TOOLSDIRECTORY/
Python/
    3.6.4/
        x64/
            Include/
            Libs/
            Scripts/
            pyvenv.cfg
        x64.complete

這使得下面討論的 powershell 任務失敗如下。 cfg文件中,powershell 嘗試在users' folder istead of the _tool 文件夾。

在此處輸入圖像描述

我在這里迷路了,感謝您的幫助。 非常感謝。

++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++

較早的問題:

我正在嘗試使用自托管 Windows 代理為我的 python 項目創建管道。 這是我的存儲庫的鏈接,您可以在其中找到 azure yml 文件。 https://GringottsFinance@dev.azure.com/GringottsFinance/NLNETSalaryCalculator.Py/_git/NLNETSalaryCalculator.Py

對於與毒物相關的步驟,我創建了這個模板

    parameters:
      PythonVersion: ''
      ToxEnvironment: ''
    
    steps:
      - checkout : self
        fetchDepth: 1
    
      - task: UsePythonVersion@0
        displayName: Use Python Version ${{ parameters.PythonVersion }}
        inputs:
          versionSpec: ${{ parameters.PythonVersion }}
        condition: succeeded()
    
      - powershell: pip install tox poetry
        displayName: Install Tox and Poetry
        condition: succeeded()
    
      - powershell: tox -r -e ${{ parameters.ToxEnvironment }}
        displayName: Run the give Tox Environment
        condition: succeeded()

我的問題是,即使在代理中成功安裝了 python 版本 3.9.9,PowerShell 似乎也沒有找到 pip。

  • 我嘗試添加環境變量的路徑。
  • 添加變量后,我還多次重新啟動代理。

這些解決方案似乎都不起作用。 任何幫助表示贊賞。

錯誤屏幕

Azure 自托管 windows 代理的 powershell 找不到 Z62AD1C2A46C3298F3CDE2C5D

我可以在我這邊重現這個問題。

您可以使用以下命令解決該問題:

python -m ensurepip
python -m pip install --upgrade pip
pip install tox poetry

測試結果:

在此處輸入圖像描述

好的,我想出了如何成功安裝 windows 自托管代理並在其中配置 python 的解決方案。

以下是步驟。

  1. 在配置 windows-agent-pool 的文件夾中創建如下文件夾結構。
$AGENT_TOOLSDIRECTORY/
Python/
    3.9.9/
        x64/
            {tool files}
        x64.complete

現在是棘手的部分

{tool files}甚至是什么意思。 這對我有用。

  1. 我從python-3.9.9-amd64.exe 下載了 python 的 windows 安裝程序 - 點擊下載
  2. 運行可執行文件。
  3. 選擇自定義安裝(真的很重要
  4. Select 出現的所有復選框。
  5. Select 將上述文件夾位置作為您要安裝python的目錄。 即我們剛剛創建的目錄。 所以python的安裝位置應該是$AGENT_TOOLSDIRECTORY/Python/3.9.9/x64/

PS 如果您在安裝代理時遵循了 Microsoft 的說明。 您的$AGENT_TOOLSDIRECTORY只是C:/agent/_work/_tool/ 所以 python 的安裝路徑應該是C:/agent/_work/_tool/Python/3.9.9/x64/

呃……我只花了三個不眠之夜才弄明白。 希望你們中的一些人能找到更好的答案。

謝謝。

暫無
暫無

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

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