OpenCode GitLab
OpenCode peut également être intégré aux workflows GitLab, en exécutant automatiquement des tâches dans les Issues, les Merge Requests et les pipelines CI/CD.
Sa caractéristique principale est de s'exécuter sur votre GitLab Runner, permettant un développement automatisé piloté par l'IA, sécurisé et contrôlable.
OpenCode GitLab = Intégrer l'IA dans CI/CD, automatiser l'analyse du code, les corrections et les revues.
1. Présentation des méthodes d'intégration
OpenCode dispose de deux méthodes d'utilisation principales dans GitLab :
- GitLab CI (Recommandé): Exécuter OpenCode via les pipelines CI/CD
- GitLab Duo (Déclenché par commentaire): Déclencher via @opencode dans les commentaires
2. Intégration GitLab CI (méthode principale)
OpenCode peut être intégré à votre pipeline en tant que composant CI pour automatiser l'exécution des tâches.
Ici, nous utilisons le composant communautaire :
nagyv/gitlab-opencode
1. Fonctionnalités
- Configuration personnalisée par tâche: Prend en charge des répertoires de configuration indépendants
- Coût d'intégration minimal: Aucune initialisation complexe requise
- Hautement personnalisable: Prend en charge le contrôle du comportement multi-paramètre
2. Étapes de configuration
① Configurer les informations d'authentification
Dans votre projet GitLab :
- Accédez à Paramètres → CI/CD → Variables
- Ajoutez des variables :
OPENCODE_AUTH_JSON
Exigences :
- Type : Fichier
- Cochez Masqué et Caché
② Configurer le pipeline
Créer ou modifier à la racine du projet :
.gitlab-ci.yml
Exemple :
include:
- component: $CI_SERVER_FQDN/nagyv/gitlab-opencode/opencode@2
inputs:
config_dir: ${CI_PROJECT_DIR}/opencode-config
auth_json: $OPENCODE_AUTH_JSON
command: optional-custom-command
message: "Explain the codebase structure"
③ Description des paramètres
| Paramètre | Description |
|---|---|
| config_dir | Répertoire de configuration d'OpenCode |
| auth_json | Informations d'authentification (clé API) |
| command | Commande d'exécution (facultatif) |
| message | Prompt |
3. Cas d'utilisation
- Analyser automatiquement la structure du code
- Refactoriser le code par lots
- Générer automatiquement la documentation
- Vérifier automatiquement la qualité du code lors des étapes CI
3. Intégration GitLab Duo (Déclenchée par commentaire)
Similaire à /opencode de GitHub, GitLab utilise@opencodepour déclencher.
Lorsque vous commentez un ticket ou une demande de fusion:
@opencode your prompt
OpenCode exécutera automatiquement les tâches dans GitLab CI
1. Fonctionnalités
- Analyse des tickets: Comprendre automatiquement les tickets
- Corrections automatiques: Créer une branche et soumettre une MR
- Revue de code: Analyser les demandes de fusion
Fonctionnalités :
- S'exécute sur GitLab Runner
- Sécurisé, ne dépend pas d'environnements d'exécution externes
2. Étapes de configuration
Pour utiliser @opencode, vous devez compléter la configuration suivante:
- Configurer le pipeline GitLab CI/CD
- Préparer la clé API
- Créer un compte de service
- Configurer les variables CI/CD
- Créer un fichier de configuration Flow
Remarque :
Pour plus de détails, reportez-vous à la documentation officielle des GitLab CLI Agents (varie légèrement selon les versions).
4. Utilisation courante
1. Expliquer les tickets
@opencode explain this issue
Résumer automatiquement les tickets et fournir des explications
2. Corriger automatiquement les tickets
@opencode fix this
Automatiquement :
- Créer une nouvelle branche
- Modifier le code
- Soumettre une demande de fusion
3. Réviser les demandes de fusion
@opencode review this merge request
Analyser automatiquement :
- Qualité du code
- Bugs potentiels
- Suggestions d'optimisation
5. Conseils avancés
1. Mots déclencheurs personnalisés
Vous pouvez@opencoderemplacez-le par d'autres mots-clés déclencheurs.
2. Configuration au niveau des tâches
En utilisant différents config_dir, vous pouvez obtenir :
- Différents modèles pour différentes tâches
- Différentes règles pour différents projets
3. Intégration avec l'automatisation CI
Vous pouvez obtenir :
- Analyse planifiée des problèmes de code
- Génération automatique de rapports hebdomadaires
- Corriger automatiquement les bugs simples
6. Sécurité et bonnes pratiques
- Utiliser les variables CI/CD pour stocker les secrets
- Éviter de coder en dur les clés API dans le code
- Contrôler raisonnablement les permissions du Runner
- Limiter la portée des modifications automatiques du code