Skip to main content

Création et test des applications Xamarin

Vous pouvez créer un workflow d’intégration continue (CI) dans GitHub Actions pour générer et tester votre application Xamarin.

Introduction

Ce guide explique comment créer un workflow qui effectue une intégration continue (CI) pour votre projet Xamarin. Le workflow que vous créez vous permet de voir à quel moment les commits de demande de tirage (pull request) entraînent des échecs de build ou de test dans votre branche par défaut. Cette approche peut vous aider à garantir l’intégrité de votre code.

Pour obtenir la liste complète des versions du SDK Xamarin disponibles sur les exécuteurs macOS hébergés par GitHub Actions, consultez le fichier README de la version de macOS que vous souhaitez utiliser dans le dépôt GitHub Actions Runner Images.

Prérequis

Il est recommandé d’avoir une compréhension de base de Xamarin, du SDK .NET Core, du YAML, des options de configuration de workflows et de la création de fichiers de workflow. Pour plus d'informations, consultez les pages suivantes :

Création d’applications Xamarin.iOS

L’exemple ci-dessous montre comment modifier les versions du SDK Xamarin par défaut et générer une application Xamarin.iOS.

name: Build Xamarin.iOS app

on: [push]

jobs:
  build:

    runs-on: macos-latest

    steps:
    - uses: actions/checkout@v4
    - name: Set default Xamarin SDK versions
      run: |
        $VM_ASSETS/select-xamarin-sdk-v2.sh --mono=6.12 --ios=14.10
    
    - name: Set default Xcode 12.3
      run: |
        XCODE_ROOT=/Applications/Xcode_12.3.0.app
        echo "MD_APPLE_SDK_ROOT=$XCODE_ROOT" >> $GITHUB_ENV
        sudo xcode-select -s $XCODE_ROOT

    - name: Setup .NET Core SDK 5.0.x
      uses: actions/setup-dotnet@v3
      with:
        dotnet-version: '5.0.x'

    - name: Install dependencies
      run: nuget restore <sln_file_path>

    - name: Build
      run: msbuild <csproj_file_path> /p:Configuration=Debug /p:Platform=iPhoneSimulator /t:Rebuild

Création d’applications Xamarin.Android

L’exemple ci-dessous montre comment modifier les versions du SDK Xamarin par défaut et générer une application Xamarin.Android.

name: Build Xamarin.Android app

on: [push]

jobs:
  build:

    runs-on: macos-latest

    steps:
    - uses: actions/checkout@v4
    - name: Set default Xamarin SDK versions
      run: |
        $VM_ASSETS/select-xamarin-sdk-v2.sh --mono=6.10 --android=10.2

    - name: Setup .NET Core SDK 5.0.x
      uses: actions/setup-dotnet@v3
      with:
        dotnet-version: '5.0.x'

    - name: Install dependencies
      run: nuget restore <sln_file_path>

    - name: Build
      run: msbuild <csproj_file_path> /t:PackageForAndroid /p:Configuration=Debug

Spécification d’une version .NET

Pour utiliser une version préinstallée du SDK .NET Core sur un exécuteur hébergé dans GitHub, utilisez l’action setup-dotnet. Cette action recherche une version spécifique de .NET à partir du cache d’outils de chaque exécuteur, et ajoute les fichiers binaires nécessaires à PATH. Ces modifications seront conservées pendant toute la durée du travail.

L’action setup-dotnet est recommandée pour l’utilisation de .NET avec GitHub Actions, car cela garantit un comportement cohérent sur tous les exécuteurs et toutes les versions de .NET. Si vous utilisez un exécuteur auto-hébergé, vous devez installer .NET et l’ajouter à PATH. Pour plus d’informations, consultez l’action setup-dotnet.