Aller au contenu principal

PHPCS

Intégration de phpcs : contrôle des standards de code, avec un rapport en artefact.

Règles de déclenchement, cache Composer et caractère bloquant : voir le fonctionnement des jobs QA.

Fonctionnement​

Après un composer install, le job lance phpcs deux fois :

  1. pour produire codequality_phpcs.json, le rapport au format Code Quality de GitLab (il demande le paquet micheh/phpcs-gitlab dans le projet) ;
  2. avec le standard PHPCS_CONFIG_FILE, pour le rapport lisible, écrit dans PHPCS_QA_FILE et affiché dans le journal du job. C'est ce second passage qui décide du résultat du job.

Le nombre d'erreurs et d'avertissements est relevé dans qa-reports-phpcs.env, pour le job deploy-metrics.

Les trois fichiers sont publiés en artefacts, conservés un jour, même quand le job échoue.

Utilisation​

variables:
CI_TEMPLATE_VERSION: &CI_TEMPLATE_VERSION main
PHPCS_DOCKER_IMAGE: wodby/drupal-php:8.3-dev
PHPCS_QA_FILE: files/phpcs.txt
PHPCS_CONFIG_FILE: phpcs.xml
PHPCS_ALLOW_FAILURE: "true"


include:
- project: kgaut/gitlab-ci-templates
ref: *CI_TEMPLATE_VERSION
file:
- '/templates/generic/stages-variables-extends.yml'
- '/templates/qa/phpcs.yml'

Variables nécessaires​

Nom de la variableContenuExempleRemarque
PHPCS_DOCKER_IMAGEImage docker à utiliser pour exécuter le testwodby/drupal-php:8.3-devpar défaut wodby/drupal-php:7.4-dev ; à adapter au PHP du projet
PHPCS_QA_FILEChemin et nom du fichier de sortie, publié en artefactfiles/phpcs.txtpar défaut files/phpcs.txt ; son dossier doit exister dans le dépôt
PHPCS_CONFIG_FILEFichier de config phpcs, relatif à la racine du projetphpcs.xmlpar défaut phpcs.xml
PHPCS_ALLOW_FAILUREÀ une autre valeur que "true", un échec du job arrête la pipeline"false"par défaut "true"

Liste des jobs​

phpcs​

Contrôle les standards de code (stage QA).