Guide

Nouvelles mises à jour et améliorations de Roundfleet.

Avis important

Les exemples de code et scripts fournis dans ces tutoriels sont uniquement à des fins éducatives. Roundfleet n'est pas responsable des problèmes, dommages ou vulnérabilités de sécurité qui pourraient survenir lors de l'utilisation, modification ou implémentation de ces exemples. Toujours vérifier et tester le code dans un environnement sécurisé avant de l'utiliser dans des systèmes de production.

Configuration d'un Runner GitHub Actions sur Mac Mini (Apple Silicon)

GitHub Actions runner

GitHub Actions est une plateforme CI/CD puissante qui vous permet d'automatiser vos workflows de développement logiciel. Bien que GitHub propose des runners hébergés, les runners auto-hébergés offrent un contrôle et une personnalisation accrus pour votre configuration CI/CD. Ce tutoriel vous guide dans la configuration, la mise en place et la connexion d'un runner auto-hébergé sur un Mac Mini pour exécuter des pipelines macOS.

Prérequis

Avant de commencer, assurez-vous d'avoir :

  • Un Mac Mini (inscrivez-vous sur Roundfleet)
  • Un dépôt GitHub avec des droits d'administrateur
  • Un gestionnaire de paquets installé (de préférence Homebrew)
  • Git installé sur votre système

Étape 1 : Créer un compte utilisateur dédié

D'abord, créez un compte utilisateur dédié pour le runner GitHub Actions :

# Créer le compte utilisateur 'gh-runner'
sudo dscl . -create /Users/gh-runner
sudo dscl . -create /Users/gh-runner UserShell /bin/bash
sudo dscl . -create /Users/gh-runner RealName "GitHub runner"
sudo dscl . -create /Users/gh-runner UniqueID "1001"
sudo dscl . -create /Users/gh-runner PrimaryGroupID 20
sudo dscl . -create /Users/gh-runner NFSHomeDirectory /Users/gh-runner

# Définir le mot de passe pour l'utilisateur
sudo dscl . -passwd /Users/gh-runner votre_mot_de_passe

# Ajouter 'gh-runner' au groupe 'admin'
sudo dscl . -append /Groups/admin GroupMembership gh-runner

Basculez vers le nouveau compte utilisateur :

su gh-runner

Étape 2 : Installer les logiciels requis

Installez Git et Rosetta 2 (si vous utilisez Apple Silicon) :

# Installer Git s'il n'est pas déjà installé
brew install git

# Installer Rosetta 2 pour les Mac Apple Silicon
softwareupdate --install-rosetta

Étape 3 : Configurer le Runner GitHub Actions

  1. Allez sur votre dépôt GitHub
  2. Naviguez vers Settings > Actions > Runners

