Ă propos de GitHub Actions pour les entreprises
GitHub Actions est une plateforme dâintĂ©gration continue et livraison continue (CI/CD) qui vous permet dâautomatiser votre pipeline de gĂ©nĂ©ration, de test et de dĂ©ploiement. Avec GitHub Actions, votre entreprise peut automatiser, personnaliser et exĂ©cuter vos workflows de dĂ©veloppement logiciel comme les tests et les dĂ©ploiements. Pour plus dâinformations, consultez « à propos de GitHub Actions pour les entreprises ».
Avant dâintroduire GitHub Actions dans une grande entreprise, il est nĂ©cessaire de dâabord Ă©tablir un plan dâadoption et de prendre des dĂ©cisions sur la maniĂšre dont lâentreprise va utiliser GitHub Actions pour rĂ©pondre aux mieux Ă ses besoins uniques.
Gouvernance et conformité
Vous devez Ă©tablir un plan pour rĂ©gir lâutilisation de GitHub Actions dans votre entreprise et satisfaire vos obligations de conformitĂ©.
Identifiez les actions que vos dĂ©veloppeurs seront autorisĂ©s Ă utiliser. Tout dâabord, dĂ©cidez de permettre ou non lâaccĂšs aux actions de lâextĂ©rieur de votre instance. Dans votre entreprise, si les utilisateurs ont besoin dâaccĂ©der Ă dâautres actions de GitHub.com ou GitHub Marketplace, il existe quelques options de configuration. Pour plus dâinformations, consultez « à propos de lâutilisation dâactions dans votre entreprise ».
Ensuite, dĂ©cidez ou non dâautoriser des actions tierces qui nâont pas Ă©tĂ© crĂ©Ă©(e)s par GitHub. Vous pouvez configurer les actions qui sont autorisĂ©(e)s Ă sâexĂ©cuter aux niveaux du dĂ©pĂŽt, de lâorganisation et de lâentreprise et choisir dâautoriser uniquement les actions qui sont crĂ©Ă©es par GitHub. Si vous autorisez des actions tierces, vous pouvez limiter les actions autorisĂ©es Ă celles qui ont Ă©tĂ© crĂ©Ă©es par des crĂ©ateurs vĂ©rifiĂ©s ou Ă une liste dâactions spĂ©cifiques.
Pour plus dâinformations, consultez « Gestion des paramĂštres de GitHub Actions pour un dĂ©pĂŽt », « DĂ©sactivation ou limitation de la fonctionnalitĂ© GitHub Actions pour votre organisation » et « Application de stratĂ©gies pour GitHub Actions dans votre entreprise ».
Envisagez de combiner OpenID Connect (OIDC) avec des flux de travail rĂ©utilisables pour mettre en Ćuvre des dĂ©ploiements cohĂ©rents dans votre rĂ©fĂ©rentiel, votre organisation ou votre entreprise. Pour cela, vous pouvez dĂ©finir des conditions dâapprobation au niveau de rĂŽles cloud en fonction de workflows rĂ©utilisables. Pour plus dâinformations, consultez « Utilisation dâOpenID Connect avec des workflows rĂ©utilisables ».
Vous pouvez accĂ©der Ă des informations sur lâactivitĂ© relative Ă GitHub Actions dans les journaux dâaudit de votre entreprise. Si vos besoins mĂ©tier nĂ©cessitent de conserver ces informations plus longtemps que les donnĂ©es des journaux dâaudit, rĂ©flĂ©chissez Ă la façon dont vous allez exporter et stocker ces donnĂ©es en dehors de GitHub. Pour plus d'informations, voir Streaming de journaux dâaudit pour votre entreprise et Transfert de journaux.
Sécurité
Vous devez réfléchir à votre approche pour renforcer la sécurité de GitHub Actions.
Renforcement de la sécurité des différents workflows et dépÎts
Ătablissez un plan pour renforcer les bonnes pratiques de sĂ©curitĂ© pour les personnes qui utilisent les fonctionnalitĂ©s de GitHub Actions au sein de votre entreprise. Pour plus dâinformations sur ces pratiques, consultez « Durcissement de la sĂ©curitĂ© pour GitHub Actions ».
Vous pouvez aussi encourager la rĂ©utilisation des workflows qui ont dĂ©jĂ Ă©tĂ© Ă©valuĂ©s sur la plan de la sĂ©curitĂ©. Pour plus dâinformations, consultez « Sourcing interne ».
SĂ©curisation de lâaccĂšs aux secrets et aux ressources de dĂ©ploiement
Vous devez prĂ©voir oĂč vous allez stocker vos secrets. Nous vous recommandons de stocker les secrets dans GitHub, mais vous pouvez choisir de les stocker chez un fournisseur de cloud.
Dans GitHub, vous pouvez stocker les secrets au niveau du dĂ©pĂŽt ou de lâorganisation. Les secrets au niveau du dĂ©pĂŽt peuvent ĂȘtre limitĂ©s aux workflows de certains environnements, par exemple de production ou de test. Pour plus dâinformations, consultez « Utilisation de secrets dans GitHub Actions ».
Vous devez envisager dâajouter une protection par approbation manuelle pour les environnements sensibles, de sorte que les workflows soient obligatoirement approuvĂ©s avant dâaccĂ©der aux secrets des environnements. Pour plus dâinformations, consultez « Gestion des environnements pour le dĂ©ploiement ».
Considérations de sécurité pour les actions tierces
Se procurer des actions sur des dĂ©pĂŽts tiers de GitHub comporte un risque significatif. Si vous autorisez des actions tierces, vous avez tout intĂ©rĂȘt Ă crĂ©er des directives internes qui encouragent votre Ă©quipe Ă suivre les bonnes pratiques, notamment en faisant correspondre les actions Ă un SHA de commit complet. Pour plus dâinformations, consultez « Durcissement de la sĂ©curitĂ© pour GitHub Actions ».
Inner sourcing
RĂ©flĂ©chissez Ă la façon dont votre entreprise peut utiliser les fonctionnalitĂ©s de GitHub Actions pour lâinner sourcing de lâautomatisation. Lâinner sourcing est un moyen dâincorporer les avantages des mĂ©thodologies open source dans votre cycle de dĂ©veloppement logiciel interne. Pour plus dâinformations, consultez An introduction to innersource dans GitHub Resources.
Pour partager des actions au sein de votre entreprise sans les publier publiquement, vous pouvez les stocker dans un rĂ©fĂ©rentiel interne, puis configurer celui-ci pour autoriser lâaccĂšs aux workflows GitHub Actions dans dâautres rĂ©fĂ©rentiels appartenant Ă la mĂȘme organisation ou Ă toute autre organisation de lâentreprise. Pour plus dâinformations, consultez « Partage dâactions et de workflows au sein de votre entreprise ».
Avec les workflows rĂ©utilisables, votre Ă©quipe peut appeler un workflow Ă partir dâun autre workflow, ce qui Ă©vite une duplication exactement identique. Les workflows rĂ©utilisables favorisent les bonnes pratiques en aidant votre Ă©quipe Ă utiliser des workflows bien conçus et dĂ©jĂ testĂ©s. Pour plus dâinformations, consultez « RĂ©utilisation des workflows ».
Pour offrir aux dĂ©veloppeurs un point de dĂ©part pour la gĂ©nĂ©ration de nouveaux workflows, vous pouvez utiliser des modĂšles de workflow. Non seulement ils font gagner du temps aux dĂ©veloppeurs, mais ils favorisent Ă©galement la cohĂ©rence et les bonnes pratiques Ă lâĂ©chelle de votre entreprise. Pour plus dâinformations, consultez « CrĂ©ation de modĂšles de workflow pour votre organisation ».
Gestion des ressources
Vous devez rĂ©flĂ©chir Ă la façon dont vous allez gĂ©rer les ressources nĂ©cessaires Ă lâutilisation de GitHub Actions.
Configuration matérielle requise
Vous devrez peut-ĂȘtre mettre Ă niveau les ressources processeur et mĂ©moire pour votre instance GitHub Enterprise Server de façon Ă gĂ©rer la charge de GitHub Actions sans occasionner de perte de performances. Pour plus dâinformations, consultez « Bien dĂ©marrer avec GitHub Actions pour GitHub Enterprise Server ».
Exécuteurs
Les workflows GitHub Actions nĂ©cessitent des exĂ©cuteurs. Vous devrez hĂ©berger vos propres runners en installant l'application de runner autonome GitHub Actions sur vos propres machines. Pour plus dâinformations, consultez « à propos des exĂ©cuteurs auto-hĂ©bergĂ©s ».
DĂ©terminez si vous voulez utiliser des machines physiques, des machines virtuelles ou des conteneurs pour vos exĂ©cuteurs auto-hĂ©bergĂ©s. Les machines physiques conservent les restes des travaux prĂ©cĂ©dents, tout comme les machines virtuelles, Ă moins que vous utilisiez une nouvelle image pour chaque travail ou que vous nettoyiez les machines aprĂšs chaque exĂ©cution de travail. Si vous optez pour les conteneurs, sachez que la mise Ă jour automatique des exĂ©cuteurs arrĂȘte les conteneurs, ce qui peut entraĂźner lâĂ©chec des workflows. Vous devez trouver une solution Ă ce problĂšme en empĂȘchant les mises Ă jour automatiques ou en ignorant la commande afin de tuer le conteneur.
Vous devez aussi choisir Ă quel emplacement ajouter chaque exĂ©cuteur. Vous pouvez ajouter un exĂ©cuteur auto-hĂ©bergĂ© Ă un dĂ©pĂŽt individuel ou mettre lâexĂ©cuteur Ă la disposition dâune organisation entiĂšre ou de lâensemble de votre entreprise. En ajoutant les exĂ©cuteurs au niveau de lâorganisation ou de lâentreprise, vous pouvez en assurer le partage et ainsi contribuer Ă rĂ©duire la taille de votre infrastructure dâexĂ©cuteurs. Vous pouvez utiliser des stratĂ©gies pour limiter lâaccĂšs aux exĂ©cuteurs auto-hĂ©bergĂ©s aux niveaux de lâorganisation et de lâentreprise en affectant des groupes dâexĂ©cuteurs Ă des dĂ©pĂŽts ou des organisations spĂ©cifiques. Pour plus dâinformations, consultez « Ajout dâexĂ©cuteurs auto-hĂ©bergĂ©s » et « Gestion de lâaccĂšs aux exĂ©cuteurs auto-hĂ©bergĂ©s Ă lâaide de groupes ». Vous pouvez Ă©galement utiliser des stratĂ©gies pour empĂȘcher les utilisateurs de se servir dâexĂ©cuteurs auto-hĂ©bergĂ©s au niveau du dĂ©pĂŽt. Pour plus dâinformations, consultez « Application de stratĂ©gies pour GitHub Actions dans votre entreprise ».
Vous devez envisager dâutiliser la mise Ă lâĂ©chelle automatique pour augmenter ou diminuer automatiquement le nombre dâexĂ©cuteurs auto-hĂ©bergĂ©s disponibles. Pour plus dâinformations, consultez « Mise Ă lâĂ©chelle automatique avec des exĂ©cuteurs auto-hĂ©bergĂ©s ».
Enfin, envisagez de renforcer la sĂ©curitĂ© pour les exĂ©cuteurs auto-hĂ©bergĂ©s. Pour plus dâinformations, consultez « Durcissement de la sĂ©curitĂ© pour GitHub Actions ».
Stockage
Artifacts vous permet de partager des donnĂ©es entre travaux dans un workflow, et de stocker des donnĂ©es une fois ce workflow terminĂ©. Pour plus dâinformations, consultez « Stockage et partage des donnĂ©es dâun workflow ».
GitHub Actions a Ă©galement un systĂšme de mise en cache que vous pouvez utiliser pour mettre en cache les dĂ©pendances afin dâaccĂ©lĂ©rer les exĂ©cutions de workflow. Pour plus dâinformations, consultez « Mise en cache des dĂ©pendances pour accĂ©lĂ©rer les workflows ».
Vous devez configurer le stockage dâobjets blob externes pour les artefacts de workflow, les caches et dâautres journaux de workflow. DĂ©terminez quel fournisseur de stockage pris en charge votre entreprise utilisera. Pour plus dâinformations, consultez « Bien dĂ©marrer avec GitHub Actions pour GitHub Enterprise Server ».
Vous pouvez utiliser les paramĂštres de stratĂ©gie pour GitHub Actions afin de personnaliser le stockage des artefacts de workflow, les caches et la conservation des journaux. Pour plus dâinformations, consultez « Application de stratĂ©gies pour GitHub Actions dans votre entreprise ».
Suivi de l'utilisation
Vous devez envisager de planifier le suivi de lâutilisation de GitHub Actions pour connaĂźtre notamment Ă quelle frĂ©quence les workflows sont exĂ©cutĂ©s, combien dâexĂ©cutions aboutissent et combien Ă©chouent et quels dĂ©pĂŽts utilisent quels workflows.
Vous pouvez utiliser des webhooks pour vous abonner Ă des informations sur les travaux et les exĂ©cutions de workflows. Pour plus dâinformations, consultez « à propos des webhooks ».
RĂ©flĂ©chissez Ă la façon dont votre entreprise peut transmettre les informations de ces webhooks dans un systĂšme dâarchivage de donnĂ©es. Vous pouvez envisager dâutiliser « CEDAR.GitHub.Collector », outil open source qui collecte et traite les donnĂ©es de webhooks de GitHub. Pour plus dâinformations, consultez le dĂ©pĂŽt Microsoft/CEDAR.GitHub.Collector
.
Vous devez aussi prĂ©voir comment vous allez permettre Ă vos Ă©quipes dâobtenir les donnĂ©es dont elles ont besoin depuis votre systĂšme dâarchivage.