Automatisation de tâches, modules sur git

Bonjour,

Est-il possible, avec Simplicité V5, d’avoir un module hébergé sur git, et qu’au moment ou Simplicité essais de récupérer le contenu du module (via un pull), un script s’exécute pour traiter les diverses sources du module.
Par exemple, j’ai un dépôt git qui contient un style fait avec Sass, pour une charte graphique. J’ai un module contenant tout l’aspect graphique de mon application (logos, styles (au format Sass)*, …).

* Les styles sont un submodule git du dépôt du module Simplicité

J’aimerais pouvoir compiler lors du pull le Sass en .css afin que mon module l’utilise pour appliquer mon style à mon application. J’avais donc pensé à exécuter un script une fois le dépôt pull. Script qui traiterait mon fichier en utilisant le compilateur Sass (disponible via npm, NodeJS).

(Si jamais quelque chose n’est pas clair, dites le moi)

Merci d’avance !

Simplicité sait gérer en standard des ressources de type image et des styles (en syntaxe LESS qu’il compile à l’import)

Si vous devez faire des tâches supplémentaires qui sortent du cadre de ce que fait Simplicité (ici une compilation SASS vers des ressources CSS ?) vous devez mettre en pace les process ad hoc en amont de la mécanique Git propre aux modules Simplicité.

Faire ce genre de choses au moment de l’import Simplicité c’est se mettre des contraintes supplémentaires (= installer un compilateur SASS dans le container etc.)

Je vois,

Auriez-vous une indication sur un tel système ?

Je ne comprend pas la question. Ou en tout cas elle ne relève pas du support Simplicité.

Ce que je dis c’est que si vous devez compiler un fichier SASS en CSS pour le charger en tant que ressource “styles” Simplicité, faites cette compil en dehors de Simplicité pour qu’au moment de l’import Simplicité importe un contenu CSS déjà compilé.

Ou alors restez dans les standards de ce qui se fait en Simplicité = des resources images et des styles LESS

Ok, merci de votre réponse.

PS:

je vois qu’il y a un compilateur SASS Java (plus vraiment maintenu) GitHub - bit3/jsass: MIRROR Java sass compiler using libsass.
Eventuellement on pourrait voir pour l’intégrer à Simplicité dans une version future (i.e. >= 5.2) pour qu’au même titre qu’il sait compiler une ressource LESS en CSS il sache compiler une ressource SASS en CSS mais j’imagine qu’on est dans un cas plus complexe que juste 1 fichier SAAS, donc ce que j’ai dit plus haut reste à mon avis la bonne chose à faire (= faites vos compils en amont de l’import dans Simplicité)

Mais peut être parle-t-on ici d’un frontend standalone (genre un Angular, Vue, React, …) auquel cas vous pouvez le builder et l’importer en tant que ressource ZIP d’un objet externe afin qu’il soit uniquement servi par Simplicité.

J’ignorais qu’il y avait un compilateur Sass Java tiens.
Par contre non, je parle bien du frontend de base de Simplicité. Je vais voir soit pour migrer vers Less soit pour compiler en amont.

Je le sens pas trop le compilateur SaSS Java plus maintenu…

On est bien d’accord que ce que vous compilez finit dans une (ou plusieurs) ressource(s) “styles” simplicité ? ou en “addons styles” d’un thème ?

Jusque là tout fini toujours en un unique fichier Sass, qui est utilisé comme “Style Complémentaire” dans les réglages du thème fourni par le module.

OK le plus simple c’est de le réécrire en LESS sinon de compiler le SASS en CSS (et le commiter) avant d’importer le module dans Simplicité ou dans le genre. Si on parle de SASS pas trop complexe la meilleure approche c’est de passer à LESS car c’est standard = aucun “bricolage” ou action complémentaire à faire

Jusque là le fichier Sass fait bien 3500 lignes, le passer à Less prendrait un peu de temps. Je vais voir ce que je peux faire.

Merci du coup de main !

Je regarde pour intégrer le compilateur SaSS s’il tient la route.

Dans le preSave des ressources il y a déjà un si le nom de fichier finit en .less alors compil less vers css, sinon rien je peux ajouter un sinon si le nom de fichier finit en .scss alors compil sass vers css

Je vous tiendrai au courant

Sass gère deux types de fichiers normalement:

  • sass (.sass) ← j’ai celle ci
  • scss (.scss)
    Ce sont deux syntaxes différentes, gérées par le compilateur officiel de Sass. J’en sais rien pour celui en Java par contre.

OK je ne connais pas SaSS plus que ça.

Si vous pouvez tester si ce compilateur Java répond à vos besoins ça m’évitera d’intégrer un composant pour rien si ce n’est pas le cas. Merci d’avance

D’après le dépôt de JSass, la librairie fournie par Sass permettant de faire ce compilateur serait dépréciée. A long terme elle ne sera surement plus à jour. Je doute que ça en vaille la peine de l’intégrer.

Oui c’est que je me dis.

Mais en même temps j’imagine que SaSS ne va plus non plus évoluer énormément

Et les dépendances de cette lib sont déjà là, à une exception près (mjson) mais qui est standalone.

Bref testez et dites moi si elle convient dans votre cas, si oui on l’intégrera

Je vous ferais un retour au plus vite. Dans l’immédiat je ne suis pas en capacité de tester.

OK je reste en stand by tant que vous ne m’avez pas confirmé que ça marche dans votre cas.

PS: 3500 lignes de SaSS pour des addons styles ça me semble énormissime (et donc forcément pas très bon pour les perfs) ni potentiellement très maintenable. Perso pour mes thèmes j’ai rarement dépassé 50-100 lignes de LESS (je pars toujours du thème “light”, le plus facilement surchargeable),

Hello, petit retour

On a décidé de retravailler le style additionnel. Il nous avait été fourni par une autre équipe, je n’étais pas encore arrivé à la Région à ce moment. Je soupçonne qu’on nous ai fourni le style entier généré par simplicité et non un style additionnel, expliquant alors son volume. J’ai retravaillé le tout en Less, ça tiens maintenant sur moins de 100 lignes comme tu me l’avais dit, en partant du thème Light.

Concernant, Sass, ce n’est donc pas la peine de l’intégrer à SImplicité, en plus que le projet de compilateur n’a pas l’air très fiable.
(ps: je ne savais pas que Simplicité permettait d’utiliser Less au moment de mon premier choix)

Merci de ton aide dans tous les cas.

OK une centaine de lignes ça me semble plus raisonnable pour une surcharge par styles additionnels. Et on oublie SaSS pour le moment. Merci du retour.

En version 5.1+ on va rendre paramétrable d’autres choses sur le thème, ça devrait encore limiter les cas où il faut avoir recours aux styles additionnels.

1 Like