CI/CD 파이프라인 구성

완료됨

템플릿을 만들고 Azure에서 해당 리소스를 프로비전했습니다. 그러나 이전 워크플로에서는 사용자 환경에 변경 내용을 적용하기 위해 수동 명령을 사용했습니다. 또한 시작 템플릿은 CI/CD 파이프라인을 GitHub Actions 또는 Azure Pipelines와 함께 사용하여 이 프로세스를 더욱 자동화할 수 있는 구성 파일을 제공할 수도 있습니다. CI/CD 파이프라인을 구성하면 변경 내용을 커밋하고 GitHub에 푸시하기만 하면 Azure 환경을 최신 변경 내용을 이용해 자동으로 업데이트할 수 있습니다.

파이프라인 구성

대부분의 azd 템플릿에는 GitHub Actions.github 폴더 또는 Azure Pipelines.azdo 폴더(또는 둘 다)에 CI/CD 워크플로 파일을 포함되어 있습니다. 이 모듈에서 만든 샘플 템플릿은 둘 다로 초기화되었습니다. 이러한 워크플로 파일은 해당 플랫폼에 대한 표준 구조를 사용하므로 CI/CD 워크플로 구성에 대한 심층적인 탐색은 이 모듈의 범위를 넘어설 수 있습니다. 그러나 azd에서는 워크플로 구성 파일을 사용하는 간단한 명령 뒤에 있는 대부분의 작업을 추상화하기 때문에 이 모듈을 완료하기 위해 GitHub Actions 또는 Azure Pipelines를 깊이 이해할 필요는 없습니다.

CI/CD 파이프라인을 구성하는 azd 명령 및 워크플로는 GitHub Actions 또는 Azure Pipelines를 선택하든 여부에 관계없이 동일합니다. CI/CD를 설정하려면 GitHub 리포지토리가 필요합니다. 원래 azd 템플릿 리포지토리를 포크하고 원격으로 설정하여 새 리포지토리를 만들거나, 파이프라인 구성 프로세스 중에 azd를 사용하여 리포지토리를 만들 수 있습니다. 이 예제에서는 후자를 사용합니다.

템플릿의 CI/CD 파이프라인을 구성하려면 다음 단계를 완료합니다.

  1. 프로젝트 루트 디렉터리로 설정된 명령 프롬프트에서 다음 명령을 실행합니다.

    azd pipeline config
    
  2. GitHub 원본이 프로젝트에 설정되지 않은 경우, azd에서는 원격 리포지토리 구성 방법을 질문합니다. 새 프라이빗 GitHub 리포지토리 만들기 옵션을 선택한 다음, 새 리포지토리의 이름을 입력합니다. azd는 다음 작업을 완료합니다.

    • GitHub 리포지토리를 만들고 프로젝트 코드를 리포지토리에 커밋합니다.
    • Azure 구독에서 앱에 대한 서비스 주체를 만들고 구성합니다.
    • 서비스 주체와 GitHub 비밀을 사용하여 Azure와 리포지토리 간의 보안 연결을 구성합니다.
  3. 또한 azd에서 로컬 변경 내용을 커밋하고 구성된 파이프라인에 푸시할지를 질문합니다. 를 입력하고 작업이 끝날 때까지 기다립니다.

  4. 콘솔에서 출력 URL을 선택하여 새 GitHub 리포지토리에 대한 브라우저 탭을 엽니다.

  5. 작업 탭으로 이동하여 코드를 인증, 패키지, 프로비전 및 배포할 워크플로를 찾습니다. 워크플로는 이전에 사용한 것과 동일한 azd auth login, azd provisionazd deploy 명령을 사용합니다. 프로젝트의 .github 폴더에서 이 워크플로의 세부 정보를 탐색할 수 있습니다.

    A screenshot showing a GitHub actions workflow running.

파이프라인이 구성되면 코드 변경 내용을 GitHub에 푸시하여 Azure 환경 및 배포된 앱을 지속적으로 업데이트할 수 있습니다. 이전 단계에서 한 것처럼 azd 명령을 로컬로 계속 실행할 수도 있습니다.