Developer Community 여러 요청을 처리했습니다.

피드백에 대한 응답으로 Developer Community 요청한 여러 기능의 우선 순위를 지정했습니다. 파이프라인에서는 YAML 식에서 문자열 분할 함수에 대한 지원을 추가했습니다. 또한 이제 파이프라인 실행에 대한 마지막 커밋 메시지 표시하지 않도록 설정할 수 있습니다. 배달 계획에서 팀 제한을 15개에서 20개로 늘렸습니다.

자세한 내용은 릴리스 정보를 확인하세요.

Azure Boards

Azure Pipelines

Azure Boards

배달 계획 팀 제한을 15에서 20으로 늘입니다.

배달 계획을 사용하면 organization 여러 백로그 및 여러 팀을 볼 수 있습니다. 이전에는 여러 프로젝트의 백로그와 팀을 혼합하여 15개의 팀 백로그를 볼 수 있었습니다. 이 스프린트에서는 최대 제한을 15에서 20으로 늘렸습니다.

보고 작업 항목 링크 가져오기 API의 버그를 수정하여 링크 형식에 대한 System.LinkTypes.Remote.Related 올바른 remoteUrl 값을 반환했습니다. 이 수정 전에 잘못된 organization 이름과 누락된 프로젝트 ID를 반환했습니다.

새 Boards Hub 버그 수정

이 스프린트에서는 새 보드 허브에 대한 여러 버그를 수정했습니다. 새 보드 허브, 스프린트 209 업데이트 블로그 게시물에서 버그 수정 목록을 볼 수 있습니다.

Azure Pipelines

파이프라인 실행에 대한 마지막 커밋 메시지 표시 안 함

이전에는 파이프라인 실행을 표시할 때 마지막 커밋 메시지 표시하는 데 파이프라인 UI를 사용했습니다.

마지막 커밋 메시지 예

예를 들어 YAML 파이프라인의 코드가 빌드 중인 코드를 보유하는 리포지토리와 다른 리포지토리에 있는 경우 이 메시지는 혼동될 수 있습니다. Developer Community 모든 파이프라인 실행의 제목에 최신 커밋 메시지 추가하도록 설정/사용하지 않도록 설정하는 방법을 묻는 피드백을 들었습니다.

이 업데이트를 통해 정확하게 수행할 수 있는 라는 appendCommitMessageToRunName새 YAML 속성이 추가되었습니다. 기본적으로 속성은 로 true설정됩니다. 로 설정 false하면 파이프라인 실행은 만 표시합니다 BuildNumber.

빌드 번호가 있는 파이프라인 실행의 예

마지막 커밋 메시지 사용하여 파이프라인 실행의 예

파이프라인 실행 Rest API에서 사용된 리소스 및 템플릿 매개 변수

확장 된 파이프라인 실행 REST API 는 이제 파이프라인 실행에 사용되는 더 많은 유형의 아티팩트와 해당 실행을 트리거하는 데 사용되는 매개 변수를 반환합니다. 파이프라인 실행에 사용되는 및 리소스 및 pipeline 템플릿 매개 변수를 반환 container 하도록 API를 향상시켰습니다. 예를 들어 이제 파이프라인에서 사용하는 리포지토리, 컨테이너 및 기타 파이프라인 실행을 평가하는 규정 준수 검사를 작성할 수 있습니다.

다음은 새 응답 본문의 예입니다.

