Buildskripts
Wichtig
Visual Studio App Center wird am 31. März 2025 eingestellt. Sie können Visual Studio App Center zwar weiterhin verwenden, bis es vollständig eingestellt ist, es gibt jedoch mehrere empfohlene Alternativen, zu denen Sie eine Migration in Betracht ziehen können.
Hinweis
Mithilfe von Buildskripts können Sie Ihre Builds anpassen. Probleme, die Sie während dieses Prozesses finden, gehen jedoch über den Bereich der App Center-Unterstützung hinaus. Wenn eines Ihrer Skripts fehlschlägt, meldet der gesamte Build einen Fehler, selbst wenn der primäre Build bis zu diesem Punkt erfolgreich war.
Sie können benutzerdefinierte Buildskripts hinzufügen, die während der Buildzeit in vordefinierten Phasen ausgeführt werden: post-clone, pre-build, post-build. Platzieren Sie die Skripts im unten angegebenen Format neben der Datei auf Projektebene (.xcodeproj
, .csproj
, .sln
oder ), diebuild.gradle
package.json
Sie in der Buildkonfiguration ausgewählt haben, und führen Sie sie als benutzerdefinierte Buildschritte aus.
In App Center basieren Nicht-UWP-Apps auf macOS, sodass sie Bash-Skripts verwenden können. UWP-Apps basieren auf Windows, sodass sie PowerShell-Skripts verwenden können. Viele ähnliche Aufgaben können in beiden Skriptformaten ausgeführt werden, aber Sie müssen möglicherweise eine Konvertierung durchführen, wenn Sie zwischen ihnen migrieren. Beispielsweise erfordert macOS Bash die Verwendung von UNIX-artigen Zeilenenden (LF).
Eine Sammlung von Buildskriptbeispielen finden Sie im dedizierten öffentlichen GitHub-Repository. Sie können die Beispielskripts verwenden, sie ändern oder neue Pull Requests mit Ihren nützlichsten Skripts für den Rest der Community übermitteln.
Warnung
Wenn App Center Buildskripts zum ersten Mal erkennt, wenn Sie den Speicherort von Skripts ändern oder den Speicherort von CocoaPods ändern; Sie müssen die Änderungen anwenden, indem Sie in der Buildkonfiguration auf die Schaltfläche Speichern oder speichern & Erstellen klicken. Wenn Sie dies tun, führt App Center eine Analyse aus, um Ihre Repositorystruktur zu indizieren, und aktualisiert die Builddefinition.
Nach dem Klonen
Das Skript nach dem Klonen wird unmittelbar nach dem Klonen des Repositorys ausgeführt, aber bevor wir etwas anderes auf unserer Seite tun.
Um Skripts nach dem Klonen auszuführen, fügen Sie die folgende Datei neben der Projektdatei in Ihrem Repository hinzu:
appcenter-post-clone.sh (Bash für iOS & Android)
#!/usr/bin/env bash # Example: Clone a required repository git clone https://github.com/example/SomeProject # Example: Install App Center CLI npm install -g appcenter-cli
appcenter-post-clone.ps1 (PowerShell für UWP)
Voraberstellung
Das Vorabbuildskript wird ausgeführt, bevor der eigentliche Build gestartet wird. Für React Native-Apps wird das Skript vor dem Generieren von Quellzuordnungen ausgeführt. Für andere Plattformen wird sie ausgeführt, nachdem Abhängigkeiten installiert wurden, z. B. von NuGet, CocoaPods oder Carthage.
Um skriptvorbuilds auszuführen, fügen Sie die folgende Datei neben der Projektdatei in Ihrem Repository hinzu:
appcenter-pre-build.sh (Bash für iOS & Android)
#!/usr/bin/env bash # Example: Change bundle name of an iOS app for non-production if [ "$APPCENTER_BRANCH" != "main" ]; then plutil -replace CFBundleDisplayName -string "\$(PRODUCT_NAME) Beta" $APPCENTER_SOURCE_DIRECTORY/MyApp/Info.plist fi
appcenter-pre-build.ps1 (PowerShell für UWP)
Nach dem Build
Das Skript nach dem Build wird ausgeführt, nachdem der Build abgeschlossen ist, und alle erforderlichen Artefakte in das Ausgabeverzeichnis kopiert. Das Skript nach dem Build wird auch dann ausgeführt, wenn der Build fehlschlägt.
Um Skripts nach dem Build auszuführen, fügen Sie die folgende Datei neben der Projektdatei im Repository hinzu:
appcenter-post-build.sh (Bash für iOS & Android)
if [ "$AGENT_JOBSTATUS" == "Succeeded" ]; then HOCKEYAPP_API_TOKEN={API_Token} HOCKEYAPP_APP_ID={APP_ID} # Example: Upload main branch app binary to HockeyApp using the API if [ "$APPCENTER_BRANCH" == "main" ]; then curl \ -F "status=2" \ -F "ipa=@$APPCENTER_OUTPUT_DIRECTORY/MyApps.ipa" \ -H "X-HockeyAppToken: $HOCKEYAPP_API_TOKEN" \ https://rink.hockeyapp.net/api/2/apps/$HOCKEYAPP_APP_ID/app_versions/upload else echo "Current branch is $APPCENTER_BRANCH" fi fi
appcenter-post-build.ps1 (PowerShell für UWP)
Umgebungsvariablen
Sie können vordefinierte, benutzerdefinierte oder skriptinterne Umgebungsvariablen verwenden, um Ihre Buildskripts zu schreiben. Weitere Informationen finden Sie im Leitfaden zu Umgebungsvariablen .