Auteur : Trix Cyrus
Outil Waymap Pentesting : cliquez ici
TrixSec Github : cliquez ici
GitHub Actions est un outil d'automatisation intégré à GitHub, offrant la possibilité d'automatiser les flux de travail, les pipelines CI/CD, les tests, les contrôles de qualité du code et même les déploiements directement dans votre référentiel. Il vous permet de définir des flux de travail à l'aide de fichiers YAML, vous donnant ainsi un contrôle total sur les déclencheurs, les environnements et les tâches.
Examinons la création d'un flux de travail CI de base pour tester et créer votre code chaque fois qu'un nouveau commit est poussé.
Créer le fichier de workflow
Accédez à .github/workflows dans votre référentiel et créez un fichier nommé ci.yml.
Définir la structure du flux de travail
name: CI Workflow on: push: branches: - main pull_request: branches: - main jobs: build: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Node.js uses: actions/setup-node@v3 with: node-version: '16' - name: Install dependencies run: npm install - name: Run tests run: npm test - name: Build project run: npm run build
Pour garantir la qualité du code, vous pouvez ajouter une étape de peluchage à votre flux de travail.
- name: Lint code run: npm run lint
L'ajout de cette étape après l'installation des dépendances permet d'identifier les problèmes de qualité du code dès le début du pipeline.
Ajoutons maintenant une étape de déploiement automatisée à un service cloud, tel qu'AWS ou Firebase.
Configurer Firebase CLI
Tout d’abord, installez et configurez Firebase CLI sur votre ordinateur local. Générez un jeton avec Firebase login:ci et stockez-le en tant que secret GitHub (FIREBASE_TOKEN).
Ajouter l'étape de déploiement
name: CI Workflow on: push: branches: - main pull_request: branches: - main jobs: build: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Node.js uses: actions/setup-node@v3 with: node-version: '16' - name: Install dependencies run: npm install - name: Run tests run: npm test - name: Build project run: npm run build
Ici, nous spécifions les besoins : build, ce qui signifie que cette tâche de déploiement ne s'exécute qu'une fois la tâche de build terminée avec succès.
- name: Lint code run: npm run lint
deploy: needs: build runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Node.js uses: actions/setup-node@v3 with: node-version: '16' - name: Install dependencies run: npm install - name: Build project run: npm run build - name: Deploy to Firebase env: FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }} run: | npm install -g firebase-tools firebase deploy
À mesure que vos projets se développent, envisagez de créer des flux de travail réutilisables en définissant workflow_call dans votre fichier YAML et en les réutilisant dans plusieurs référentiels, en particulier pour des tâches telles que le formatage du code ou les analyses de sécurité.
L'automatisation des workflows DevOps avec GitHub Actions améliore la productivité, réduit les erreurs humaines et crée un pipeline CI/CD plus robuste. Grâce aux flux de travail exécutés de manière transparente en arrière-plan, les développeurs peuvent se concentrer davantage sur l’écriture du code et moins sur les tâches de déploiement. Commencez petit avec les tests et développez progressivement le déploiement et la surveillance pour maximiser le potentiel de GitHub Actions dans votre parcours DevOps.
Ce guide fournit une base pour créer, tester et déployer vos projets avec GitHub Actions. Une fois à l'aise, vous pouvez vous développer davantage grâce à des actions personnalisées, des intégrations et une automatisation avancée pour un pipeline DevOps entièrement optimisé.
~TrixSec
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!