"resources":
{
    "repositories":
    {
        "self":
        {
            "repository":
            {
                "id": "e5c55144-277b-49e3-9905-2dc162e3f663",
                "type": "azureReposGit"
            },
            "refName": "refs/heads/main",
            "version": "44153346ecdbbf66c68c20fadf27f53ea1394db7"
        },
        "MyFirstProject":
        {
            "repository":
            {
                "id": "e5c55144-277b-49e3-9905-2dc162e3f663",
                "type": "azureReposGit"
            },
            "refName": "refs/heads/main",
            "version": "44153346ecdbbf66c68c20fadf27f53ea1394db7"
        }
    },
    "pipelines":
    {
        "SourcePipelineResource":
        {
            "pipeline":
            {
                "url": "https://dev.azure.com/fabrikam/20317ad0-ae49-4588-ae92-6263028b4d83/_apis/pipelines/51?revision=3",
                "id": 51,
                "revision": 3,
                "name": "SourcePipeline",
                "folder": "\\source"
            },
            "version": "20220801.1"
        }
    },
    "containers":
    {
        "windowscontainer":
        {
            "container":
            {
                "environment":
                {
                    "Test": "test"
                },
                "mapDockerSocket": false,
                "image": "mcr.microsoft.com/windows/servercore:ltsc2019",
                "options": "-e 'another_test=tst'",
                "volumes":
                [
                    "C:\\Users\\fabrikamuser\\mount-fabrikam:c:\\mount-fabrikam"
                ],
                "ports":
                [
                    "8080:80",
                    "6379"
                ]
            }
        }
    }
},
"templateParameters":
{
    "includeTemplateSteps": "True"
}

YAML 템플릿 식에서 문자열 분할 함수에 대한 지원 추가

YAML 파이프라인은 개체의 목록 또는 속성 값을 반복하는 등 코드 중복을 each 줄이는 편리한 방법을 제공합니다.

경우에 따라 반복할 항목 집합이 문자열로 표시됩니다. 예를 들어 배포할 환경 목록이 문자열 integration1, integration2로 정의되는 경우입니다.

Developer Community 피드백을 들으면서 YAML 템플릿 식에서 문자열 split 함수를 원한다고 들었습니다.

이제 문자열을 만들고 해당 부분 문자열을 반복 each 할 수 split 있습니다.

variables:
  environments: integration1, integration2

jobs:
  - job: Deploy
    steps:
    - ${{ each env in split(variables.environments, ', ') }}:
      - script: ./deploy.sh -e ${{ env }}
      - script: ./runTest.sh -e ${{ env }}

Git 리포지토리를 가져올 때 태그를 동기화하지 마세요.

체크 아웃 작업은 Git 리포지토리의 콘텐츠를 가져오는 옵션을 사용합니다--tags. 이로 인해 서버는 모든 태그와 해당 태그가 가리키는 모든 개체를 가져옵니다. 이렇게 하면 파이프라인에서 작업을 실행하는 시간이 늘어나며, 특히 태그가 많은 큰 리포지토리가 있는 경우 더 많은 시간이 소요됩니다. 또한 체크 아웃 태스크는 단순 인출 옵션을 사용하도록 설정해도 태그를 동기화하므로 용도가 무용지물이 될 수 있습니다. Git 리포지토리에서 가져오거나 가져온 데이터의 양을 줄이기 위해 이제 태그 동기화 동작을 제어하는 새 옵션을 작업에 추가했습니다. 이 옵션은 클래식 및 YAML 파이프라인 모두에서 사용할 수 있습니다.

이 동작은 YAML 파일 또는 UI에서 제어할 수 있습니다.

YAML 파일을 통해 태그 동기화를 옵트아웃하려면 를 체크 아웃 단계에 추가 fetchTags: false 합니다. fetchTags 옵션을 지정하지 않으면 가 사용되는 경우 fetchTags: true 와 동일합니다.

steps:
- checkout: self  # self represents the repo where the initial Pipelines YAML file was found
  clean: boolean  # whether to fetch clean each time
  fetchTags: boolean # whether to sync the tags
  fetchDepth: number  # the depth of commits to ask Git to fetch
  lfs: boolean  # whether to download Git-LFS files
  submodules: boolean | recursive  # set to 'true' for a single level of submodules or 'recursive' to get submodules of submodules
  path: string  # path to check out source code, relative to the agent's build directory (e.g. \_work\1)
  persistCredentials: boolean  # set to 'true' to leave the OAuth token in the Git config after the initial fetch

