Azure DevOps Server 2019 업데이트 1 릴리스 정보
개발자 커뮤니티 | 시스템 요구 사항 | 사용 조건 | DevOps 블로그 | SHA-1 해시
이 문서에서는 Azure DevOps Server의 최신 릴리스에 대한 정보를 찾을 수 있습니다.
Azure DevOps Server 배포를 설치하거나 업그레이드하는 방법에 대한 자세한 내용은 Azure DevOps Server 요구 사항 참조하세요. Azure DevOps 제품을 다운로드하려면 Azure DevOps Server 다운로드 페이지방문하세요.
Azure DevOps Server 2020으로의 직접 업그레이드는 Azure DevOps Server 2019 또는 Team Foundation Server 2015 이상에서 지원됩니다. TFS 배포가 TFS 2010 이하에 있는 경우 Azure DevOps Server 2019로 업그레이드하기 전에 몇 가지 중간 단계를 수행해야 합니다. 자세한 내용은 Azure DevOps 온-프레미스설치 및 구성을 참조하세요.
Azure DevOps Server 2019에서 Azure DevOps Server 2020으로 안전하게 업그레이드
Azure DevOps Server 2020에는 프로젝트 수준 설정에 따라 작동하는 새 파이프라인 실행(빌드) 보존 모델 도입되었습니다.
Azure DevOps Server 2020은 파이프라인 수준 보존 정책에 따라 빌드 보존을 다르게 처리합니다. 특정 정책 구성으로 인해 업그레이드 후 파이프라인 실행이 삭제됩니다. 수동으로 보존되었거나 릴리스에 의해 유지된 파이프라인 실행은 업그레이드 후에 삭제되지 않습니다.
Azure DevOps Server 2019에서 Azure DevOps Server 2020으로 안전하게 업그레이드하는 방법에 대한 자세한 내용은 블로그 게시물 읽어보세요.
Azure DevOps Server 2019 업데이트 1.2 패치 10 릴리스 날짜: 2025년 3월 11일
파일 | SHA-256 해시 |
---|---|
devops2019.1.2patch10.exe | 0983A46E080DDDE09208612247670D2BAAF2A9AD3BF57FD111AF95F14F120E70 |
다음을 포함하는 Azure DevOps Server 2019 업데이트 1.2용 패치 10 릴리스했습니다.
- Edgio CDN 사용 중단으로 인한 작업을 업데이트합니다. 자세한 내용은 CDN 공급자 전환 블로그 게시물 확인하세요.
Azure DevOps Server 2019 업데이트 1.2 패치 9 릴리스 날짜: 2024년 5월 28일
파일 | SHA-256 해시 |
---|---|
devops2019.1.2patch9.exe | 4A3F41BBE00174DE964667878766EBF7F4D292526CBC1D885180B55D994B4D81 |
다음을 포함하는 Azure DevOps Server 2019 업데이트 1.2용 패치 9 릴리스했습니다.
- 이전 패치(패치 5 및 6)에서 에이전트 및 작업 업데이트의 배포를 간소화합니다.
메모
패치 5 및 6의 단계를 따를 필요는 없습니다. 이러한 패치는 건너뛸 수 있으며 대신 이 패치를 적용할 수 있습니다.
패치 설치
중요하다
이 패치는 사용 가능한 파이프라인 에이전트를 업데이트합니다. 패치 9를 설치한 후 에이전트의 새 버전은 3.225.0이 됩니다.
파이프라인 요구 사항
명령줄 인수의 유효성을 검사하는 새 동작을 적용하려면 영향을 받는 작업을 사용하는 파이프라인에서 변수 AZP_75787_ENABLE_NEW_LOGIC = true
설정해야 합니다. 활성화된 동작에 대한 자세한 내용은 여기 참조하세요.
클래식:
파이프라인의 변수 탭에서 변수를 정의합니다.
YAML 예제:
variables:
- name: AZP_75787_ENABLE_NEW_LOGIC
value: true
Azure DevOps Server 2019 업데이트 1.2 패치 8 릴리스 날짜: 2024년 3월 12일
파일 | SHA-256 해시 |
---|---|
devops2019.1.2patch8.exe | 67E78EA7D67A09A6EE06309614F92E6D8495DEF52FF442E4E4E7C7979244FAD20A |
Azure DevOps Server 2019 업데이트 1.2에 대한 패치 8 릴리스되었습니다. 여기에는 다음의 수정 사항이 포함되어 있습니다.
- 패치 7을 설치한 후 프록시 서버의 작동이 중지되는 문제를 해결했습니다.
Azure DevOps Server 2019 업데이트 1.2 패치 7 릴리스 날짜: 2024년 2월 13일
파일 | SHA-256 해시 |
---|---|
devops2019.1.2patch7.exe | 8C67C72A83C9215302BDEFB752A7C4E3F876D4D17FCFA63A02B955FCFB5455AA |
Azure DevOps Server 2019 업데이트 1.2에 대한 패치 7 릴리스되었습니다. 여기에는 다음의 수정 사항이 포함되어 있습니다.
- 프록시 캐시 폴더에서 사용하는 디스크 공간이 잘못 계산되고 폴더가 제대로 정리되지 않은 버그가 수정되었습니다.
- CVE-2024-20667: Azure DevOps Server 원격 코드 실행 취약성
Azure DevOps Server 2019 업데이트 1.2 패치 6 릴리스 날짜: 2023년 11월 14일
다음에 대한 수정 사항이 포함된 Azure DevOps Server 2019 업데이트 1.2에 대한 패치를 릴리스했습니다.
- 셸 작업 사용 인수 매개 변수 유효성 검사 PowerShell 작업 허용 문자 목록을 확장했습니다.
메모
이 패치에 대한 수정 사항을 구현하려면 여러 단계에 따라 작업을 수동으로 업데이트해야 합니다.
패치 설치
중요하다
2023년 9월 12일에 패치 5가 릴리스된 Azure Pipelines 에이전트에 대한 업데이트를 릴리스했습니다. 패치 5 대한릴리스 정보에 설명된 대로 에이전트 업데이트를 설치하지 않은 경우 패치 6을 설치하기 전에 이러한 업데이트를 설치하는 것이 좋습니다. 패치 5를 설치한 후 에이전트의 새 버전은 3.225.0이 됩니다.
TFX 구성
TFX를 사용하여 작업 업데이트
파일 | SHA-256 해시 |
---|---|
Tasks20231103.zip | 389BA66EEBC32622FB83402E21373CE20AE040F70461B9F9AF9EFCED5034D2E5 |
- Tasks20231103.zip다운로드하고 추출합니다.
- 디렉터리를 추출된 파일로 변경합니다.
- 다음 명령을 실행하여 작업을 업로드합니다.
tfx build tasks upload --task-zip-path AzureFileCopyV1.1.230.0.zip
tfx build tasks upload --task-zip-path AzureFileCopyV2.2.230.0.zip
tfx build tasks upload --task-zip-path AzureFileCopyV3.3.230.0.zip
tfx build tasks upload --task-zip-path AzureFileCopyV4.4.230.0.zip
tfx build tasks upload --task-zip-path AzureFileCopyV5.5.230.0.zip
tfx build tasks upload --task-zip-path BashV3.3.226.2.zip
tfx build tasks upload --task-zip-path BatchScriptV1.1.226.0.zip
tfx build tasks upload --task-zip-path PowerShellV2.2.230.0.zip
tfx build tasks upload --task-zip-path SSHV0.0.226.1.zip
tfx build tasks upload --task-zip-path WindowsMachineFileCopyV1.1.230.0.zip
tfx build tasks upload --task-zip-path WindowsMachineFileCopyV2.2.230.0.zip
파이프라인 요구 사항
새 동작을 사용하려면 영향을 받는 작업을 사용하는 파이프라인에서 변수 AZP_75787_ENABLE_NEW_LOGIC = true
설정해야 합니다.
클래식에 대하여:
파이프라인의 변수 탭에서 변수를 정의합니다.
YAML 예제:
variables:
- name: AZP_75787_ENABLE_NEW_LOGIC
value: true
Azure DevOps Server 2019 업데이트 1.2 패치 5 릴리스 날짜: 2023년 9월 12일
다음에 대한 수정 사항이 포함된 Azure DevOps Server 2019 업데이트 1.2에 대한 패치를 릴리스했습니다.
- CVE-2023-33136: Azure DevOps Server 원격 코드 실행 취약성
- CVE-2023-38155: Azure DevOps Server 및 Team Foundation Server 권한 상승 취약성
중요하다
테스트 환경에 패치를 배포하고 프로덕션 환경에 수정 사항을 적용하기 전에 환경의 파이프라인이 예상대로 작동하는지 확인하세요.
메모
이 패치에 대한 수정 사항을 구현하려면 에이전트 및 작업을 수동으로 업데이트하는 여러 단계를 따라야 합니다.
패치 설치
- Azure DevOps Server 2019 업데이트 1.2 패치 5다운로드하여 설치합니다.
Azure Pipelines 에이전트 업데이트
- 에이전트를 다운로드하십시오: https://github.com/microsoft/azure-pipelines-agent/releases/tag/v3.225.0 - Agent_20230825.zip
- 자체 호스팅 Windows 에이전트 설명서 설명서에 설명된 단계를 사용하여 에이전트를 배포합니다.
메모
에이전트가 다운그레이드되지 않도록 하려면 AZP_AGENT_DOWNGRADE_DISABLED "true"로 설정해야 합니다. Windows에서는 관리 명령 프롬프트에서 다음 명령을 사용하고 다시 부팅할 수 있습니다. setx AZP_AGENT_DOWNGRADE_DISABLED true /M
TFX 구성
- 업로드 태스크의 단계를 따라 프로젝트 컬렉션 설명서에 tfx-cli를 설치하고 로그인하세요.
TFX를 사용하여 작업 업데이트
- Tasks_20230825.zip다운로드하고 추출합니다.
- 디렉터리를 추출된 파일로 변경합니다.
- 다음 명령을 실행하여 작업을 업로드합니다.
tfx build tasks upload --task-zip-path AzureFileCopyV1.1.226.3.zip
tfx build tasks upload --task-zip-path AzureFileCopyV2.2.226.2.zip
tfx build tasks upload --task-zip-path AzureFileCopyV3.3.226.2.zip
tfx build tasks upload --task-zip-path AzureFileCopyV4.4.226.2.zip
tfx build tasks upload --task-zip-path AzureFileCopyV5.5.226.2.zip
tfx build tasks upload --task-zip-path BashV3.3.226.2.zip
tfx build tasks upload --task-zip-path BatchScriptV1.1.226.0.zip
tfx build tasks upload --task-zip-path PowerShellV2.2.226.1.zip
tfx build tasks upload --task-zip-path SSHV0.0.226.1.zip
tfx build tasks upload --task-zip-path WindowsMachineFileCopyV1.1.226.2.zip
tfx build tasks upload --task-zip-path WindowsMachineFileCopyV2.2.226.2.zip
파이프라인 요구 사항
새 동작을 사용하려면 영향을 받는 작업을 사용하는 파이프라인에서 변수 AZP_75787_ENABLE_NEW_LOGIC = true
설정해야 합니다.
클래식에 대하여:
파이프라인의 변수 탭에서 변수를 정의합니다.
YAML 예제:
variables:
- name: AZP_75787_ENABLE_NEW_LOGIC
value: true
Azure DevOps Server 2019 업데이트 1.2 패치 4 릴리스 날짜: 2023년 8월 8일
다음에 대한 수정 사항이 포함된 Azure DevOps Server 2019 업데이트 1.2에 대한 패치 릴리스했습니다.
- CVE-2023-36869: Azure DevOps Server 위장 취약성
- SHA2-256 및 SHA2-512를 지원하도록 SSH 서비스를 업데이트합니다. RSA를 사용하도록 하드 코딩된 SSH 구성 파일이 있는 경우 SHA2로 업데이트하거나 항목을 제거해야 합니다.
- CronScheduleJobExtension에서 무한 루프 버그가 수정되었습니다.
Azure DevOps Server 2019 업데이트 1.2 패치 3 릴리스 날짜: 2023년 6월 13일
다음에 대한 수정 사항이 포함된 Azure DevOps Server 2019 업데이트 1.2에 대한 패치 릴리스했습니다.
- 2018년 이전 버전에서 업그레이드할 때 패키지 푸시를 방해하는 버그가 수정되었습니다.
Azure DevOps Server 2019 업데이트 1.2 패치 2 릴리스 날짜: 2022년 12월 13일
다음에 대한 수정 사항이 포함된 Azure DevOps Server 2019 업데이트 1.2에 대한 패치 릴리스했습니다.
- "계정 병렬 처리 동기화 분석 작업"의 오류를 수정했습니다.
Azure DevOps Server 2019 업데이트 1.2 패치 1 릴리스 날짜: 2022년 7월 12일
다음에 대한 수정 사항이 포함된 Azure DevOps Server 2019 업데이트 1.2에 대한 패치 릴리스했습니다.
- 테스트 실행 API에서 반환되는 연속 토큰이 지정된 "maxLastUpdatedDate" 값보다 큽니다.
- 클래식 파이프라인을 편집하는 동안 다른 탭에서 변경 내용을 삭제한 후 보존 탭이 비어 있었습니다.
Azure DevOps Server 2019 업데이트 1.2 릴리스 날짜: 2022년 5월 17일
Azure DevOps Server 2019 업데이트 1.2는 버그 수정 패키지입니다. Azure DevOps Server 2019 업데이트 1.2를 직접 설치하거나 Azure DevOps Server 2019 또는 Team Foundation Server 2013 이상에서 업그레이드할 수 있습니다.
메모
데이터 마이그레이션 도구는 이 릴리스 후 약 3주 후에 Azure DevOps Server 2019 업데이트 1.2에 사용할 수 있습니다. 여기에서 가져오기대해 현재 지원되는 버전 목록을 볼 수 있습니다.
이 릴리스에는 다음에 대한 수정 사항이 포함되어 있습니다.
- 사용자의 Active Directory 계정을 사용하지 않도록 설정한 후 모든 개인용 액세스 토큰을 해지합니다.
Azure DevOps Server 2019 업데이트 1.1 패치 13 릴리스 날짜: 2022년 1월 26일
다음에 대한 수정 사항이 포함된 Azure DevOps Server 2019 업데이트 1.1에 대한 패치 릴리스했습니다.
- 작업 항목에서 @mention 컨트롤을 사용할 때 전자 메일 알림이 전송되지 않았습니다.
- 기본 설정 전자 메일 주소가 사용자 프로필에서 업데이트되지 않았습니다. 이로 인해 전자 메일이 이전 전자 메일 주소로 전송되었습니다.
- log4j 이진 파일에서 jndilookup 클래스를 제거하여 Elasticsearch 취약성을 해결했습니다.
설치 단계
- 패치 13사용하여 서버를 업그레이드합니다.
-
HKLM:\Software\Elasticsearch\Version
레지스트리 값을 확인합니다. 레지스트리 값이 없으면 문자열 값을 추가하고 버전을 5.4.1로 설정합니다(이름 = 버전, 값 = 5.4.1). - 추가 정보 파일에 제공된 대로 업데이트 명령
PS C:\Program Files\{TFS Version Folder}\Search\zip> .\Configure-TFSSearch.ps1 -Operation update
실행합니다. 다음과 같은 경고를 반환할 수 있습니다. 원격 서버연결할 수 없습니다. 업데이트가 완료될 때까지 다시 시도하므로 창을 닫지 마세요.
메모
Azure DevOps Server 및 Elasticsearch가 다른 컴퓨터에 설치되어 있는 경우 아래에 설명된 단계를 수행합니다.
- 패치 13사용하여 서버를 업그레이드합니다.
-
HKLM:\Software\Elasticsearch\Version
레지스트리 값을 확인합니다. 레지스트리 값이 없으면 문자열 값을 추가하고 버전을 5.4.1로 설정합니다(이름 = 버전, 값 = 5.4.1). -
C:\Program Files\{TFS Version Folder}\Search\zip
있는 zip 폴더의 내용을 Elasticsearch 원격 파일 폴더에 복사합니다. - Elasticsearch 서버 컴퓨터에서
Configure-TFSSearch.ps1 -Operation update
실행합니다.
SHA-256 해시: DB762E391F9DF8E71E58D6FAA169CA44DFBE996AE6567B55F772CBA9E3DA2AB3
Azure DevOps Server 2019 업데이트 1.1 패치 12 릴리스 날짜: 2021년 9월 15일
Azure DevOps Server 2019 업데이트 1.1용 패치 12 다음에 대한 수정 사항이 포함되어 있습니다.
- "단어 포함"을 사용하여 쿼리에 대한 작업 항목 매크로를 수정합니다. 이전에는 쿼리가 줄 바꿈이 포함된 값에 대해 잘못된 결과를 반환했습니다.
- 사용자 지정 작업 항목 레이아웃 상태에 대한 지역화 문제입니다.
- 전자 메일 알림 템플릿의 지역화 문제입니다.
- 필드에 대해 여러 NOTSAMEAS 규칙이 정의된 경우 NOTSAMEAS 규칙 평가와 관련된 문제입니다.
Azure DevOps Server 2019 업데이트 1.1 패치 11 릴리스 날짜: 2021년 9월 14일
Azure DevOps Server 2019 업데이트 1.1에 대한 패치 11 다음에 대한 수정 사항이 포함되어 있습니다.
- 개발자 커뮤니티 피드백 티켓 에서 보고된문제를 해결합니다.
Azure DevOps Server 2019 업데이트 1.1 패치 10 릴리스 날짜: 2021년 8월 10일
Azure DevOps Server 2019 업데이트 1.1용 패치 10 다음에 대한 수정 사항이 포함되어 있습니다.
- 일부 작업 항목 유형에 대한 전자 메일 배달 작업 문제를 해결합니다.
Azure DevOps Server 2019 업데이트 1.1 패치 9 릴리스 날짜: 2021년 6월 15일
Azure DevOps Server 2019 업데이트 1.1용 패치 9 다음에 대한 수정 사항이 포함되어 있습니다.
- 데이터 가져오기 문제를 해결합니다. 부실 테스트 사례가 많은 고객에게는 데이터 가져오기에 오랜 시간이 소요되었습니다. 이는
tbl_testCaseReferences
테이블의 크기를 증가시킨 참조 때문입니다. 이 패치를 사용하면 데이터 가져오기 프로세스 속도를 높이기 위해 부실 테스트 사례에 대한 참조를 제거했습니다.
Azure DevOps Server 2019 업데이트 1.1 패치 8 릴리스 날짜: 2021년 4월 13일
다음을 수정하는 Azure DevOps Server 2019 업데이트 1.1에 대한 패치 릴리스했습니다.
- CVE-2021-27067: 정보 공개
- 개발자 커뮤니티 피드백 티켓에 보고된 문제 해결 | Azure DevOps Server 2019에서 테스트 결과 반복 정보를 등록할 수 없음
이 패치에 대한 수정 사항을 구현하려면 일반 패치 설치 및 AzureResourceGroupDeploymentV2 작업 설치를 위해 아래에 나열된 단계를 따라야 합니다.
일반 패치 설치
Azure DevOps Server 2019 업데이트 1.1이 있는 경우 Azure DevOps Server 2019 업데이트 1.1 패치 8 설치해야 합니다.
설치 확인
옵션 1:
devops2019.1.1patch8.exe CheckInstall
실행 , devops2019.1.1patch8.exe 위의 링크에서 다운로드 된 파일입니다. 명령의 출력에 패치가 설치되었거나 설치되지 않은 것으로 표시됩니다.옵션 2:
[INSTALL_DIR]\Azure DevOps Server 2019\Application Tier\Web Services\bin\Microsoft.VisualStudio.Services.Feed.Server.dll
파일의 버전을 확인합니다. Azure DevOps Server 2019는 기본적으로c:\Program Files\Azure DevOps Server 2019
에 설치됩니다. Azure DevOps Server 2019.1.1 패치 8을 설치한 후 버전은 17.153.31129.2가 됩니다.
AzureResourceGroupDeploymentV2 작업 설치
메모
아래에 언급된 모든 단계는 Windows 컴퓨터에서 수행해야 합니다.
설치하다
컴퓨터의 새 폴더에 AzureResourceGroupDeploymentV2.zip 패키지를 추출합니다. 예: D:\tasks\AzureResourceGroupDeploymentV2.
컴퓨터에 적합한 Node.js 14.15.1 및 npm(Node.js 다운로드에 포함)을 다운로드하고 설치합니다.
관리자 모드에서 명령 프롬프트를 열고 다음 명령을 실행하여 tfx-cli를 설치합니다.
npm install -g tfx-cli
모든 액세스 권한으로 개인 액세스 토큰을 생성하고 이를 복사하세요. 이 개인용 액세스 토큰은 tfx 로그인 명령을 실행할 때 사용됩니다.
명령 프롬프트에서 다음을 실행합니다. 메시지가 표시되면 서비스 URL 및 개인 액세스 토큰을 입력합니다.
~$ tfx login
Copyright Microsoft Corporation
> Service URL: {url}
> Personal access token: xxxxxxxxxxxx
Logged in successfully
- 다음 명령을 실행하여 서버에 작업을 업로드합니다. 1단계에서 추출된 .zip 파일의 경로를 사용합니다.
~$ tfx build tasks upload --task-path *<Path of the extracted package>*
Azure DevOps Server 2019 업데이트 1.1 패치 7 릴리스 날짜: 2021년 1월 12일
다음을 수정하는 Azure DevOps Server 2019 업데이트 1.1에 대한 패치 릴리스했습니다. 자세한 내용은 블로그 게시물 참조하세요.
- 테스트 실행 세부 정보는 OpsHub 마이그레이션을 사용하여 마이그레이션된 테스트 데이터에 대한 테스트 단계 세부 정보를 표시하지 않습니다.
- 'Microsoft.TeamFoundation.TestManagement.Server.TCMLogger'에 대한 이니셜라이저 예외
- Azure DevOps Server 2020으로 마이그레이션한 후 확인되지 않은 빌드가 즉시 삭제됩니다.
- 데이터 공급자 예외 수정
Azure DevOps Server 2019 업데이트 1.1 패치 6 릴리스 날짜: 2020년 12월 8일
다음을 수정하는 Azure DevOps Server 2019 업데이트 1.1에 대한 패치 릴리스했습니다. 자세한 내용은 블로그 게시물 참조하세요.
- CVE-2020-1325: Azure DevOps Server 스푸핑 취약성
- CVE-2020-17135: Azure DevOps Server 스푸핑 취약성
- CVE-2020-17145: Azure DevOps Server 및 Team Foundation Services 스푸핑 취약성
- TFVC에서 모든 결과를 처리하지 않는 문제 해결
중요하다
이 패치를 설치하기 전에 아래에 제공된 전체 지침을 읽어보세요.
일반 패치 설치
Azure DevOps Server 2019 업데이트 1.1이 있는 경우 Azure DevOps Server 2019 업데이트 1.1 패치 6 설치해야 합니다.
확인 설치
옵션 1:
devops2019.1.1patch6.exe CheckInstall
실행 , devops2019.1.1patch6.exe 위의 링크에서 다운로드 된 파일입니다. 명령의 출력에 패치가 설치되었거나 설치되지 않은 것으로 표시됩니다.옵션 2:
[INSTALL_DIR]\Azure DevOps Server 2019\Application Tier\Web Services\bin\Microsoft.VisualStudio.Services.Feed.Server.dll
파일의 버전을 확인합니다. Azure DevOps Server 2019는 기본적으로c:\Program Files\Azure DevOps Server 2019
에 설치됩니다. Azure DevOps Server 2019.1.1 패치 6을 설치한 후 버전은 17.153.30723.5가 됩니다.
AzurePowerShellV4 작업 설치
메모
아래에 언급된 모든 단계는 Windows 컴퓨터에서 수행해야 합니다.
필수 구성 요소
프라이빗 에이전트 머신에 Azure PowerShell Az 모듈 Azure Powershell 설치합니다.
AzurePowerShellV4 작업을 사용하여 파이프라인을 만듭니다. 작업에서 표준 오류 에 실패 항목 하나만 보게 될 것입니다.
설치하다
AzurePowerShellV4.zip 패키지를 AzurePowerShellV4폴더에 추출합니다.
컴퓨터에 따라 Node.js 14.15.1 및 npm(Node.js 다운로드에 포함)을 다운로드하고 설치합니다.
관리자 모드에서 명령 프롬프트를 열고 다음 명령을 실행하여 tfx-cli를 설치합니다.
npm install -g tfx-cli
모든 액세스 권한으로 개인 액세스 토큰을 만들고 복사합니다. 이 개인용 액세스 토큰은 tfx 로그인 명령을 실행할 때 사용됩니다.
명령 프롬프트에서 다음을 실행합니다. 메시지가 표시되면 서비스 URL 및 개인 액세스 토큰을 입력합니다.
~$ tfx login
Copyright Microsoft Corporation
> Service URL: {url}
> Personal access token: xxxxxxxxxxxx
Logged in successfully
- 다음 명령을 실행하여 서버에 작업을 업로드합니다. 추출된 패키지의 경로는 D:\tasks\AzurePowerShellv4 .
~$ tfx build tasks upload --task-path *<Path of the extracted package>*
Azure DevOps Server 2019 업데이트 1.1 패치 5 릴리스 날짜: 2020년 9월 8일
다음을 수정하는 Azure DevOps Server 2019 업데이트 1.1에 대한 패치 릴리스했습니다. 자세한 내용은 블로그 게시물 참조하세요.
- DTS 1713492 - 보안 권한에 AD 그룹을 추가하는 동안 예기치 않은 동작입니다.
Azure DevOps Server 2019 업데이트 1.1 패치 4 릴리스 날짜: 2020년 7월 14일
다음을 수정하는 Azure DevOps Server 2019 업데이트 1.1에 대한 패치 릴리스했습니다. 자세한 내용은 블로그 게시물 참조하세요.
- CVE-2020-1326: 교차 사이트 스크립팅 취약성
- 빌드 파이프라인은 다른 Git 원본을 선택할 때 권한이 없는 사용자에 대한 잘못된 연결을 표시합니다.
- XAML 빌드 정의에서 상속을 켜기 또는 해제로 변경할 때 발생하는 오류를 수정합니다.
Azure DevOps Server 2019 업데이트 1.1 패치 3 릴리스 날짜: 2020년 6월 9일
다음을 수정하는 Azure DevOps Server 2019 업데이트 1.1에 대한 패치 릴리스했습니다. 자세한 내용은 블로그 게시물 참조하세요.
- CVE-2020-1327: Azure DevOps 서버가 사용자 입력을 삭제하는지 확인합니다.
Azure DevOps Server 2019 업데이트 1.1 패치 2 릴리스 날짜: 2020년 4월 14일
다음을 수정하는 Azure DevOps Server 2019 업데이트 1.1에 대한 패치 릴리스했습니다. 자세한 내용은 블로그 게시물 참조하세요.
SVN 커밋은 파이프라인을 트리거하지 않습니다.
Azure DevOps의 SSH에서 SHA2에 대한 지원 추가
Azure DevOps Server 2019 업데이트 1.1 패치 1 릴리스 날짜: 2020년 3월 10일
다음 버그를 수정하는 Azure DevOps Server 2019 업데이트 1.1에 대한 보안 패치 릴리스했습니다. 자세한 내용은 블로그 게시물 참조하세요.
CVE-2020-0700: 교차 사이트 스크립팅 취약성
CVE-2020-0758: 권한 상승 취약성
CVE 2020-0815: 권한 상승 취약성
Azure DevOps Server 2019 업데이트 1.1 RTW 릴리스 날짜: 2019년 12월 10일
Azure DevOps Server 2019 업데이트 1.1 버그 수정 및 보안 업데이트의 롤업입니다. 여기에는 이전에 릴리스된 Azure DevOps Server 2019 업데이트 1 패치의 모든 수정 사항이 포함됩니다. Azure DevOps Server 2019 업데이트 1.1을 직접 설치하거나 Azure DevOps Server 2019 또는 Team Foundation Server 2012 이상에서 업그레이드할 수 있습니다.
메모
데이터 마이그레이션 도구는 이 릴리스 후 약 3주 후에 Azure DevOps Server 2019 업데이트 1.1에 사용할 수 있습니다. 가져오기 에 대한 현재 지원되는 버전 목록을여기에서 볼 수 있습니다.
이 릴리스에는 다음 버그에 대한 수정 사항이 포함되어 있습니다.
Azure Boards
- 제품 백로그에서 새 작업 항목을 만들 때 제목 필드는 프로세스 템플릿의 기본값으로 초기화되지 않습니다.
- Azure Boards를 사용하는 경우의 속도 및 시간 제한입니다.
- 작업 항목 링크에서 "수정자" 값이 잘못되었습니다.
Azure Pipelines
- 파이프라인 알림에서 기간과 같은 필드는 일부 로캘에서 null일 수 있습니다.
- 템플릿 경로는 Azure 리소스 그룹 배포포함하는 파이프라인의 유효한 JSON 파일을 가리키지 않을 수 있습니다.
- 컬렉션 수준 보존 설정 페이지가 프로젝트 설정 페이지에 나타납니다.
Azure 테스트 계획
- 테스트 계획에서 필드를 편집하는 속도가 느립니다.
- 테스트 사례에서 보드에서 열 때(테스트 계획과 반대) 공유 단계 세부 정보가 열리지 않습니다.
일반
관리
- 메모리 사용량이 높음.
- 부하 분산 장치 구성이 있는 서버는 AllowedOrigins 레지스트리 항목에 공용 원본을 명시적으로 추가해야 했습니다.
- SQL Azure에 설치하는 고객에게 평가판 완료 대화 상자가 표시되지 않습니다.
- 확장을 설치하면 "오류 메시지 기여 누락(ms.vss-dashboards-web.widget-sdk-version-2)" 오류가 발생합니다.
- Elastic Search를 설정할 때 "사용자가 권한이 없음"이라는 오류가 발생합니다.
- TFS 2018 업데이트 2 이상에서 업그레이드할 때 Elastic Search의 인덱싱 및 쿼리 실패
- Azure DevOps Server를 구성할 때 "웨어하우스 만들기" 단계가 실패합니다.
이 릴리스에는 다음 업데이트가 포함됩니다.
- SQL Server 2019에 대한 지원.
Azure DevOps Server 2019 업데이트 1 패치 1 릴리스 날짜: 2019년 9월 10일
다음 버그를 해결하는 Azure DevOps Server 2019 업데이트 1에 대한 보안 패치 릴리스했습니다. 자세한 내용은 블로그 게시물 참조하세요.
- CVE-2019-1306: Wiki의 원격 코드 실행 취약성
Azure DevOps Server 2019 업데이트 1 릴리스 날짜: 2019년 8월 20일
메모
데이터 마이그레이션 도구는 이 릴리스 후 약 3주 후에 Azure DevOps Server 2019 업데이트 1에 사용할 수 있습니다. 현재 지원되는 버전 목록을 가져오기에 대해 여기에서 볼 수 있습니다.
RC2 릴리스 날짜: 2019년 7월 23일
RC2에는 RC1 이후 몇 가지 버그 수정이 포함되어 있으며 최종 계획된 시험판입니다.
RC1 릴리스 날짜: 2019년 7월 2일
Azure DevOps Server 2019 업데이트 1의 새로운 기능 요약
Azure DevOps Server 2019 업데이트 1에는 많은 새로운 기능이 도입되었습니다. 주요 사항 중 일부는 다음과 같습니다.
- 새 기본 프로세스
- 하루, 주, 월, 또는 연도의 시작을 기준으로 한 작업 쿼리
- Azure Boards에서 계획하는 동안 GitHub의 이슈를 수락하고 해결하십시오
- 자동 완성 끌어오기 요청에 대해 만료된 빌드 다시 실행
- 끌어오기 요청 완료하기 위한 새 병합 형식
- 태그로 YAML 파이프라인 트리거
- YAML 파일 편집하기 위한 작업 도우미
- YAML 파이프라인용 IntelliSense가 있는 웹 편집기
- 파이프라인 사용하여 GitHub 릴리스 관리
- 테스트 결과 추세(고급) 위젯
- 패키지에 대한 출처 정보
- Python 패키지에 대한 지원
- Maven의 업스트림 소스
- Azure Boards 쿼리 결과를 Wiki 포함
- 위키 페이지에 대한 Permalinks
- 위키 페이지의 알림
- Analytics 확장은 더 이상 Analytics 사용할 필요가 없습니다.
개별 섹션으로 이동하여 새 기능을 확인할 수도 있습니다.
일반
어두운 테마
어두운 테마는 Azure DevOps Services에서 널리 사용되는 기능이며 이제 Azure DevOps Server에서 사용할 수 있습니다. 모든 페이지의 오른쪽 위에 있는 아바타 아래 메뉴에서 테마 선택하여 어두운 테마를 설정할 수 있습니다.
어두운 테마
보드
새 기본 프로세스
지금까지 Agile은 다양한 프로젝트 배달 방법에 맞게 강력하고 유연한 작업 항목 유형 및 상태 집합을 제공하는 새 프로젝트의 기본 프로세스였습니다. 다른 도구에 더 익숙하거나 성장하고 더 강력한 도구 집합을 채택하려는 일부 팀의 경우 더 친숙한 용어를 사용하여 빠르게 시작하려고 합니다.
새로운 기본 프로세스는 작업을 계획하고 추적하기 위한 세 가지 작업 항목 유형(에픽, 문제 및 작업)을 제공합니다. 이슈를 사용하여 사용자 스토리, 버그 및 기능과 같은 항목을 추적하는 동시에 Epics를 사용하여 이슈를 더 큰 작업 단위로 그룹화할 것을 권장합니다. 작업을 진행할 때 할 일, 수행 및 완료의 간단한 상태 워크플로를 따라 항목을 이동합니다.
기본 프로세스기본 프로세스
새 프로젝트를 시작하는 데 도움이 되는 추적 문제 및 작업 설명서를 참조하세요.
작업 항목 양식의 상태 값 순서
이전에는 작업 항목 양식의 상태 값이 사전순으로 정렬되었습니다. 이 업데이트를 통해 프로세스 설정의 워크플로 순서와 일치하도록 상태 값의 순서를 변경했습니다. 상태 사용자 지정 설정에서 각 범주의 상태 순서를 변경할 수도 있습니다.
기능 활성화가 더 이상 불가능합니다.
고객은 컬렉션을 업그레이드한 후 새 기능을 사용하도록 설정하기 위해 각 프로젝트에 대한 XML을 수동으로 업데이트해야 합니다.
특정 기능을 사용하도록 설정하는 방법을 알아보려면 설명서 참조하세요.
더 풍부한 작업 항목 첨부 파일을 사용하여 참조 자료 구성
작업 항목에 파일을 첨부하면 사용자와 팀이 참조 자료를 중앙 집중화하여 필요할 때 언제나 쉽게 접근할 수 있습니다. 이제 작업 항목 양식의 아무 곳이나 파일을 끌어서 놓기만 하면 새 첨부 파일을 더 쉽게 추가할 수 있습니다. 첨부 파일을 목록으로 계속 보거나 그리드 보기로 전환하여 미리 보기를 표시할 수 있습니다. 파일을 두 번 클릭하여 미리 보기를 열고 순환하여 필요한 정보를 빠르게 찾습니다.
배지를 사용하여 팀 보드 공유
리포지토리의 README 파일은 프로젝트 팀이 솔루션에 기여하고 사용하는 방법에 대해 정보를 얻기 위해 자주 찾는 자료입니다. 이제 Azure Pipelines에서 빌드 또는 배포 상태 배지를 추가하는 것과 마찬가지로, Azure Boards의 팀 보드용 배지를 README에 추가할 수 있습니다. 진행 중인 열 또는 모든 열만 표시하도록 배지를 구성하고 프로젝트가 오픈 소스인 경우에도 배지를 공개적으로 표시하도록 구성할 수 있습니다.
사용하여 팀의 보드 공유
README가 Markdown을 기반으로 하는 경우 상태 배지 설정 페이지에서 샘플 Markdown을 복사하여 파일에 붙여넣을 수 있습니다.
GitHub의 README에서 배지를 보여주는
일, 주, 월 또는 연도의 시작을 기준으로 작업 쿼리
팀은 다음에 나올 내용의 컨텍스트 내에서 또는 스프린트 반복을 기반으로 하는 작업에 집중하는 경우가 많지만, 달력의 렌즈를 통해 작업을 되돌아보면서 지난 달 또는 올해 1분기에 일어난 모든 작업을 보고하는 것이 흥미로울 수 있습니다. 이제 날짜 기반 필드와 함께 다음과 같은 새 @StartOf 매크로 집합을 사용하여 날짜, 주, 월 또는 연도의 시작을 기준으로 쿼리할 수 있습니다.
- @StartOfYear
- @StartOfMonth
- @StartOfWeek
- @StartOfDay
이러한 각 매크로는 다른 날짜 단위로 데이터를 이동할 수 있는 새 한정자 문자열도 허용합니다. 예를 들어 상태 변경 날짜 >= @StartOfYear 및 상태 변경 날짜 <= @StartOfYear("+3M")을 쿼리하여 올해 1분기에 완료된 모든 작업 항목을 찾는 쿼리를 작성할 수 있습니다. 자세한 내용은 쿼리 매크로 설명서를 참조하세요.
시작을 기준으로 작업 쿼리
토론 메모 편집 및 삭제
Azure Boards에서 작업 항목의 논의 중 주석을 편집 및 삭제할 수 있는, 높은 투표를 받은 개발자 커뮤니티 기능의 가용성을 저희는 매우 기쁜 마음으로 발표합니다. 메모를 편집하려면 자신이 소유한 메모를 마우스로 가리키면 두 개의 새 단추가 표시됩니다. 연필 아이콘을 클릭하면 편집 모드로 전환되고 편집을 수행하고 "업데이트" 단추를 눌러 편집 내용을 저장할 수 있습니다.
스크린샷을 보여주는
오버플로 메뉴를 클릭하면 메모를 삭제하는 옵션이 표시됩니다. 이 댓글을 클릭하면 이 메모를 삭제할지 확인하는 메시지가 다시 표시되고 메모가 삭제됩니다.
작업 항목 양식의 기록 탭에 편집되고 삭제된 모든 메모의 전체 추적이 있습니다. 또한 토론 환경의 UI를 업데이트하여 보다 최신적이고 대화형으로 느낄 수 있도록 했습니다. 개별 댓글이 시작되고 끝나는 위치를 명확하게 하기 위해 주석 주위에 거품을 추가했습니다.
쿼리 결과를 CSV 파일로 내보내기
이제 쿼리 결과를 웹에서 CSV 형식 파일로 직접 내보낼 수 있습니다.
GitHub 주석의 멘션에서 직접 Azure Boards 작업 항목으로 이동합니다.
이제 AB#{work item ID}
구문을 사용하여 GitHub에서 문제 주석, 끌어오기 요청 또는 커밋 내의 작업 항목을 언급하면 해당 멘션은 언급한 작업 항목으로 직접 이동하도록 클릭할 수 있는 하이퍼링크가 됩니다.
이렇게 하면 모든 관련 대화에 대해 Azure Boards의 작업 항목을 복잡하게 만드는 공식 링크가 만들어지지 않고 코드 또는 고객이 보고한 문제를 논의하는 동안 팀에게 작업 항목에 대한 자세한 정보를 제공할 수 있는 방법이 제공됩니다. 자세한 내용은 Azure Boards GitHub 통합 설명서를 참조하세요.
GitHub에서 문제를 수락하고 실행하며, Azure Boards에서 계획하는 동안 이를 수행합니다.
이제 Azure Boards의 작업 항목을 GitHub의 관련 문제와 연결할 수 있습니다. 이 새로운 유형의 연결을 사용하면 이제 여러 가지 다른 시나리오가 가능합니다. 예를 들어 GitHub 내의 문제로 사용자의 버그 보고서를 계속 수락하지만 Azure Boards에서 팀의 작업을 전체적으로 연결하고 구성하려는 경우 이제 수행할 수 있습니다.
관련 문제가 있는 Azure Boards의 작업 항목 연결
팀에서 커밋 및 끌어오기 요청에 사용하는 것과 동일한 멘션 구문이 계속 적용되며, 물론 Azure Boards에서 문제 URL과 수동으로 연결할 수 있습니다. 자세한 내용은 GitHub & Azure Boards 설명서를 참조하세요.
Kanban 보드에서 연결된 GitHub 활동을 빠르게 봅니다.
Kanban 보드를 직접 검토하거나 팀으로 검토할 때 "이 항목이 아직 개발을 시작했나요?" 또는 "이 항목이 아직 검토 중입니까?"와 같은 질문이 있는 경우가 많습니다. 이제 Kanban 보드의 새 GitHub 주석을 사용하여 항목이 어디에 있는지 빠르게 파악하고 GitHub 커밋, 끌어오기 요청 또는 문제를 직접 탐색하여 자세한 내용을 확인할 수 있습니다. 이에 대한 자세한 내용과 작업 및 테스트에 대한 다른 주석은 카드 사용자 지정 설명서를 참조하세요.
연결된 GitHub 활동 보기
레포
끌어오기 요청 초안
끌어오기 요청이 준비되기 전에 완료되는 것을 방지하고 모든 사람이 참여할 수 없는 진행 중인 작업을 쉽게 만들 수 있도록 하기 위해 이제 끌어오기 요청 초안을 지원합니다.
끌어오기 요청을 생성할 때, 만들기 버튼의 드롭다운에서 초안으로 만들기를 선택하여 초안 끌어오기 요청을 생성할 수 있습니다.
PR 초안
초안 끌어오기 요청을 만든 후에는 제목 옆에 해당 상태를 나타내는 배지가 표시됩니다.
끌어오기 요청 초안은 검토자를 포함하거나 기본적으로 빌드를 실행하지 않지만 수동으로 검토자를 추가하고 빌드를 실행할 수 있습니다. 끌어오기 요청을 일반 끌어오기 요청으로 승격하려면 끌어오기 요청 세부 정보 페이지에서 게시 단추를 클릭하기만 하면 됩니다.
자동 완성 풀 리퀘스트를 위한 만료된 빌드 재실행
이제 Azure Repos는 끌어오기 요청 정책에 의해 트리거된 만료된 빌드를 자동으로 큐에 대기합니다. 이는 다른 모든 정책을 통과하고 자동 완료로 설정된 끌어오기 요청에 적용됩니다.
이전에는 끌어오기 요청에 필요한 검토자와 같은 정책이 있는 경우 승인 프로세스가 너무 오래 걸릴 수 있으며 검토자가 끌어오기 요청을 승인하기 전에 연결된 빌드가 만료될 수 있습니다. 끌어오기 요청이 자동 완료로 설정된 경우 사용자가 만료된 빌드를 수동으로 큐에 대기할 때까지 차단된 상태로 유지됩니다. 이렇게 변경하면 빌드가 성공적으로 빌드된 후 끌어오기 요청이 자동으로 완료될 수 있도록 빌드가 자동으로 큐에 대기됩니다.
메모
이 자동화는 끌어오기 요청당 최대 5개의 만료된 빌드만 큐에 대기하고 각 빌드를 한 번만 다시 큐에 대기하려고 시도합니다.
끌어오기 요청에서 왼쪽 또는 오른쪽 파일만 보기
오늘날 풀 리퀘스트에서 파일 변경 내용을 볼 때 병렬 diff 모드 또는 인라인 diff 모드를 사용할 수 있습니다. 많은 사용자가 원본 파일이나 변경된 파일을 비교하지 않고 보고 싶다는 피드백을 받았으므로 왼쪽 파일이나 오른쪽 파일을 개별적으로 볼 수 있는 새 옵션을 추가했습니다.
끌어오기 요청을 완료하기 위한 새 병합 형식
이제 끌어오기 요청에서 대상 분기로 변경 내용을 병합할 때 더 많은 옵션이 있습니다. 개발자 커뮤니티에서 가장 많이 요청된 두 가지 기능인 병합 및 Semi-Linear 병합("재베이스 및 병합"이라고도 함)Fast-Forward 대한 지원이 추가되었습니다.
이제 풀 리퀘스트 완료 대화 상자에서 사용할 수 있는 새 옵션이 표시됩니다.
업데이트된 정책 관리 페이지에서 관리자는 분기 또는 분기 폴더에서 허용되는 병합 전략을 제어할 수 있습니다.
메모
기존 정책은 여전히 적용됩니다. 예를 들어, 현재 귀하의 분기에 "스쿼시 병합만" 정책이 설정되어 있는 경우, 새로운 병합 전략을 사용하려면 그 정책을 수정해야 합니다.
끌어오기 요청 완료 과정에서 재베이스할 수 없는 몇 가지 상황이 있습니다.
- 대상 분기의 정책이 재베이스 전략 사용을 금지하는 경우, "분기 정책 재정의" 권한이 필요합니다.
- 끌어오기 요청의 소스 분기에 정책이 있는 경우 리베이스할 수 없습니다. 리베이스는 정책 승인 프로세스를 거치지 않고 소스 브랜치를 수정하게 될 것입니다.
- 병합 충돌 확장 사용하여 병합 충돌을 해결한 경우 끌어오기 요청의 모든 커밋을 한 번에 하나씩 다시 적용할 때 3방향 병합에 적용되는 충돌 해결은 거의 성공하지 못하거나 유효하지도 않습니다.
이러한 모든 경우에 브랜치를 로컬에서 리베이스하여 서버로 푸시하거나, 또는 풀 리퀘스트를 완료할 때 변경 내용을 하나의 커밋으로 병합할 수 있습니다.
끌어오기 요청(PR)에서 대상 브랜치로 필터링
끌어오기 요청을 사용하면 팀이 코드를 검토하고 변경 내용을 주 분기에 병합하기 전에 피드백을 제공할 수 있습니다. 제안된 변경 사항을 단계별로 실행하고, 의견을 남기고, 코드 변경 내용을 승인하거나 거부할 수 있으므로 이러한 워크플로는 많은 팀 워크플로에서 중요한 부분이 되었습니다.
끌어오기 요청을 더 쉽게 찾을 수 있도록 대상 분기를 사용하여 PR을 검색할 수 있도록 필터링 옵션을 추가했습니다.
대상 분기 필터링을 사용하여 Mine 탭에서 끌어오기 요청 보기를 사용자 지정할 수도 있습니다.
확장에서 구문 강조 표시 및 자동 완성을 추가하도록 허용
현재 Monaco 편집기지원하는 언어의 하위 집합에 대한 구문 강조 표시를 게시합니다. 그러나 많은 사용자가 지원하지 않는 언어에 대한 고유한 구문 강조 표시를 만들려고 합니다.
이 업데이트를 통해 확장에서 구문 강조 표시 및 자동 완성을 파일 탐색기에 추가하고 요청 뷰를 끌어올 수 있는 확장성 지점을 추가했습니다.
이 기능을 보여 주는 확장의 예를 에서찾을 수 있습니다.
또한 Kusto 언어 구문 강조 표시에 대한 지원을 추가했습니다.
리포지토리 만들기 확장 지점
리포지토리 선택기에서 새 항목을 추가할 수 있도록 확장 지점을 추가했습니다. 이 확장 지점을 사용하면 리포지토리 선택기 메뉴에 사용자 지정 작업(리디렉션, 팝업 등)을 추가하여 대체 리포지토리 만들기 시나리오와 같은 흐름을 사용할 수 있습니다.
향상된 인코딩 지원
이전에는 웹에서 파일을 편집하고 저장하면 UTF-8 인코딩으로만 저장되며 파일 인코딩이 변경될 때 메시지가 표시되지 않았습니다. 이제 웹을 통해 인코딩되지 않은 파일을 저장하려고 할 때 경고가 표시됩니다(UTF 인코딩만 지원). 또한 웹 푸시 엔드포인트를 통한 UTF-16 및 UTF-32 인코딩에 대한 지원을 추가했습니다. 즉, 인코딩 형식을 유지하므로 UTF-8로 다시 작성할 필요가 없습니다.
다음 스크린샷은 웹 푸시를 통해 인코딩 변경 내용을 소개할 때 표시되는 대화 상자의 예제입니다.
Azure Repos에서 명령 지원 받기
Go는 Golang이라고도 하는 오픈 소스 프로그래밍 언어입니다. Go에서 get 명령 사용하여 패키지 및 종속성을 다운로드하고 설치할 수 있습니다. 이 업데이트를 통해 Azure DevOps 리포지토리 내에서 go get
대한 지원을 추가했습니다.
go get
사용하면 가져오기 경로에서 명명된 종속성이 있는 패키지를 다운로드할 수 있습니다.
import
키워드를 사용하여 가져오기 경로를 지정할 수 있습니다.
파이프라인
YAML 파이프라인용 IntelliSense를 사용하는 웹 편집기
YAML을 사용하여 파이프라인을 정의하는 경우 이제 이 릴리스에 도입된 새로운 편집기 기능을 활용할 수 있습니다. 새 YAML 파이프라인을 만들든 기존 YAML 파이프라인을 편집하든 관계없이 파이프라인 웹 편집기 내에서 YAML 파일을 편집할 수 있습니다. YAML 파일을 편집할 때 IntelliSense용 Ctrl+Space 지원을 사용합니다. 구문 오류가 강조 표시되고 해당 오류를 수정하는 데도 도움이 됩니다.
YAML 파일 편집을 위한 작업 도우미
파이프라인에 대한 YAML 파일을 더 쉽게 편집할 수 있도록 요청하는 많은 피드백을 계속 받고 있으므로 YAML 편집기에서 작업 도우미를 추가하고 있습니다. 이렇게 하면 클래식 편집기에서와 같이 YAML 파일에 새 작업을 추가하는 것과 동일한 친숙한 환경이 제공됩니다. 이 새 도우미는 선택 목록 및 서비스 연결과 같은 대부분의 일반적인 작업 입력 유형을 지원합니다. 새 작업 도우미를 사용하려면 YAML 기반 파이프라인에서 편집을 선택한 다음 작업 도우미선택합니다.
편집하기 위한작업 도우미
태그를 사용하여 YAML 파이프라인 트리거
태그가 커밋에 추가될 때 YAML 파이프라인을 트리거할 수 있습니다. 워크플로에 태그가 포함된 팀에 유용합니다. 예를 들어, 커밋이 "마지막으로 정상이라고 확인된 상태"로 태그된 경우 프로세스를 시작할 수 있습니다.
포함 및 제외할 태그를 지정할 수 있습니다. 예를 들어:
trigger:
tags:
include:
- releases/*
exclude:
- releases/old*
컨테이너 리소스 인라인 선언
이전에는 YAML 파이프라인에서 컨테이너 리소스를 선언한 다음 이름으로 참조해야 했습니다. 이제 컨테이너를 여러 번 참조하지 않을 경우 인라인 구문을 제공합니다.
jobs:
- job: my-container-job
container:
image: microsoft/dotnet:latest
끌어오기 요청이 업데이트되면 기존 파이프라인 자동 취소 설정
기본적으로 새 커밋이 동일한 PR에 푸시되면 PR(끌어오기 요청)에 의해 트리거되는 파이프라인이 취소됩니다. 일반적으로 오래된 코드에서 파이프라인을 계속 실행하지 않기 때문에 대부분의 경우 바람직합니다. 이 동작을 원하지 않는 경우 pr 트리거에 autoCancel: false 추가할 수 있습니다.
pr:
branches:
include:
- main
- releases/*
autoCancel: false
YAML 파이프라인에서 체크 아웃된 코드의 디렉터리 선택
이전에는 $(Agent.BuildDirectory) 아래의 s
디렉터리에 리포지토리를 체크아웃했습니다. 이제 YAML 파이프라인에서 사용할 Git 리포지토리를 체크 아웃할 디렉터리를 선택할 수 있습니다.
checkout
path
키워드를 사용하면 폴더 구조를 제어할 수 있습니다. 다음은 디렉터리를 지정하는 데 사용할 수 있는 YAML 코드의 예입니다.
steps:
- checkout: self
path: my-great-repo
이 예제에서 코드는 에이전트 작업 영역의 my-great-repo
디렉터리로 체크 아웃됩니다. 경로를 지정하지 않으면 리포지토리가 s
디렉터리로 계속 체크 아웃됩니다.
YAML에 최적화된 새 Azure App Service 작업
이제 최신 개발자를 염두에 두고 Azure App Services를 배포하는 쉽고 강력한 방법을 제공하는 네 가지 새로운 작업을 지원합니다. 이러한 작업에는 최적화된 YAML 구문이 있으므로 Windows 및 Linux 플랫폼 모두에서 WebApps, FunctionApps, WebApps for Containers 및 Containers를 비롯한 Azure AppServices에 대한 배포를 간단하고 직관적으로 작성할 수 있습니다.
또한 XML 및 JSON 형식에 대한 파일 변환 및 변수 대체를 위한 새 유틸리티 작업을 지원합니다.
새 프로젝트에 대한 기본 사용 권한 변경
지금까지 프로젝트 참가자는 명시적으로 "빌드 정의 만들기" 권한이 부여되지 않는 한 파이프라인을 만들 수 없습니다. 새 프로젝트의 경우 팀 구성원은 파이프라인을 쉽게 만들고 업데이트할 수 있습니다. 이렇게 변경하면 Azure Pipelines에 온보딩하는 신규 고객의 마찰이 줄어듭니다. 언제든지 기여자 그룹에 대한 기본 권한을 업데이트하고 액세스를 제한할 수 있습니다.
파이프라인을 사용하여 GitHub 릴리스 관리
GitHub 릴리스는 사용자에게 소프트웨어를 패키지하고 제공하는 좋은 방법입니다. 이제 Azure Pipelines에서 GitHub 릴리스 작업을 사용하여 자동화할 수 있음을 발표하게 되어 기쁩니다. 작업을 사용하여 새 릴리스를 만들거나, 기존 초안/게시된 릴리스를 수정하거나, 이전 릴리스를 삭제할 수 있습니다. 여러 자산을 업로드하고, 릴리스를 시험판으로 표시하고, 릴리스를 초안으로 저장하는 등의 기능을 지원합니다. 이 작업은 릴리스 정보를 만드는 데도 도움이 됩니다. 또한 이 릴리스에서 수행된 변경 내용(커밋 및 관련 문제)을 자동으로 계산하고 사용자에게 친숙한 형식으로 릴리스 정보에 추가할 수 있습니다.
작업에 대한 간단한 YAML은 다음과 같습니다.
task: GithubRelease@0
displayName: 'Create GitHub Release'
inputs:
githubConnection: zenithworks
repositoryName: zenithworks/pipelines-java
assets: $(build.artifactstagingdirectory)/*.jar
이 작업을 사용하여 만든 샘플 GitHub 릴리스:
빌드 로그의 특정 줄에 대한 링크
이제 빌드 로그의 특정 줄에 대한 링크를 공유할 수 있습니다. 이렇게 하면 빌드 실패를 진단할 때 다른 팀 구성원과 공동 작업할 때 도움이 됩니다. 결과 보기에서 로그 줄을 선택하여 링크 아이콘을 가져오기만 하면됩니다.
리소스 권한 부여 개선
YAML 파일에서 참조할 때 보호된 리소스(예: 서비스 연결, 변수 그룹, 에이전트 풀, 보안 파일)에 대한 보안을 제공해야 했습니다. 동시에 비프로덕션 시나리오에 이러한 유형의 리소스를 사용하는 파이프라인을 보다 쉽게 설정하고 사용할 수 있도록 하고자 했습니다. 이전에는 리소스를 '모든 파이프라인에서 사용할 수 있는 권한'으로 표시하는 설정을 추가했습니다.
이 업데이트를 통해 리소스를 표시하지 않은 경우에도 리소스 권한 부여 문제를 보다 쉽게 해결할 수 있습니다. 새 환경에서 리소스 권한 부여 오류로 인해 빌드가 실패하면 파이프라인에서 해당 리소스의 사용을 명시적으로 승인한 다음 계속 진행하는 옵션이 표시됩니다. 리소스에 권한을 부여할 수 있는 권한이 있는 팀 구성원은 실패한 빌드에서 바로 이 작업을 완료할 수 있습니다.
파이프라인 요약
파이프라인 테스트 탭의 새 확장 기여 지점
파이프라인의 테스트 결과 탭에 두 개의 새 기여 지점을 추가하여 확장 프레임워크를 더욱 강력하게 만들기 위해 계속 노력했습니다. 이렇게 하면 Marketplace 확장 보다 맞춤형 보고 환경을 제공하고 대화형 작업을 추가할 수 있습니다.
두 가지 기여 지점은 다음과 같습니다.
도구 모음에 사용자 지정 작업 단추
경우에 따라 테스트 결과의 메타데이터를 사용하여 API의 데이터를 업데이트하거나 사용자 지정 도구를 실행하는 등의 작업을 수행할 수 있습니다. 이 기여 지점을 사용하면 선택한 테스트 결과의 즉각적인 컨텍스트를 사용하여 *사용자 지정 작업- 단추에 사용자 지정 작업을 추가하는 확장을 만들 수 있습니다.
세부 정보 창 사용자 지정 세부 정보 탭
다양한 테스트 보고서 사용 워크플로가 있을 수 있으며 디버깅 및 분석을 위해 실패한 테스트에 대해 다른 데이터 요소를 볼 수 있습니다. 이 기여 지점을 사용하여 팀은 데이터 표에서 테스트 결과 행을 선택할 때 표시되는 세부 정보 창에 새 탭을 추가할 수 있습니다. 이 새 탭은 정적 콘텐츠가 있는 보기 또는 내부 또는 외부 API를 사용하여 가져온 동적 데이터를 표시할 수 있습니다.
에이전트 한 번 실행
Azure Container Instances와 같은 인프라를 사용하여 탄력적 프라이빗 에이전트를 실행하는 경우 종종 각 에이전트가 사라지기 전에 하나의 작업만 허용하도록 합니다. 지금까지는 에이전트를 종료해야 하거나(보고 실패의 원인이 될 수 있습니다), 에이전트를 중지하기 전에 다른 작업을 받을 위험을 감수해야 했기 때문에 이 과정이 쉽지 않았습니다. 이 업데이트를 통해 에이전트 구성에 --once 플래그를 추가했습니다. 이러한 방식으로 에이전트를 구성하면 하나의 작업만 수락한 다음, 자체 작업을 종료합니다.
에이전트 풀 사용자 인터페이스 업데이트
프로젝트 설정의 에이전트 풀 관리 페이지가 새 사용자 인터페이스로 업데이트되었습니다. 이제 풀에서 실행 중인 모든 작업을 쉽게 볼 수 있습니다. 또한 작업이 실행되지 않는 이유를 알아볼 수 있습니다.
보여 주는 스크린샷
배포 그룹에서 실패한 대상에 배포
기본적으로 Azure Pipelines는 이전에 실패한 실행을 다시 배포할 때 모든 작업을 다시 실행하는 데 사용할 있습니다. 이제 배포할 때 배포 옵션 구성하여 이 동작을 재정의할 수 있습니다. 모든 작업을 선택하고 배포 그룹에서 옵션을 사용하여 실패한 대상으로 제한할 경우, 다시 실행하면 모든 작업이 실행되며 이미 최신 상태인 대상에 대한 배포는 건너뜁니다.
실패 시 자동으로 다시 배포
스테이지에 대한 배포가 실패하면 Azure Pipelines 마지막으로 성공한 배포를 자동으로 다시 배포할 수 있습니다. 당신은 배포 후 조건의 자동 재배포 트리거을 구성하여, 최신 성공 릴리스를 자동 배포하도록 스테이지를 설정할 수 있습니다. 향후 스프린트에서 트리거된 이벤트 및 작업을 자동 재배포 구성에 추가할 계획입니다. 자세한 내용은 배포 그룹 설명서를 참조하세요.
Grafana 주석 기능 서비스 후크
이제 Grafana 대시보드에 배포 완료 이벤트에 대한 Grafana 주석을 추가할 수 있는 새 서비스 후크를 지원합니다. 이렇게 하면 Grafana 대시보드에서 시각화되는 애플리케이션 또는 인프라 메트릭의 변경 내용과 배포의 상관 관계를 지정할 수 있습니다.
Azure 모니터 경고 작업 조회
이전 버전의 쿼리 Azure Monitors 태스크는 클래식 모니터링 환경에서만 지원되는 쿼리 경고를. 이 새 버전의 작업을 사용하면 Azure Monitor에서 최근에 도입한 통합 모니터링 환경에 대한 경고를 쿼리할 수 있습니다.
Kubernetes에 배포 작업에서 사양 파일의 인라인 입력
이전에는 Kubernetes 배포 작업에서 구성에 대한 파일 경로를 제공해야 했습니다. 이제 구성을 인라인으로 추가할 수도 있습니다.
Docker CLI 설치 관리자 작업
이 작업을 통해 사용자가 지정한 대로 에이전트에 모든 버전의 Docker CLI를 설치할 수 있습니다.
설치된 DockerCLI를 보여 주는
삭제된 릴리스 파이프라인 복원
사용되지 않는 릴리스 파이프라인을 삭제하면 릴리스 파이프라인 목록을 정리하는 데 도움이 되지만 실수로 무언가를 삭제하는 경우도 있습니다. 이 업데이트를 사용하면 지난 30일 이내에 삭제된 릴리스 파이프라인을 복원할 수 있습니다. 삭제된 릴리스 파이프라인 목록을 표시하는 릴리스 페이지의 왼쪽 패널에 새 탭을 추가했습니다. 이 보기에서 목록에서 파이프라인을 선택하고 복원 단추를 클릭하여 삭제된 릴리스 파이프라인을 복원할 수 있습니다.
릴리스 만들기 요청 실패에 대한 알림
빌드, 코드 베이스 및 기타 작업이 변경될 때 전자 메일을 받도록 알림을 설정할 수 있습니다. 예를 들어 작업 항목이 할당될 때 알림을 받도록 경고를 설정할 수 있습니다.
이 업데이트를 통해 릴리스 범주에 새 알림 구독을 추가했습니다. 이 알림은 릴리스 만들기에 대한 요청이 실패할 때 전자 메일을 보냅니다. 이 시나리오가 유용할 수 있는 예제 시나리오는 아티팩트 버전을 사용할 수 없기 때문에 릴리스 만들기 요청이 실패하는 경우입니다. 알림을 관리하는 방법을 알아보려면 여기 설명서참조하세요.
소스 또는 파이프라인 변경 시 릴리스 예약
이전에는 예약된 릴리스 트리거가 있을 때 업스트림 아티팩트 또는 릴리스 정의에서 변경 내용이 검색되지 않은 경우에도 릴리스가 트리거됩니다. 아티팩트 버전 또는 릴리스 정의가 변경된 경우에만 릴리스를 예약하도록 릴리스 트리거 패널에 옵션이 추가되었습니다.
릴리스 만들기 대화 상자의 변수에 대한 기여 지점
이전에는 릴리스를 만드는 동안 필요한 변수 값을 사용자가 도움이나 제안 없이 입력해야 했습니다. 새 릴리스 만들기 대화 상자에 기여 지점을 추가하여 릴리스를 만드는 동안 변수 값을 채우는 데 도움이 되는 확장을 지원합니다.
Azure Service Bus 세션 큐에 메시지 전송
세션 큐에 메시지를 게시하는 기능을 포함하도록 에이전트 없는 작업 빌드 작업을 확장했습니다. 이 옵션은 Azure Service Bus에 게시 작업에 추가되었습니다.
Kubernetes 서비스 연결의 새 Azure 구독 옵션
빌드 및 릴리스에 대한 서비스 연결을 사용하면 외부 및 원격 서비스에 연결하여 빌드 또는 배포에 대한 작업을 실행할 수 있습니다. 프로젝트의 관리자 설정에서 서비스 연결을 정의하고 관리할 수 있습니다.
이 업데이트를 통해 Kubernetes 서비스 연결 양식에 인증 옵션을 추가했습니다. 이제 Azure 구독 선택하여 연결을 인증할 수 있습니다. 이렇게 하면 Azure 구독 및 클러스터 이름으로 Kubernetes 연결을 설정하여 특정 네임스페이스에 쉽게 배포할 수 있습니다.
RBAC(역할 기반 액세스 제어)가 활성화된 클러스터의 경우, 선택한 네임스페이스에 ServiceAccount 및 RoleBinding 개체가 생성됩니다. RoleBinding 개체는 만든 서비스 계정의 작업을 선택한 네임스페이스로만 제한합니다. RBAC 사용 안 함 클러스터의 경우 만든 서비스 계정에는 네임스페이스에 대한 클러스터 전체 권한이 있습니다.
Docker 레지스트리 서비스 연결의 Azure 컨테이너 레지스트리
이제 프로젝트의 설정 페이지에서 Docker 레지스트리 서비스 연결을 만들 수 있습니다. 연결을 만들려면 AAD(Azure Active Directory) ID와 연결된 구독 중 하나에서 Azure 컨테이너 레지스트리를 선택합니다. Docker@2 및 KubernetesManifest@0 같은 컨테이너 레지스트리에 대한 서비스 연결이 필요한 모든 작업은 연결을 지정하는 단일 방법을 지원합니다.
추가
릴리스 정의에서 폴더 이름으로 검색
릴리스 정의를 폴더에 저장하여 구성할 수 있습니다. 이전에는 폴더별로 검색을 수행할 수 있는 옵션이 없었습니다. 폴더를 많이 만든 경우 특정 릴리스 정의를 찾기가 어려웠습니다. 이제 릴리스 정의에서 폴더 이름으로 검색하여 원하는 정의를 더 쉽게 찾을 수 있습니다.
폴더에 저장된 릴리스 정의를 보여 주는
빌드 및 릴리스 파이프라인의 더플 툴 설치 작업
Duffle은 CNAB(클라우드 네이티브 애플리케이션 번들)를 설치하고 관리할 수 있는 명령줄 도구입니다. CNAB를 사용하면 컨테이너 네이티브 앱과 해당 서비스를 번들, 설치 및 관리할 수 있습니다.
이 업데이트에서는 특정 버전의 Duffle 이진 파일을 설치할 수 있는 빌드 및 릴리스 파이프라인에 대한 새 작업을 추가했습니다.
Kubernetes 매니페스트 작업
매니페스트 파일을 사용하여 Kubernetes 클러스터에 배포하는 프로세스를 간소화하기 위해 릴리스 파이프라인에 새 작업을 추가했습니다. 이 작업은 스크립트에서 kubectl 이진을 사용하는 경우와 비교할 때 다음과 같은 이점을 제공합니다.
아티팩트 대체 - 배포 작업은 태그 또는 다이제스트와 함께 지정할 수 있는 컨테이너 이미지 목록을 입력으로 사용합니다. 이는 클러스터에 적용하기 전에 매니페스트 파일의 템플릿이 아닌 버전으로 대체되어 클러스터 노드에서 올바른 버전의 이미지를 끌어올 수 있도록 합니다.
매니페스트 안정성 - 작업 상태를 성공/실패로 계산하는 동안 안정성 검사를 통합하기 위해 배포된 Kubernetes 개체에 대해 롤아웃 상태가 확인됩니다.
추적 가능성 주석 - 원본 조직, 프로젝트, 파이프라인 및 실행에 대한 추적 가능성 정보를 중첩하기 위해 배포된 Kubernetes 개체에 주석이 추가됩니다.
매니페스트 굽기 - 이 작업의 굽기 기능을 활용하여 Helm 차트를 Kubernetes 매니페스트 파일로 변환함으로써 클러스터에 적용할 수 있습니다.
배포 전략 - 배포 작업을 통해 카나리아 전략을 선택하면 원하는 비율의 워크로드가 생성됩니다. 이 워크로드는 -baseline 및 -canary 접미사가 추가되어
ManualIntervention
작업 중 비교할 수 있도록 설계되며, 이후 작업의 승격 또는 거부 작업을 활용하여 최종적으로 보존할 버전을 결정합니다.
steps:
- task: KubernetesManifest@0
name: bake
displayName: Bake K8s manifests from Helm chart
inputs:
action: bake
helmChart: charts/sample
overrides: 'image.repository:nginx'
- task: KubernetesManifest@0
displayName: Deploy K8s manifests
inputs:
kubernetesServiceConnection: k8sSC1
manifests: $(bake.manifestsBundle)
containers: |
nginx: 1.7.9
Docker 작업으로 업그레이드
파이프라인 제작 환경을 간소화하기 위해 Docker 작업을 업그레이드했습니다. 이제 buildAndPush 명령을 사용하여 특정 컨테이너 리포지토리에 대한 여러 태그를 빌드하고 한 단계로 여러 컨테이너 레지스트리에 푸시할 수 있습니다. 이 작업은 Docker 레지스트리 서비스 연결을 사용하여 컨테이너 레지스트리에 로그인할 수 있습니다. 원본 리포지토리, 커밋 및 빌드 출처에 대한 추적 가능성 메타데이터는 이 작업을 사용하여 빌드된 이미지에 레이블로 추가됩니다.
steps:
- task: Docker@2
displayName: Container registry login - ACR1 service connection
inputs:
command: login
containerRegistry: acr1
- task: Docker@2
displayName: Container registry login - ACR2 service connection
inputs:
command: login
containerRegistry: acr2
- task: Docker@2
displayName: Build and push images
inputs:
repository: test
tags: |
d1
d2
Kubectl 도구 설치 관리자
에이전트에 특정 버전의 Kubectl 이진 파일을 설치할 수 있는 새 작업을 추가했습니다. 최신 및 셈버 버전 문자열(예: 'v1.14.0')은 Kubectl 버전 사양 입력에 유효한 값으로 허용됩니다.
kubectl 도구 설치 관리자를 보여주는 스크린샷
ServiceNow 통합 개선 사항
팀 간 협업의 주요 기능은 각 팀이 선택한 서비스를 사용하고 효과적인 엔드 투 엔드 배달을 가능하게 하는 것입니다. 이 업데이트를 통해 모든 유형의 변경(일반, 표준 및 긴급)을 지원하도록 ServiceNow 통합이 향상되었습니다. 또한 이제 조직에서 수행된 ITSM 프로세스에 따라 기존 템플릿을 사용하여 새 변경 요청을 만드는 데 사용되는 게이트를 지정할 수 있습니다. 마지막으로 기존 변경 요청에 따라 릴리스를 제어할 수도 있습니다. 이를 통해 IT 팀에서 권장하는 프로세스를 변경할 필요 없이 CD를 채택할 수 있습니다.
Red Hat Enterprise Linux 6 지원
이 업데이트를 통해 Red Hat Enterprise Linux 6에 대한 에이전트 지원이 추가되었습니다. 이제 빌드 및 릴리스 작업 실행을 위해 Red Hat Enterprise Linux 6 플랫폼을 대상으로 하는 에이전트를 구성할 수 있습니다.
Azure PowerShell Az 모듈 지원
Azure PowerShell은 명령줄에서 Azure 리소스를 관리하는 데 사용할 수 있는 cmdlet 집합을 제공합니다. 작년 12월에 Azure PowerShell Az 모듈을 사용할 수 있게 되었고 이제 Azure 리소스를 관리하기 위한 모듈이 되었습니다.
이전에는 호스트된 에이전트에서 Azure PowerShell Az 모듈에 대한 지원을 제공하지 않았습니다. 빌드 및 릴리스 파이프라인의 새 Azure PowerShell 작업 버전 4.*를 사용하여 모든 플랫폼에 대한 새 Az 모듈에 대한 지원을 추가했습니다. Azure PowerShell 작업 버전 3.*은 AzureRM 모듈을 계속 지원합니다. 그러나 최신 Azure 서비스 및 기능을 따라가려면 가능한 한 빨리 Azure PowerShell 작업 버전 4.*로 전환하는 것이 좋습니다.
Az 모듈에는 새 구문을 사용하도록 업데이트하는 동안 기존 스크립트를 사용하는 데 도움이 되는 호환성 모드가 있습니다. Az 모듈에 대한 호환성을 사용하도록 설정하려면 Enable-AzureRmAlias
명령을 사용합니다. 별칭을 사용하면 Az 모듈에서 이전 cmdlet 이름을 사용할 수 있습니다. 자세한 내용은 Azure RM 모듈에서 Azure PowerShell Az 모듈로 마이그레이션하는 에서 확인할 수 있습니다.
메모
프라이빗 에이전트를 사용하는 경우 에이전트 컴퓨터에 Az 모듈을 설치해야 합니다.
Azure PowerShell Az 모듈에 대한 자세한 내용은 설명서를 참조하세요.
Azure SQL 작업에 대한 Azure AD(Active Directory) 인증 지원
Azure SQL 작업은 SQL Server 인증에 대한 기존 지원 외에도 Azure AD(통합 & 암호) 및 연결 문자열을 사용하여 데이터베이스에 연결할 수 있도록 향상되었습니다.
긴 파일 경로를 사용하여 빌드 아티팩트 게시
지금까지 경로가 233자보다 긴 빌드 아티팩트를 업로드하지 못하게 하는 제한 사항이 있었습니다. 이렇게 하면 제한보다 긴 파일 경로를 사용하여 Linux 및 macOS 빌드의 코드 검사 결과를 업로드하지 못할 수 있습니다. 긴 경로를 지원하도록 제한이 업데이트되었습니다.
커밋에 대한 CI(연속 통합) 건너뛰기
이제 커밋을 무시하고 커밋이 일반적으로 트리거되는 파이프라인 실행을 건너뛰도록 Azure Pipelines에 지시할 수 있습니다. HEAD 커밋의 커밋 메시지에 [skip ci]
포함하기만 하면 Azure Pipelines는 CI를 건너뜁니다. 아래에 나열된 변형을 사용할 수도 있습니다. Azure Repos Git 및 GitHub Enterprise Server에 대한 커밋에 대해 지원됩니다.
-
[skip ci]
또는[ci skip]
-
skip-checks: true
또는skip-checks:true
-
[skip azurepipelines]
또는[azurepipelines skip]
-
[skip azpipelines]
또는[azpipelines skip]
-
[skip azp]
또는[azp skip]
***NO_CI***
테스트 계획
테스트 결과 추세(고급) 위젯
테스트 결과 추세(고급) 위젯 여러 빌드 및 릴리스에 대한 테스트 데이터를 거의 실시간으로 확인할 수 있습니다. 테스트 결과 추세(고급) 위젯은 사용자의 파이프라인별 혹은 모든 파이프라인의 테스트 결과 추세를 표시합니다. 이를 사용하여 일일 테스트 수, 통과 속도 및 테스트 기간을 추적할 수 있습니다. 시간이 지남에 따라 테스트 품질을 추적하고 테스트 담보를 개선하는 것이 정상 DevOps 파이프라인을 유지하는 데 핵심입니다.
테스트 결과 추세(고급) 위젯 테스트 결과에서 이상값을 찾고 다음과 같은 질문에 대답하는 데 도움이 됩니다. 테스트 실행 시간이 평소보다 오래 걸리나요? 전체 통과율에 영향을 주는 테스트 파일 또는 파이프라인은 무엇인가요? 내 장기 실행 테스트는 무엇인가요?
이러한 질문에 대답하는 데 도움이 되도록 위젯은 다음 기능을 제공합니다.
- 통과률의 추세와 테스트 결과 또는 테스트 기간 수를 표시합니다.
- 여러 빌드 파이프라인 또는 릴리스 파이프라인을 기반으로 테스트 결과를 표시합니다.
- 결합된 차트 옵션을 사용하여 동일한 추세에 대해 두 메트릭 표시
- 테스트 결과별로 시간에 따른 테스트 수를 필터링합니다.
- 분기 또는 테스트별로 모든 테스트 결과를 필터링합니다.
- 우선 순위 또는 환경 같은 테스트 특성별로 메트릭을 쌓습니다.
- 테스트 파일, 소유자 또는 파이프라인별로 데이터를 그룹으로 묶기
위젯은 매우 구성 가능하여 다양한 시나리오에 사용할 수 있습니다.
URL을 통해 테스트 실행 결과 공유
빌드 또는 릴리스의 일부로 실행되도록 자동화된 테스트를 구성할 수 있습니다. 게시된 테스트 결과는 빌드 또는 릴리스 요약의 테스트 탭에서 볼 수 있습니다. 이 업데이트를 통해 팀의 다른 사용자와 단일 테스트 실행 결과를 공유할 수 있도록 결과 URL 복사 기능을 추가했습니다.
공유 수준은 다음과 같습니다.
- 실행 수준
- 결과 수준
- 테스트 실행 내에서 선택된 개별 탭
- 공유는 구성된 확장 탭과도 호환됩니다.
URL을 공유하면 뷰어는 전체 화면 보기에서 테스트 실행 결과를 볼 수 있습니다.
아티팩트
SemVer 2.0.0 버전 번호가 있는 NuGet 패키지
이전에는 Azure Artifacts에서 SemVer 2.0.0 버전 번호를 가진 NuGet 패키지를 지원하지 않았습니다(일반적으로 버전 번호에 +
으로 표시되는 빌드 메타데이터 부분을 포함하는 경우). 이제 빌드 메타데이터가 포함된 nuget.org 패키지를 저장하고 빌드 메타데이터를 사용하여 고유한 패키지를 푸시할 수 있습니다.
SemVer 사양 및 NuGet.org 정책따라 빌드 메타데이터를 사용하여 패키지를 주문할 수 없습니다. 따라서 1.0.0+build1
및 1.0.0+build2
모두 Azure Artifacts(또는 nuget.org)에 게시할 수 없습니다. 해당 버전은 동등한 것으로 간주되므로 불변성 제약 조건이 적용됩니다.
패키지에 대한 출처 정보
이 업데이트를 통해 패키지의 출처를 좀 더 쉽게 이해할 수 있게 했습니다. 패키지의 출처는 누가, 무엇을 게시했는지, 어떤 소스 코드 커밋에서 왔는지를 파악할 수 있습니다. 이 정보는 Azure Pipelines에서 NuGet, npm, Maven및 Twine Authenticate(Python용) 작업을 사용하여 게시된 모든 패키지에 대해 자동으로 채워집니다.
패키지 사용량 통계
지금까지 Azure Artifacts는 패키지의 사용량 또는 인기를 측정하는 방법을 제공하지 않았습니다. 이 업데이트를 통해 패키지 목록 및 패키지 세부 정보 페이지 모두에 다운로드 및 사용자 개수를 추가했습니다. 두 페이지의 오른쪽에서 통계를 볼 수 있습니다.
Python 패키지 지원
이제 Azure Artifacts는 Python 패키지를 호스트할 수 있습니다. 즉, 직접 생성하는 패키지와 퍼블릭 PyPI에서 저장된 업스트림 패키지를 모두 호스트할 수 있습니다. 자세한 내용은 알림 블로그 게시물 및 문서참조하세요.
이제 동일한 피드에서 모든 NuGet, npm, Maven 및 Python 패키지를 호스트할 수 있습니다.
Maven에 대한 상위 소스
이제 Maven 피드에 업스트림 원본을 사용할 수 있습니다. 여기에는 기본 Maven Central 리포지토리 및 Azure Artifacts 피드가 포함됩니다. Maven 업스트림을 기존 피드에 추가하려면 피드 설정방문하여 업스트림 원본 피벗선택한 다음, 업스트림 원본 추가를 선택합니다.
아티팩트 관련 작업에 대한 프록시 지원
지금까지 많은 아티팩트 관련 빌드 작업이 Azure Pipelines의 프록시 인프라를 완전히 지원하지 않아 온-프레미스 에이전트의 작업을 사용하는 데 어려움이 있었습니다. 이 업데이트를 통해 다음 작업에 프록시에 대한 지원을 추가했습니다.
- Npm@1(디자이너의 'npm')
- NuGetCommand@2(디자이너의 'NuGet'): 복원 및 푸시 명령만
- DotNetCoreCLI@2(디자이너의 '.NET Core'): 복구 및 nuget push 명령만 사용
- 디자이너에서 NpmAuthenticate@0, PipAuthenticate@0 및 TwineAuthenticate@0('[type] Authenticate'): 이러한 작업은 인증 토큰을 획득하는 동안 프록시를 지원하지만 프록시를 사용하도록 후속 작업/스크립트/도구를 구성해야 합니다. 다른 방법으로, 이러한 작업은 기본 도구(npm, pip, twine)에 대한 프록시를 구성하지 않습니다.
- NuGetToolInstaller@0, NodeTool@0, DotNetCoreInstaller@0(디자이너의 '[type] Installer')
릴리스에서 지원되는 모든 아티팩트 패키지 형식
지금까지 Pipelines 릴리스에서는 NuGet 패키지만 Azure Artifacts 아티팩트 형식으로 지원되었습니다. 이 업데이트를 사용하면 Maven, npm 및 Python과 같은 모든 Azure Artifacts 패키지 형식이 지원됩니다.
릴리스에서 지원되는 아티팩트 뷰
이전에는 새 패키지 버전이 피드에 게시된 경우에만 Azure Artifacts 아티팩트 형식이 트리거될 수 있었습니다. 이제 보기에 대한 지원도 추가되었으므로 피드에 이미 있는 패키지가 보기로 승격될 때 릴리스를 트리거할 수 있습니다.
보존 정책은 최근에 다운로드한 패키지를 건너뛸 수 있습니다.
지금까지 Azure Artifacts 피드는 "패키지당 최대 버전 수"에 도달했을 때 이전 패키지 버전을 삭제하기 시작하는 기본 보존 정책을 제공했습니다. 이 업데이트를 통해 이 정리를 수행할 때 최근에 다운로드한 패키지를 건너뛸 수 있는 기능이 추가되었습니다. 사용하려면 피드를 편집하고 최근에 다운로드한 건너뛰기 패키지를 확인란을 선택합니다.
피드를 관리할 수 있는 대리인
Azure Artifacts에서 프로젝트 컬렉션 관리자(PCA)는 항상 Azure DevOps 서버의 모든 피드를 관리할 수 있었습니다. 이 업데이트를 통해 PCA는 다른 사용자 및 그룹에 이 기능을 제공하여 피드를 관리하는 기능을 위임할 수도 있습니다.
Wiki
수식 및 비디오용 Markdown 템플릿
Wiki를 편집할 때 수식, 비디오 , YAML 태그 추가하기 위한 markdown 구문을 더 이상 기억할 필요가 없습니다. 이제 도구 모음에서 상황에 맞는 메뉴를 클릭하고 원하는 옵션을 선택할 수 있습니다.
Wiki에 Azure Boards 쿼리 결과 포함
이제 테이블 형식으로 위키 페이지에 Azure Boards 쿼리 결과를 포함할 수 있습니다. 아래 이미지는 릴리스된 모든 기능 목록과 위키에 포함된 현재 스프린트의 모든 활성 버그가 포함된 위키 페이지의 샘플을 보여 줍니다. 페이지에 표시되는 콘텐츠는 기존 작업 항목 쿼리를 사용하고 있습니다. 이 새로운 기능을 사용하면 동적 콘텐츠를 만들 수 있으며 위키 페이지를 수동으로 업데이트하는 것에 대해 걱정할 필요가 없습니다.
쿼리 결과는 다음 두 단계로 추가할 수 있습니다.
- 편집 도구 모음에서 "쿼리 결과" 단추를 클릭합니다.
- 필요한 쿼리를 선택하고 "삽입" 단추를 클릭합니다.
이제 페이지를 저장한 후 쿼리 결과를 테이블 형식으로 볼 수 있습니다.
Wiki Markdown 편집기용 모노스페이스 글꼴
위키 Markdown 편집기용 모노스페이스 글꼴이 도입되면 가독성이 더 이상 문제가 되지 않습니다. Markdown 원본은 깨끗하고 읽기 쉽습니다. 이 기능은 이 제안 티켓 따라 우선 순위가 지정되었습니다.
Wiki 페이지의 영구 링크
지금까지 연결된 페이지의 이름을 바꾸거나 이동하면 공유 Wiki 페이지 링크가 끊어졌습니다. 이제 URL에 페이지 ID를 추가하여 영구 링크를 도입했습니다. 이렇게 하면 시간이 지남에 따라 위키가 변경됨에 따라 공유하는 링크가 그대로 유지됩니다.
이 기능은 이 제안 티켓의 따라 우선 순위가 지정되었습니다.
Wiki 페이지에 작업 항목 상태 표시
이 업데이트에서는 위키 페이지에서 해당 ID 및 제목과 함께 작업 항목의 상태를 페이지에 추가하여 작업 항목 멘션을 향상시켰습니다.
향상된 작업 항목 멘션을 보여 주는
끌어오기 요청 주석 및 보드 토론의 작업 항목 참조도 상태를 표시합니다.
@mention 사용자 및 그룹
이제 위키 페이지에서 사용자 및 그룹을 @mention 수 있습니다. 이렇게 하면 팀의 연락처 페이지, 지침 문서 및 지식 문서와 같은 문서가 더 풍부해집니다. 아래 이미지는 작업과 책임자가 있는 스프린트 회고전을 보여주는 예입니다.
@mention 사용자 및 그룹을 언급할 때의 모양을 보여주는 스크린샷. />
또한 위키 편집 페이지에 "@"를 입력하여 자동 제안에서 사용자 또는 그룹을 선택할 수도 있습니다. 언급된 사람도 메일로 알림을 받습니다.
@mention입력을 시작할 때 나타나는 자동 제안 스크린샷 />
마지막으로 @mentioned 사용자를 클릭하여 프로필 정보 카드를 볼 수도 있습니다. 이 기능은 이 기능 제안 따라 우선 순위가 지정되었습니다.
위키 페이지의 알림
지금까지는 위키 페이지의 콘텐츠가 변경된 시기를 알 수 없었습니다. 이제 위키 페이지를 따라 페이지가 편집, 삭제 또는 이름이 변경될 때 전자 메일을 통해 알림을 받을 수 있습니다. 위키에 대한 변경 내용을 추적하려면 위키 페이지에서 팔로우 단추를 선택합니다.
이 기능은 이 제안 티켓의 따라 우선 순위가 지정되었습니다. 자세한 내용은 여기 설명서참조하세요.
HTML 태그 지원
이제 HTML 태그를 사용하여 wiki에서 더 풍부한 콘텐츠를 만들 수 있습니다. 아래에서 HTML 태그를 사용하여 수행할 수 있는 작업을 확인하세요.
이제 자세한 내용 태그와 요약 태그를 사용하여 위키 페이지 내에서 축소 가능한 섹션을 만들 수 있습니다. 열린 특성을 추가하여 세부 정보를 기본적으로 확장된 상태로 유지할 수 있습니다.
세부 정보 태그에 대한 자세한 내용은 설명서를여기에서 참조하세요.
메모
이 태그는 Edge 및 Internet Explorer 브라우저에서 지원되지 않습니다.
향상된 테이블 만들기 및 편집
지금까지 위키에서 테이블을 만들고 편집하는 것은 어려웠습니다. Wiki에서 테이블을 더 쉽게 추가하고 관리할 수 있도록 변경했습니다.
표에서 테이블 만들기
더 이상 markdown 테이블 구문을 기억할 필요가 없습니다. 이제 15 X 15 그리드에서 선택하여 markdown 테이블을 쉽게 만들 수 있습니다. 한 번의 클릭으로 표를 삽입하는 데 필요한 수의 열과 행을 선택하기만 하면 됩니다.
이 기능은 다음 제안 티켓에 따라 우선 순위가 지정되었습니다.
- 위키 에 대한 테이블 보기
- 위키에 표를 쉽게 삽입할 수 있도록 만듭니다
테이블 가독성 향상
이제 편집기에서 테이블의 가독성을 높이기 위해 단어 줄 바꿈 전환할 수 있습니다. 단어 줄 바꿈을 사용하지 않도록 설정하면 큰 테이블의 내용을 더 쉽게 볼 수 있는 스크롤 막대가 추가됩니다.
Markdown 테이블 자동 서식 지정
더 이상 markdown 열을 정렬하기 위해 공백을 추가할 필요가 없습니다. 표 서식 단추를 사용하면 셀에 공백을 추가하여 열을 정렬하여 markdown 테이블의 서식이 자동으로 지정됩니다. 큰 테이블이 있는 경우, 과 함께 줄 바꿈을 비활성화하여 표를 더 쉽게 읽을 수 있도록 합니다.
Ctrl + Shift + F 바로 가기를 사용하여 테이블의 서식을 지정할 수도 있습니다.
보고
분석 확장이 더 이상 분석 기능 사용에 필요하지 않습니다.
분석이 점점 더 Azure DevOps 환경의 필수적인 부분이 되고 있습니다. 고객이 데이터 기반 의사 결정을 내리는 데 도움이 되는 중요한 기능입니다.
업데이트 1의 경우 고객이 분석을 사용하기 위해 더 이상 분석 확장이 필요하지 않음을 알려드립니다. 이제 고객은 프로젝트 컬렉션 설정 아래에서 분석을 사용하도록 설정할 수 있습니다. 제품 내에서 바로 사용할 수 있는 간단한 프로세스입니다.
고객이 분석을 사용하도록 설정하는 방법은 다음과 같습니다.
- 프로젝트 컬렉션 설정으로 이동합니다.
- 클릭 분석 활성화
그리고 그게 다야! 컬렉션에 대해 분석 기반 환경이 켜집니다.
업그레이드된 Analytics 확장이 설치된 업데이트 1 및 Azure DevOps Server 2019 컬렉션에서 만든 새 컬렉션은 기본적으로 분석을 사용하도록 설정됩니다.
분석 및 이를 통해 제공되는 경험에 대해 더 알아보려면.
- 이 Analytics을 가능하게 하는 방법에 대해 자세히 알아보세요.
- Analytics 개요 설명서읽어보세요.
- 주요 기능에 대해 알아보십시오: Analytics 위젯, 최상위 실패 테스트 보고서, Power BI 통합, 그리고 OData 엔드포인트.
- Channel 9의 Azure DevOps Analytics 비디오를시청하세요.
피드백
여러분의 의견을 듣고 싶습니다! 문제를 보고하거나 아이디어를 제공하고 개발자 커뮤니티 통해 추적하고 Stack Overflow대한 조언을 얻을 수 있습니다.