GitHub Actions runner

  1. Cliquez sur "New self-hosted runner" (https://github.com/<nom_utilisateur>/<dépôt>/settings/actions/runners/new)
  2. Sélectionnez macOS comme image de runner et ARM64 comme architecture
  3. Suivez les commandes fournies pour télécharger et configurer le runner

GitHub Actions runner

Créez un fichier .env dans le répertoire _work du runner :

# Fichier _work/.env
ImageOS=macos15
XCODE_15_DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer
  1. Exécutez le script run.sh dans votre répertoire de runner pour terminer la configuration.
  2. Vérifiez que le runner est actif et écoute les tâches dans le terminal et vérifiez les paramètres du dépôt GitHub pour l'association du runner et le statut Idle.

GitHub Actions runner

Étape 4 : Configurer Sudoers (Optionnel)

Si vos actions nécessitent des privilèges root, configurez le fichier sudoers :

sudo visudo

Ajoutez la ligne suivante :

gh-runner ALL=(ALL) NOPASSWD: ALL

Étape 5 : Utiliser le Runner dans les Workflows

Configurez votre workflow GitHub Actions pour utiliser le runner auto-hébergé :

name: Workflow exemple

on:
  workflow_dispatch:

jobs:
  build:
    runs-on: [self-hosted, macOS, ARM64]
    steps:
      - name: Installer NodeJS
        run: brew install node

Le runner est authentifié sur votre dépôt et étiqueté avec self-hosted, macOS, et ARM64. Utilisez-le dans vos workflows en spécifiant ces étiquettes dans le champ runs-on :

runs-on: [self-hosted, macOS, ARM64]

Bonnes Pratiques

  • Maintenez votre logiciel de runner à jour
  • Surveillez régulièrement les logs du runner pour détecter les problèmes
  • Utilisez des étiquettes spécifiques pour différents types de runners
  • Implémentez des mesures de sécurité appropriées
  • Considérez l'utilisation de plusieurs runners pour l'équilibrage de charge

Dépannage

Problèmes courants et solutions :

  1. Runner ne se connecte pas :

    • Vérifiez la connectivité réseau
    • Vérifiez la validité du token GitHub
    • Assurez-vous des permissions appropriées
  2. Échecs de build :

    • Vérifiez l'installation de Xcode
    • Vérifiez les dépendances requises
    • Examinez les logs du workflow
  3. Problèmes de permissions :

    • Vérifiez les permissions utilisateur
    • Vérifiez la configuration sudoers
    • Examinez les permissions du système de fichiers

Conclusion

Vous avez maintenant un runner GitHub Actions auto-hébergé configuré sur votre Mac Mini. Cette configuration vous donne plus de contrôle sur votre environnement CI/CD et vous permet d'exécuter efficacement des workflows spécifiques à macOS.

N'oubliez pas de maintenir régulièrement votre runner et de le tenir à jour avec les derniers correctifs de sécurité et versions de logiciels.

Related Tutorials

Gestion Rosetta 2 et Compatibilité Apple Silicon sur macOS

Apprenez à installer, gérer et surveiller la couche traduction Rosetta 2 sur Mac Apple Silicon avec gestion compatibilité niveau entreprise, surveillance applications et capacités déploiement flotte.

7 juil. 2025

Gérer les extensions de noyau sur macOS

Apprenez à afficher, charger, décharger et surveiller les extensions de noyau (kexts) sur les appareils macOS via des scripts en ligne de commande pour une gestion système et sécurité améliorées.

7 juil. 2025

Gestion des Images Disque sur macOS

Apprenez à créer, gérer et déployer des images disque à partir de dossiers sur les appareils macOS en utilisant hdiutil pour l'empaquetage de données d'entreprise, la distribution et les workflows de déploiement système.

7 juil. 2025

Gestion et Sécurité des Extensions Chrome sur macOS

Apprenez à découvrir, analyser et gérer les extensions Google Chrome sur les appareils macOS, implémenter des politiques de sécurité et surveiller la conformité des extensions de navigateur pour la sécurité d'entreprise.

7 juil. 2025

Application Native

Roundfleet est une application native pour Mac, Windows et Linux.

14 mai 2025

Gestion de Réseau Wi-Fi sur macOS

Gérez les réseaux Wi-Fi, configurez les paramètres proxy, serveurs DNS et implémentez les politiques de réseau d'entreprise sur les appareils macOS en utilisant les commandes networksetup avancées et la gestion de flotte centralisée.

7 juil. 2025

Gestion Entreprise de Création Utilisateur sur macOS

Guide complet pour le provisioning utilisateur et gestion du cycle de vie en entreprise sur les appareils Roundfleet avec workflows automatisés, contrôles de sécurité et processus standardisés de création utilisateur.

7 juil. 2025

Gestion des Comptes Utilisateurs sur macOS

Apprenez à créer, gérer et configurer les comptes utilisateurs sur les appareils macOS en utilisant les outils en ligne de commande. Guide complet pour la création d'utilisateurs administrateurs et standards, politiques de mots de passe et gestion d'utilisateurs en entreprise.

7 juil. 2025