경로 제외 규칙을 사용하여 유효성 검사 실행에 대한 중립 상태 GitHub에 게시

이 업데이트를 통해 Azure Pipelines에 대한 여러 업데이트를 포함했습니다. YAML 파이프라인에서는 보호된 리소스에 대한 기본값으로 모든 파이프라인에 대한 거부 액세스를 설정합니다. 또한 Azure Pipelines는 경로 제외 규칙 때문에 유효성 검사 빌드를 실행하지 않기로 결정할 때 중립 상태 GitHub에 다시 게시합니다.

자세한 내용은 다음 기능 설명을 확인하세요.

참고

2021년 9월 28일, Azure DevOps는 인기 있는 git GUI 클라이언트인 GitKraken의 종속성에서 Axosoft에 취약성을 알렸습니다. 자세한 내용은 블로그 게시물을 확인하세요.

Azure Pipelines

Azure Pipelines

빌드를 건너뛸 때 중립 상태 GitHub에 게시

Azure Pipelines를 사용하면 항상 GitHub에서 끌어오기 요청의 유효성을 검사할 수 있습니다. GitHub 리포지토리에서 파이프라인을 트리거할 경로를 지정할 수도 있습니다. instance 경우 다음 파이프라인은 분기에서 main 변경 내용이 푸시될 code 때 트리거되지만 변경 내용이 폴더에 docs 푸시될 때 트리거되지 않습니다.

trigger: none

pr:
 branches:
   include:
     - main
 paths:
   include:
     - code
   exclude:
     - docs

pool:
  vmImage: ubuntu-latest

steps:
- script: echo Hello, world!
  displayName: 'Run a one-line script'

파이프라인이 완료되면 Azure Pipelines는 상태 GitHub에 다시 게시합니다. GitHub 리포지토리에 대한 분기 보호 정책이 적용된 경우 Azure Pipelines에서 게시한 상태 끌어오기 요청이 병합될지 여부를 결정했습니다.

위의 예제에서 를 변경docs한 경우 GitHub는 현재 Azure Pipelines에서 상태 반환되기를 기다리는 끌어오기 요청을 차단합니다. 그러나 Azure Pipelines는 해당 경로가 트리거에서 제외되므로 유효성 검사 빌드를 실행하지 않으므로 끌어오기 요청을 완료할 수 없습니다. 단일 GitHub 리포지토리에 대한 경로 제외 트리거 또는 여러 파이프라인을 설정하는 고객은 종종 이 문제에 직면했습니다.

앞으로 Azure Pipelines는 경로 제외 규칙으로 인해 유효성 검사 빌드를 실행하지 않기로 결정할 때 상태 GitHub에 다시 게시 neutral 합니다. 이렇게 하면 Azure Pipelines가 처리를 완료했음을 나타내는 GitHub에 대한 명확한 방향을 제공합니다.

대화 보기:

대화 보기

세부 정보 확인:

세부 정보 확인

모든 파이프라인에 대한 액세스는 보호된 리소스에서 기본적으로 꺼져 있습니다.

YAML 파이프라인은 하나 이상의 보호된 리소스를 사용할 수 있습니다. 이러한 리소스의 관리자는 해당 리소스에 대한 액세스 권한이 있는 파이프라인을 제어할 수 있으므로 서비스 연결, 에이전트 풀, 변수 그룹, 보안 파일 및 리포지토리는 모두 보호된 리소스의 예입니다. 관리자는 리소스의 보안 설정 패널을 사용하여 파이프라인을 사용하거나 사용하지 않도록 설정합니다.

이러한 리소스 중 하나를 만들 때 명시적으로 해제하지 않는 한 기본 환경은 모든 파이프라인에 대한 액세스 권한을 부여합니다. 전반적인 보안 태세를 개선하기 위해 모든 파이프라인에 대한 액세스를 거부하도록 기본값이 설정됩니다. 모든 파이프라인에 대한 액세스 권한을 부여하려면 만들기 환경 또는 리소스를 만든 후 토글을 켜기만 하면 됩니다.

새 Azure 서비스 연결

데코레이터를 사용하여 지정된 대상 작업 전후에 태스크 삽입

데코레이터 는 파이프라인에 작업을 자동으로 삽입하는 방법입니다. 일반적으로 organization 중앙 팀에서 필요한 규정 준수 절차를 자동으로 실행하는 데 사용됩니다. 데코레이터는 클래식 빌드, 클래식 릴리스 또는 YAML 파이프라인과 함께 사용할 수 있습니다.

현재 작업은 모든 작업의 시작 부분에서, 모든 작업의 끝에서 또는 검사 아웃 작업 직후에 데코레이터를 통해 삽입할 수 있습니다. 이를 제어하려면 여기에 설명된 대로 데코레이터 확장의 기여 섹션에서 을 지정 target합니다. 이제 다음을 포함하도록 대상 목록을 확장하고 있습니다.

ms.azure-pipelines-agent-job.pre-task-tasks
ms.azure-pipelines-agent-job.post-task-tasks
ms.azure-release-pipelines-agent-job.pre-task-tasks
ms.azure-release-pipelines-agent-job.post-task-tasks

다음은 작업의 모든 instance 파이프라인에 태스크를 삽입하는 PublishPipelineArtifacts 데코레이터의 예입니다.

{
    "manifestVersion": 1,
    "contributions": [
        {
            "id": "my-required-task",
            "type": "ms.azure-pipelines.pipeline-decorator",
            "targets": [
                "ms.azure-pipelines-agent-job.pre-task-tasks"
            ],
            "properties": {
                "template": "my-decorator.yml",
                "targettask": "ECDC45F6-832D-4AD9-B52B-EE49E94659BE"
            }
        }
    ],
    "files": [
        {
            "path": "my-decorator.yml",
            "addressable": true,
            "contentType": "text/plain"
        }
    ]
}

Windows 2016 호스팅 이미지의 사용 중단 일정 발표

최근에 Windows 2022를 호스트된 이미지로 사용할 수 있게 했습니다. 2022년 1월에 Windows 2016에 대한 일반 지원이 종료될 예정이므로 11 15일부터 이미지를 더 이상 사용하지 vs2017-win2016 않습니다. 이 이미지의 전체 사용 중지는 2022년 3월에 예정되어 있습니다. 일반적으로 사용되는 이미지이므로 파이프라인을 변경하는 데 필요한 충분한 알림과 시간을 제공하고자 했습니다.

Windows 2016 호스팅 이미지를 사용하여 모든 프로젝트 및 파이프라인을 찾는 방법과 최신 버전으로 마이그레이션하기 위해 수행할 수 있는 단계를 자세히 설명하는 블로그 게시물을 참조하세요.

macOS 10.14 호스팅 이미지의 사용 중단 발표

최근에 macOS-11을 호스트된 이미지로 사용할 수 있게 했습니다. 따라서 2021년 12월에 macOS-10.14 이미지를 더 이상 사용하지 않습니다. 이 이미지를 사용하는 빌드는 사용되지 않으면 실패합니다. 블로그 게시물에서 다양한 이미지의 사용 중단에 대한 자세한 내용을 확인할 수 있습니다.

다음 단계

참고

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

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

피드백을 제공하는 방법

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

제안하기

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

감사합니다,

비제이 마키라주