Azure Pipelines를 사용하여 App Configuration에서 설정 내보내기
Azure 앱 구성 내보내기 태스크는 App Configuration 저장소에서 키-값을 내보내고 후속 작업에서 사용할 수 있는 Azure 파이프라인 변수로 설정합니다. 이 작업은 구성 파일에서 App Configuration 저장소로 키 값을 가져오는 Azure 앱 구성 가져오기 작업을 보완합니다. 자세한 내용은 Azure Pipelines를 사용하여 App Configuration으로 설정 가져오기를 참조 하세요.
필수 조건
- Azure 구독 - 체험 구독 만들기
- App Configuration 저장소 - 무료로 만들기
- Azure DevOps 프로젝트 - 무료로 한 개 만들기
- 자체 호스팅 에이전트에서 작업을 실행하기 위한 Azure Pipelines 에이전트 버전 2.144.0 이상 및 노드 버전 16 이상.
서비스 연결 만들기
서비스 연결을 통해 Azure DevOps 프로젝트에서 Azure 구독의 리소스에 액세스할 수 있습니다.
Azure DevOps에서 대상 파이프라인이 포함된 프로젝트로 이동합니다. 왼쪽 하단에서 프로젝트 설정을 선택합니다.
파이프라인 아래에서 서비스 연결을 선택합니다. 오른쪽 상단에서 새 서비스 연결을 선택합니다.
새 서비스 연결에서 Azure Resource Manager를 선택합니다.
인증 방법 대화 상자에서 워크로드 ID 페더레이션(자동)을 선택하여 새 워크로드 ID 페더레이션을 만들거나 워크로드 ID 페더레이션(수동)을 선택하여 기존 워크로드 ID 페더레이션을 사용합니다.
구독, 리소스 그룹 및 서비스 연결 이름을 입력합니다.
새 서비스 주체를 만든 경우 서비스 연결에 할당된 서비스 주체의 이름을 찾습니다. 다음 단계에서 이 서비스 주체에 새 역할 할당을 추가합니다.
프로젝트 설정>서비스 연결로 이동합니다.
새 서비스 연결을 선택합니다.
서비스 주체 관리를 선택합니다.
표시 이름의 값을 확인합니다.
역할 할당 추가
작업이 App Configuration 저장소에 액세스할 수 있도록 작업 내에서 사용 중인 자격 증명에 적절한 App Configuration 역할 할당을 할당합니다.
대상 App Configuration 저장소로 이동합니다.
왼쪽 메뉴에서 액세스 제어(IAM)를 선택합니다.
오른쪽 창에서 역할 할당 추가를 선택합니다.
역할에서 App Configuration 데이터 읽기 권한자를 선택합니다. 이 역할은 App Configuration 저장소에서 읽기 작업을 허용합니다.
이전 섹션에서 만든 서비스 연결과 연관된 서비스 주체를 선택합니다.
검토 + 할당을 선택합니다.
저장소에 Key Vault 참조가 포함된 경우 관련 Key Vault로 이동하여 이전 단계에서 만든 서비스 주체에 Key Vault 비밀 사용자 역할을 할당합니다. Key Vault 메뉴에서 액세스 정책을 선택하고 Azure 역할 기반 액세스 제어가 권한 모델로 선택되었는지 확인합니다.
빌드에 사용
이 섹션에서는 Azure DevOps 빌드 파이프라인에서 Azure 앱 구성 내보내기 작업을 사용하는 방법을 설명합니다.
- 파이프라인>파이프라인을 클릭하여 빌드 파이프라인 페이지로 이동합니다. 빌드 파이프라인 설명서는 첫 번째 파이프라인 만들기를 참조하세요.
- 새 빌드 파이프라인을 만드는 경우 프로세스 마지막 단계의 검토 탭에 있는 파이프라인 오른쪽에서 도우미 표시를 선택합니다.
- 기존 빌드 파이프라인을 사용하는 경우 오른쪽 위에서 편집 단추를 클릭합니다.
- Azure 앱 구성 내보내기 태스크를 검색합니다.
- App Configuration 저장소에서 키-값을 내보내려면 작업에 필요한 매개 변수를 구성합니다. 매개 변수에 대한 설명은 매개 변수 섹션과 각 매개 변수 옆의 도구 설명에서 사용할 수 있습니다.
- Azure 구독 매개변수를 이전 단계에서 만든 서비스 연결의 이름으로 설정합니다.
- App Configuration 엔드포인트를 App Configuration 저장소의 엔드포인트로 설정합니다.
- 나머지 매개변수는 기본값을 그대로 둡니다.
- 빌드를 저장하고 큐에 넣습니다. 빌드 로그는 태스크를 실행하는 동안 발생한 모든 오류를 표시합니다.
릴리스에 사용
이 섹션에서는 Azure DevOps 릴리스 파이프라인에서 Azure 앱 구성 내보내기 작업을 사용하는 방법을 설명합니다.
- Pipelines>릴리스를 선택하여 릴리스 파이프라인 페이지로 이동합니다. 릴리스 파이프라인 설명서는 릴리스 파이프라인을 참조하세요.
- 기존 릴리스 파이프라인을 선택합니다. 아직 없으면 새 파이프라인을 클릭하여 새 항목을 만듭니다.
- 오른쪽 위 모서리에서 편집 단추를 선택하여 릴리스 파이프라인을 편집합니다.
- 작업 드롭다운에서 작업을 추가할 스테이지를 선택합니다. 스테이지에 대한 자세한 내용은 단계 추가, 종속성 및 조건에서 찾을 수 있습니다.
- 새 작업을 추가할 작업 옆의 +를 클릭합니다.
- Azure 앱 구성 내보내기 태스크를 검색합니다.
- App Configuration 저장소에서 키-값을 내보내려면 작업 내에서 필요한 매개 변수를 구성합니다. 매개 변수에 대한 설명은 매개 변수 섹션과 각 매개 변수 옆의 도구 설명에서 사용할 수 있습니다.
- Azure 구독 매개변수를 이전 단계에서 만든 서비스 연결의 이름으로 설정합니다.
- App Configuration 엔드포인트를 App Configuration 저장소의 엔드포인트로 설정합니다.
- 나머지 매개변수는 기본값을 그대로 둡니다.
- 릴리스를 저장하고 큐에 넣습니다. 릴리스 로그는 태스크를 실행하는 동안 발생한 모든 오류를 표시합니다.
매개 변수
다음 매개 변수는 Azure 앱 구성 내보내기 태스크에서 사용됩니다.
- Azure 구독: 사용 가능한 Azure 서비스 연결이 포함된 드롭다운입니다. 사용 가능한 Azure 서비스 연결 목록을 업데이트하고 새로 고치려면 텍스트 상자 오른쪽에서 Azure 구독 새로 고침 단추를 누릅니다.
- App Configuration 엔드포인트: 선택한 구독 아래에서 사용 가능한 구성 저장소 엔드포인트를 로드하는 드롭다운입니다. 사용 가능한 구성 저장소 엔드포인트 목록을 업데이트하고 새로 고치려면 텍스트 상자 오른쪽에서 App Configuration 엔드포인트 새로 고침 단추를 누릅니다.
- 선택 모드: 구성 저장소에서 읽은 키-값이 선택되는 방법을 지정합니다. '기본' 선택 모드에서는 키 및 레이블 필터를 사용할 수 있습니다. '스냅샷' 선택 모드를 사용하면 스냅샷에서 키-값을 선택할 수 있습니다. 기본값은 기본값입니다.
- 키 필터: 필터를 사용하여 Azure App Configuration에서 요청된 키-값을 선택할 수 있습니다. 값 *은(는) 모든 키-값을 선택합니다. 자세한 내용은 키-값 쿼리를 참조 하세요.
- 레이블: App Configuration 저장소에서 키-값을 선택할 때 사용할 레이블을 지정합니다. 레이블이 제공되지 않으면 레이블이 없는 키 값이 검색됩니다. 다음 문자는 허용되지 않습니다.
- 스냅샷 이름: Azure App Configuration에서 키-값을 검색해야 하는 스냅샷을 지정합니다.
- 키 접두사 자르기: 변수로 설정하기 전 App Configuration 키에서 잘라야 하는 하나 이상의 접두사를 지정합니다. 새 줄 문자를 사용하여 여러 접두사를 구분할 수 있습니다.
- 재정의된 키에 대한 경고 표시 안 함: 기본값은 선택 취소되어 있습니다. 기존 키가 재정의될 때 경고를 표시할지 여부를 지정합니다. App Configuration에서 다운로드한 키 값에 파이프라인 변수에 있는 키와 겹치는 키가 있을 것으로 예상되는 경우 이 옵션을 사용하도록 설정합니다.
후속 작업에서 키-값 사용
App Configuration에서 가져온 키-값은 환경 변수로 액세스할 수 있는 파이프라인 변수로 설정됩니다. 환경 변수의 키는 지정된 경우 접두사를 자른 후 App Configuration에서 검색되는 키-값의 키입니다.
예를 들어 후속 작업이 PowerShell 스크립트를 실행할 경우 다음과 같이 'myBuildSetting' 키에 키-값을 사용할 수 있습니다.
echo "$env:myBuildSetting"
그리고 값이 콘솔에 인쇄됩니다.
참고 항목
App Configuration 내의 Azure Key Vault 참조가 확인되고 비밀 변수로 설정됩니다. Azure 파이프라인에서 비밀 변수는 로그에서 마스킹되어 표시됩니다. 이러한 변수는 작업으로 환경 변수로 전달되지 않으며 대신 입력으로 전달되어야 합니다.
문제 해결
예기치 않은 오류가 발생하면 파이프라인 변수 system.debug
를 true
로 설정하여 디버그 로그를 사용하도록 설정할 수 있습니다.
FAQ
여러 키 및 레이블로부터 내 구성을 만들려면 어떻게 할까요?
일부 경우에 따라 default 및 dev와 같은 여러 레이블로부터 구성을 만들어야 할 수 있습니다. 이러한 시나리오를 구현하기 위해 하나의 파이프라인에 여러 App Configuration 작업을 사용할 수 있습니다. 이후 단계에서 태스크에서 가져온 키 값은 이전 단계의 모든 값을 대체합니다. 앞에 설명한 예제에서는 하나의 작업으로 default 레이블의 키-값을 선택할 수 있지만 두 번째 작업에서는 dev 레이블의 키-값을 선택할 수 있습니다. 개발 레이블이 있는 키는 기본 레이블로 동일한 키를 재정의합니다.
다음 단계
매개 변수에 대한 전체 참조 또는 YAML 파이프라인에서 이 파이프라인 작업을 사용하려면 다음 문서를 참조하세요.
구성 파일에서 App Configuration 저장소로 키-값을 가져오는 방법을 알아보려면 다음 문서를 계속 진행합니다.
App Configuration 저장소에서 스냅샷을 만드는 방법을 알아보려면 다음 문서를 계속 진행합니다.