기존 YAML 파이프라인의 동작을 변경하려는 경우 YAML 파일을 업데이트하는 대신 UI에서 이 옵션을 설정하는 것이 더 편리할 수 있습니다. UI로 이동하려면 파이프라인에 대한 YAML 편집기를 열고 트리거, 프로세스, 체크 아웃 단계를 차례로 선택합니다.

YAML 파일과 UI 모두에서 이 설정을 지정하면 YAML 파일에 지정된 값이 우선합니다.

만드는 모든 새 파이프라인(YAML 또는 클래식)의 경우 태그는 기본적으로 동기화됩니다. 이 옵션은 기존 파이프라인의 동작을 변경하지 않습니다. 위에서 설명한 대로 옵션을 명시적으로 변경하지 않는 한 태그는 해당 파이프라인에서 계속 동기화됩니다.

Ubuntu 18.04 이미지에 대한 브라운아웃 일정 업데이트됨

Azure Pipelines는 호스트된 풀에서 Ubuntu 18.04 이미지(ubuntu-18.04)를 더 이상 사용하지 않습니다. 이 이미지는 12월 1일에 사용 중지됩니다. 큐 시간이 길어질 수 있습니다.

ubuntu-18.04 이미지를 사용하는 파이프라인을 더 잘 식별할 수 있도록 브라운아웃을 계획하고 있습니다. 작업은 브라운아웃 기간 동안 실패합니다.

  • ubuntu-18.04 이미지를 사용하여 파이프라인 실행에 경고 메시지가 표시됩니다.
  • ubuntu-18.04를 포함하여 사용되지 않는 이미지를 사용하여 파이프라인을 찾는 데 도움이 되는 스크립트 를 사용할 수 있습니다.
  • 짧은 "브라운아웃"을 예약하고 있습니다. 모든 ubuntu-18.04 실행은 브라운아웃 기간 동안 실패합니다. 따라서 브라운아웃 전에 파이프라인을 마이그레이션하는 것이 좋습니다.

브라운아웃 일정(업데이트됨)

  • 10월 3일, 12:00 UTC - 10월 3일, 14:00 UTC
  • 10월 18일, 14:00 UTC - 10월 18일, 16:00 UTC
  • 11월 15일, 18:00 UTC - 11월 15일, 20:00 UTC
  • 11월 30일, 20:00 UTC - 11월 30일, 22:00 UTC
  • 12월 15일, 20:00 UTC - 12월 16일 00:00 UTC
  • 1월 5일, 10.00 UTC - 1월 5일, 14.00 UTC
  • 1월 13일, 12.00 UTC - 1월 13일, 16.00 UTC
  • 1월 18일, 14.00 UTC - 1월 18일, 18.00 UTC
  • 1월 24일, 16.00 UTC - 1월 24일, 20.00 UTC
  • 2월 1일, 18.00 UTC - 2월 1일, 22.00 UTC
  • 2월 7일, 16.00 UTC - 2월 7일, 22.00 UTC
  • 2월 13일, 14.00 UTC - 2월 13일, 22.00 UTC
  • 2월 21일, 10.00 UTC - 2월 21일, 22.00 UTC
  • 2월 28일, 10.00 UTC - 2월 28일, 22.00 UTC
  • 3월 6일, 00.00 UTC - 3월 7일, 00.00 UTC
  • 3월 13일, 00.00 UTC - 3월 14일, 00.00 UTC
  • 3월 21일, 00.00 UTC - 3월 22일, 00.00 UTC

다음 단계

참고

이러한 기능은 향후 2~3주 동안 출시될 예정입니다.

Azure DevOps로 이동하여 살펴보겠습니다.

피드백을 제공하는 방법

이러한 기능에 대해 어떻게 생각하는지 듣고 싶습니다. 도움말 메뉴를 사용하여 문제를 보고하거나 제안을 제공합니다.

제안하기

Stack Overflow에서 커뮤니티에서 조언과 질문에 답변할 수도 있습니다.

감사합니다,

아론 할버그