Remarque : Les exécuteurs hébergés sur GitHub ne sont pas pris en charge sur GitHub Enterprise Server. Vous pouvez voir plus d’informations sur le support futur planifié dans la GitHub public roadmap.
Vue d’ensemble
GitHub Actions vous permet de personnaliser vos workflows pour répondre aux besoins uniques de votre application et de votre équipe. Dans ce guide, nous allons aborder certaines des techniques de personnalisation essentielles, telles que l’utilisation de variables, l’exécution de scripts et le partage de données et d’artefacts entre les travaux.
Utilisation de variables dans vos workflows
GitHub Actions inclut des variables d’environnement par défaut pour chaque exécution de workflow. Si vous devez utiliser des variables d’environnement personnalisées, vous pouvez les définir dans votre fichier de workflow YAML. Cet exemple montre comment créer des variables personnalisées nommées POSTGRES_HOST
et POSTGRES_PORT
. Ces variables sont ensuite disponibles pour le script node client.js
.
jobs:
example-job:
steps:
- name: Connect to PostgreSQL
run: node client.js
env:
POSTGRES_HOST: postgres
POSTGRES_PORT: 5432
Pour plus d’informations, consultez « Variables ».
Ajout de scripts à votre workflow
Vous pouvez utiliser des actions pour exécuter des scripts et des commandes d’interpréteur de commandes, qui sont ensuite exécutées sur l’exécuteur affecté. Cet exemple montre comment une action peut utiliser le mot clé run
pour exécuter npm install -g bats
sur l’exécuteur.
jobs:
example-job:
steps:
- run: npm install -g bats
Par exemple, pour exécuter un script en tant qu’action, vous pouvez stocker le script dans votre dépôt et fournir le chemin d’accès et le type d’interpréteur de commandes.
jobs:
example-job:
steps:
- name: Run build script
run: ./.github/scripts/build.sh
shell: bash
Pour plus d’informations, consultez « Workflow syntax for GitHub Actions ».
Partage de données entre travaux
Si votre travail génère des fichiers que vous souhaitez partager avec un autre travail dans le même workflow, ou si vous souhaitez enregistrer les fichiers pour vous y référer ultérieurement, vous pouvez les stocker dans GitHub en tant qu’artefacts. Les artefacts sont les fichiers créés lorsque vous générez et testez votre code. Par exemple, les artefacts peuvent inclure des fichiers binaires ou de package, des résultats de test, des captures d’écran ou des fichiers journaux. Les artefacts sont associés à l’exécution du workflow où ils ont été créés et peuvent être utilisés par un autre travail. Toutes les actions et tous les workflows appelés dans une exécution disposent d’un accès en écriture aux artefacts de cette exécution.
Par exemple, vous pouvez créer un fichier, puis le charger en tant qu’artefact.
jobs:
example-job:
name: Save output
steps:
- shell: bash
run: |
expr 1 + 1 > output.log
- name: Upload output file
uses: actions/upload-artifact@v2
with:
name: output-log-file
path: output.log
Pour télécharger un artefact à partir d’une exécution de workflow distincte, vous pouvez utiliser l’action actions/download-artifact
. Par exemple, vous pouvez télécharger l’artefact nommé output-log-file
.
jobs:
example-job:
steps:
- name: Download a single artifact
uses: actions/download-artifact@v2
with:
name: output-log-file
Pour télécharger un artefact à partir de la même exécution de workflow, votre travail de téléchargement doit spécifier needs: upload-job-name
pour ne pas commencer tant que le travail de chargement n’est pas terminé.
Pour plus d’informations sur les artefacts, consultez « Stockage des données de workflow en tant qu’artefacts ».
Étapes suivantes
Pour continuer à découvrir GitHub Actions, consultez « À propos des workflows ».