Azure Devops - PS Сценарии - PullRequest
       7

Azure Devops - PS Сценарии

0 голосов
/ 24 апреля 2020

Я пытался запустить ниже PS Встроенный скрипт через Azure devops Pipeline. Но я получаю сообщение об ошибке в журнале агента. Код конвейера:

trigger:

master
pool:
name: 'Dev1'

steps:

task: PowerShell@2
inputs:
targetType: 'inline'
script: |
    # Write your PowerShell commands here.

    New-Item -Path "C:\Manoj" -Force

Ошибка агента:

Starting: PowerShell
Task : PowerShell
Description : Run a PowerShell script on Linux, macOS, or Windows
Version : 2.165.0
Author : Microsoft Corporation
Help : https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/powershell
Generating script.
========================== Starting Command Output ===========================
"C:\windows\System32\WindowsPowerShell\v1.0\powershell.exe" -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command ". 'C:\tmp\vsts-agent-win-x64-2.165.2_work_temp\65dd1488-c132-4b9a-8403-0604d37f43a4.ps1'"
New-Item : Access to the path 'C:\Manoj' is denied.
At C:\tmp\vsts-agent-win-x64-2.165.2_work_temp\65dd1488-c132-4b9a-8403-0604d37f43a4.ps1:4 char:1

New-Item -Path "C:\Manoj" -Force
  + CategoryInfo          : PermissionDenied: (C:\Manoj:String) [New-Item], UnauthorizedAccessException
  + FullyQualifiedErrorId : NewItemUnauthorizedAccessError,Microsoft.PowerShell.Commands.NewItemCommand

##[error]PowerShell exited with code '1'.
Finishing: PowerShell

Ответы [ 2 ]

0 голосов
/ 25 апреля 2020

Ошибка показывает, что учетная запись, под которой запускается агент azdo, не имеет прав для создания объектов на системном диске root. Такое ограничение звучит логично, поскольку агент должен работать в многопользовательском / многопроектном сценарии.

Поэтому рассмотрите возможность построения логики c конвейера, ограниченного только рабочим каталогом. Например: Pipeline.Workspace

trigger:
  master

pool:
  name: 'Dev1'

steps:
- task: PowerShell@2
  inputs:
    targetType: inline
    script: |
        New-Item -Path "$(Pipeline.Workspace)\Manoj" -Force

В этом случае артефакты различных конвейеров изолированы друг от друга.

Ссылка: Использование предопределенных переменных

0 голосов
/ 24 апреля 2020

Используя агент, размещенный в Microsoft, код работал для меня.

trigger:
  branches:
    include:
      - '*'

pool:
  vmImage: 'windows-latest'

steps:
- task: PowerShell@2
  inputs:
    targetType: inline
    script: |
        New-Item -Path "C:\Manoj" -Force

Если вы используете агент, размещенный самостоятельно, убедитесь, что учетная запись пользователя, работающая в azure devops, соответствует вашим требованиям к разрешениям. .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...