PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Progi1984 : Utiliser CodeClimate avec Github & Travis dans un projet PHP

lundi 1 février 2016 à 10:30

Après avoir utilisé Scrutinizer-CI, j’ai décidé d’utiliser CodeClimate pour PHPPresentation.

Logo CodeClimate

Ajout du projet sur CodeClimate

Après une connexion via GitHub, j’ai ajouté un projet de type « Repository GitHub ».

Vous avez juste à ajouter le propriétaire et le nom du projet GitHub. Dans notre cas, ce sera « PHPOffice/PHPPresentation ».
L’ajout se fait automatiquement et après le premier build, votre accueil devrait se présenter comme cela :
Accueil

Intégration de CodeClimate dans votre projet

Pour cela, il suffit de rajouter à la racine de votre dépôt un fichier .codeclimate.yml de ce type :

engines:
  phpcodesniffer:
    enabled: true
  phpmd:
    enabled: true
  duplication:
    enabled: true
    config:
      languages:
      - php
ratings:
  paths:
  - src/**/*
  - tests/**
exclude_paths:
- vendor/**/*

Grâce au nœud « engines », votre projet sera testé via PHPCodeSniffer, PHPMd et via un outil interne sur la duplication de code.
Grâce au nœud « ratings », seuls les chemins définis seront utilisés pour le calcul de votre projet.
Grâce au nœud « exclude_paths », les chemins définis seront exclus de l’analyse.

Intégration de CodeClimate avec Travis-CI

Il vous faut pour cela aller dans les settings du projet puis sur l’onglet « Test Coverage ».
A partir de là, tout devrait vous être expliqué.
Mais en gros, cela se passe comme tel :

Conclusion

Votre code sera désormais testé via l’outil d’analyse de code statique qu’est CodeClimate et un rapport vous sera fourni où seront disponible les erreurs tel le code dupliqué, les erreurs dans le coding style, des vulnérabilités potentiels, des morceaux de code à clarifier car pouvant porter à confusion ou des codes contenant trop de lignes et générant ainsi de la complexité cyclomatique.

Cet article Utiliser CodeClimate avec Github & Travis dans un projet PHP est apparu en premier sur RootsLabs.

Gravatar de Progi1984
Original post of Progi1984.Votez pour ce billet sur Planet Libre.