Azure Piperlines를 통해 Xamarin iOS 애플리케이션을 구축한 후 AppCenter로 전송(배포 편)

개시하다


Azure Piperlines 를 사용하시겠습니까?최근 기릿허브 액션스에서 뒤처진 느낌은 부인할 수 없지만, 멀티스테이지 인정 기능 등을 활용해 사실상 편하게 활용할 수 있다.이번에는 Xamarin 입니다.Forms에 설치된 iOS 애플리케이션을 구축하기 위해 Azure Piperlines를 조립해 보았습니다.구축 결과를 AppCenter에 전송하고 테스트 배포를 수행합니다.
모두 한 문장으로 만들면 길기 때문에 구축과 테스트 배포 두 가지로 나뉜다.이 보도는 후편의 배포편이다.
"nonbiri"라고 쓰여 있으면 GiitHub Action도 인정 처분을 받은 것 같고, 마음에 들면 지는 것 같아요.span>

컨디션

  • Visual Studio 2019 (16.8)
  • Xamarin iOS 14.4
  • mono 6.12
  • XCode 12.2
  • 이번에 시도한 물건은 여기에 두어라.
    https://github.com/noxi515/pipeline-sample-xamarin-ios

    YAML 전체 구성


    이전 기사에서 작성한 Xamarin iOS 애플리케이션이 AppCenter에 전송한 Piperline YAML은 전체적으로 다음과 같습니다.실제로 구축되고 배포되는 다중 무대 구성이므로 GiitHub의 YAML을 참조하십시오.
    variables:
      AppCenterAppSlug: 'AppCenterの識別名 "チーム名/アプリ名" '
    
    pool:
      vmImage: 'ubuntu-latest' # 何でも良い
    
    steps:
    
      # Pipeline Artifacts をダウンロード
      - download: current
    
      # AppCenter へビルドしたアプリを配信
      - task: AppCenterDistribute@3
        displayName: 'Distribute to AppCenter'
        inputs:
          serverEndpoint: 'AppCenterConnection'
          appSlug: '$(AppCenterAppSlug)'
          appFile: '$(Pipeline.Workspace)/drop/SampleApp.iOS.ipa'
          releaseNotesOption: 'input'
          releaseNotesInput: '$(Build.SourceVersionMessage)'
          destinationType: 'groups'
          isSilent: false
    

    Azure Pipeline Tasks


    download

    downloadDownload Pipeline Artifact 퀘스트의 단축키입니다.문서에 설명된 대로 이 단축키$(Pipeline.Workspace)/를 사용하여 Piperline Artifacts를 다운로드합니다.디자인 작업이라면 Piperline Artifacts를 자동으로 가져다 줄 것 같지만 일반적인 작업은 수동적인 부분에 주의해야 한다.
    https://docs.microsoft.com/ja-jp/azure/devops/pipelines/yaml-schema?view=azure-devops&tabs=schema%2Cparameter-schema#download

    AppCenterDistribute@3


    구축 과정에서 생성된 *.ipa 파일을 AppCenter에 보내서 AppCenter가 나누어 주는 작업을 제공합니다.이 작업을 사용하려면 AppCenter에서 받은 토큰에 따라 Service Connection을 생성해야 합니다.또한 AppCenter의 애플리케이션 로그인을 {userName}/{appName} 형식appSlug으로 설정합니다.선행 작업에서 Pipeline Artifacts에서 ipa 파일을 다운로드했기 때문에appFile 다운로드할 파일의 경로를 지정합니다.
    그리고 좀 번거로운 것은 AppCenter에 등록된 발표 노트 정보가 있어야 한다는 것이다.발행 노트의 지정 사용releaseNotesOptionreleaseNotesInput 또는releaseNotesFile.샘플에는 구축 대상이 제출한 메시지를 저장하는 고정된 Azure PiperlinesBuild.SourceVersionMessage 환경 변수가 지정되어 있습니다.
    https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/app-center-distribute?view=azure-devops
    task: AppCenterDistribute@3
    inputs:
      serverEndpoint: 'AppCenterConnection'
      appSlug: '$(AppCenterAppSlug)'
      appFile: '$(Pipeline.Workspace)/drop/SampleApp.iOS.ipa'
      releaseNotesOption: 'input'
      releaseNotesInput: '$(Build.SourceVersionMessage)'
      destinationType: 'groups'
      isSilent: false
    

    AppCenter ServiceConnection


    다음은 AppCenter에 필요한 ServiceConnection을 보내는 등록 방법입니다.먼저 프로젝트 설정 화면에서 ServiceConnection을 선택하여 새로 제작합니다.유형 선택Visual Studio App Center.선택한 설정값은 표를 참조하십시오.
    구성 이름
    값 설정
    Server URL
    (원래 값에서 변경되지 않음)
    API Token
    AppCenter 설정 화면FullAccess에서 역할 영역에서 출력하는 토큰 키
    Service connection name
    AppCenter Distribute 작업serverEndpoint에 지정된 이름
    Description
    입맛대로

    좋은 웹페이지 즐겨찾기