다음을 통해 공유


명령줄에서 Azure DevOps 확장 게시

Azure DevOps 서비스 | Azure DevOps Server | Azure DevOps Server 2022

플랫폼 간 CLI for Azure DevOps(tfx-cli)를 사용하여 확장을 Visual Studio Marketplace에 게시합니다. 자세한 내용은 게시, 설치 및 공유개요를 참조하세요.

필수 구성 요소

카테고리 요구 사항
Tools npm을 통해 설치된 Azure DevOps용 크로스 플랫폼 CLI (tfx-cli)
인증 Microsoft Entra 토큰(권장) 또는 개인 액세스 토큰(PAT)Marketplace(게시) 범위가 있는
Publisher Visual Studio Marketplace에 설정된 게시자 계정

중요합니다

더 안전한 Microsoft Entra 토큰을 위험도가 높은 개인 액세스 토큰 대신 사용하는 것을 고려하십시오. 자세한 내용은 PAT 사용량 줄이기를 참조하세요. 인증 지침을 검토하여 요구 사항에 적합한 인증 메커니즘을 선택합니다.

Azure DevOps 크로스 플랫폼 CLI를 획득하다.

  1. 만약 그것이 없는 경우, NodeJS을 다운로드하여 설치합니다. 설정하는 동안 PATH에 추가가 선택된 상태인지 확인하세요.

  2. 명령 프롬프트를 열고 입력합니다.

TFX CLI가 이미 설치된 경우 실행하여 최신 릴리스로 업데이트할 수 있습니다.

Azure DevOps 플랫폼 간 CLI 설치

npm install -g tfx-cli

Microsoft Entra 토큰을 사용하여 서비스 주체로 게시

확장을 서비스 주체로 게시할 수 있습니다.

  1. 서비스 주체를 게시자 계정에 멤버로 추가합니다. Azure CLI 통해 로그인하고 서비스 주체의 프로필을 쿼리하여 REST API를 통해 서비스 주체의 ID를 가져옵니다.
  • Bash
  • PowerShell
az login --service-principal --username <appId> --password <password> --tenant <tenant-id>
# 499b84ac-1321-427f-aa17-267ca6975798 specifies azure devops as a resource
az rest -u https://app.vssps.visualstudio.com/_apis/profile/profiles/me --resource 499b84ac-1321-427f-aa17-267ca6975798

그런 다음 이전 단계의 ID를 사용하여 서비스 주체를 게시자에 멤버로 추가 합니다.

  1. 서비스 주체를 사용하여 TFX CLI 통해 확장을 게시합니다. 다음 TFX CLI 명령을 실행하여 액세스 토큰을 사용합니다.
tfx extension publish --publisher my-publisher --vsix my-publisher.my-extension-1.0.0.vsix --auth-type pat -t <ENTRA_TOKEN>

개인용 액세스 토큰을 사용하여 게시

마켓플레이스(출판) 범위를 사용하여 개인용 액세스 토큰(PAT)을 만드십시오.

tfx-cli를 설치하고 PAT를 설치한 후 확장을 패키지하고 게시합니다.

  1. 확장의 루트 디렉터리에 대한 명령 프롬프트를 엽니다.
  2. 다음 명령을 실행하여 확장을 게시합니다. 메시지가 표시되면 인증할 토큰을 입력합니다.
tfx extension publish --publisher <YOUR_PUBLISHER_ID> --manifest-js <YOUR_EXTENSION_MANIFEST> --share-with <ACCOUNT_NAME>

잠재적 오류

확장이 이미 게시된 경우 다음 오류가 표시될 수 있습니다.

Failed Request: Internal Server Error(500) - Version number must increase each time an extension is published. Extension: fabrikam.my-extension  Current version: 0.1.9  Updated version: 0.1.9

확장의 패치 버전을 자동으로 증가하도록 플래그를 추가합니다. 또한 이 플래그는 새 버전을 매니페스트에 저장합니다.

메모

에 사용할 수 있는 모든 옵션을 명령에서도 사용할 수 있습니다.

예시

C:\vso-team-calendar>tfx extension publish --publisher publishFabrikam --manifest-js fabrikam.config.js --share-with fabrikam --rev-version
Copyright Microsoft Corporation
> Personal access token:
Checking if this extension is already published
It is, update the extension
Waiting for server to validate extension package...
Sharing extension with fabrikam.

=== Completed operation: publish extension ===
 - Packaging: C:\vso-team-calendar\fabrikam.team-calendar-0.2.6.vsix
 - Publishing: success
 - Sharing: shared with fabrikam