V2 du site web de Duniter en français

Il s’agit de webhooks qui déclenchent les builds sur les serveurs.

Du coup il faut migrer ces webhook sur doppler ou écrire une CI/CD pour le site anglais. Mais je n’y connais rien à Pelican et ne sais pas non plus comment installer ce webhook sur doppler, là je suis coincé, je ne peux pas faire la migration, qui sais faire ça ?

Pour ma part, je laisserai tomber les webhook.
Je construirais les fichiers statiques du site web dans une image docker, puis ça serait distribué sur GitLab Pages. Puis, il faut mettre en place un vhox comme pour https://silkaj.duniter.org.

Les deux sites web peuvent rester en parallèle avec leurs modes de fonctionnement et déploiement.

Non ils ne peuvent pas sans rien faire car le domaine duniter.org ne peut pointer que sur une seule IP. Actuellement il pointe sur norstorm, or il faut qu’il pointe sur doppler pour que le nouveau site fr soit servi, donc le site anglais ne marchera plus, tu comprends le problème ?

Je comprends le problème. Merci d’insister.
Si tu souhaites migrer le site web anglais sur Doppler :

Sinon intégrer la version anglaise dans le même dépôt. Ça fairait du bien d’avoir un même dépôt.

Non en vrai je ne souhaite pas migrer le weebhook, je n’ai jamais touché à Ansible et les liens que tu me donnes ne m’aident pas, je n’ai aucune idée de ce que je suis censé faire avec ça, je n’ai pas les compétences pour migrer un webhook :confused:

En plus il y a de toute façon un autre problème qui fait que l’on ne peut pas garder le fonctionnement actuel avec le site français sur l’url duniter.org/fr: @HugoTrentesaux à conçu le nouveau site d’une manière qui nécessite impérativement que le site soit à la racine (sans path), donc ça ne peut pas fonctionner sous /fr.

Je propose donc le changement suivant:

  • Héberger le nouveau site français sur duniter.fr
  • Créer une redirection duniter.org/fr -> duniter.fr

Et pour le site anglais deux possibilités :

  • Soit on le migre sur duriter.org avec une redirection duniter.org/en -> duniter.org
  • Soit on le laisse sur Duniter | Home avec une redirection duniter.org -> duniter.org/en

Étant donné que duniter.fr n’est plus et redirige déjà sur duniter.org, il suffirait de modifier la zone dns de duniter.fr pour le faire pointer sur doppler et derrière je peut m’occuper de créer la conf nginx pour le nouveau site français :slight_smile:

Je crois me souvenir que c’est @kimamila qui gère le domaine duniter.fr, c’est bien ça ? @kimamila est-ce que cette proposition te conviens ?

1 Like

Ça me semble être une bonne idée.

@elois j’ai essayé une première solution pour chercher la documentation sur gitlab en utilisant la fonction load_data des templates zola. Aperçu ici : http://duniter.trentesaux.fr/wiki/forger-des-blocs/duniter1.9doc/

Avantages :

  • très simple à mettre en place
  • profite du système de cache de zola pour éviter de faire les requêtes à chaque fois lors du développement

Inconvénients :

  • ne profite pas de la coloration syntaxique à la compilation faite par zola
  • les liens internes ne fonctionnent pas car ils pointent vers des fichiers .md

Je vais chercher à mettre en place une solution maison qui résout ces problèmes (probablement un script python), mais en attendant on a une solution quasi fonctionnelle et très facile.

[edit]

J’ai écrit un petit script fragile et l’ai intégré à la CI. On peut voir le fichier zola vide, le script, et le résultat.

Quelques remarques :

  • pour profiter de la coloration syntaxique, il vaut mieux utiliser la syntaxe ``` suivie du langage pour le code, plutôt que l’indentation simple. Ce serait plus simple de faire ce changement directement sur le Gitlab.
  • je n’ai pas blindé le script (pas de gestion d’erreur), il reste à améliorer ou à utiliser avec précaution.
  • il y a deux options pour utiliser le script : soit on exécute le script localement et on commit les modifications de la doc, soit on garde les fichiers vides (seuls les en-têtes sont commités) et on laisse le script écraser le contenu à chaque compilation. Dans le deuxième cas, il reste à déclencher la CI à chaque mise à jour de la documentation distante.
1 Like

Oui c’est déjà ce que je fais, sauf s’il s’agit d’une simple commande bash seule.

Il ne faut pas commit, c’est très moche, le contenu doit être généré par la CI,

Pourquoi faire compliqué quand on peut faire simple, il suffit de créer une schedule pipeline qui s’exécute toute les 24h, je viens de le faire, le site sera désormais mis à jours automatiquement tout les jours à 1h du matin :slight_smile:

En tout cas félicitations ça semble bien fonctionner :slight_smile:

1 Like

Un message a été scindé en un nouveau sujet : Certificat *.duniter.io expiré

@kimamila as-tu la main sur le nom de domaine duniter.fr ? J’aimerais bien servir https://duniter_website_fr_v2.duniter.io/ avec. Il ne me restera plus qu’à mettre en place les redirections depuis Duniter | Accueil pour éviter de casser les liens présents sur les autres site web.

Oui, je dois la gestion du domaine quelque part dans mes cartons :slight_smile:
@cgeek m’en avait passé la gestion

Dis moi ce que tu a besoin

L’idée était d’avoir le site francophone de duniter sur duniter.fr et le site anglophone sur duniter.org.

Et donc tout ce qu’il faut c’est changer l’entrée DNS pour pointer sur Doppler :

Chez qui est le nom de domaine ? Si c’est chez Gandi on pourrait faire un groupe d’administration, ça facilite la gestion.

oui, sur Gandi

Super, dans ce cas, on peut utiliser la fonction de partage dans le panneau d’admin des noms de domaine. Mon nom d’utilisateur est h30x

What the fuck ??? Je me rends compte que les deux versions du site coexistent :

C’est un peu le bordel, je ne sais pas comment je vais gérer les redirections. J’envisage de faire du scrapping web pour regarder tous les liens qui pointent vers le site duniter et m’arranger pour que le moins possible arrivent sur une erreur 404.

Les fichiers générés de l’ancien site web sont toujours présents dans le dossier pour servir le site web.

1 Like

Oui, mais ça veut dire que les deux sont indexés et qu’on tombe sur l’un ou l’autre dans un moteur de recherche donc que des gens qui mettent des liens vers ce site peuvent utiliser l’une ou l’autre des urls donc à la fin, il faudra que je mette en place les deux redirections vers les urls en duniter.fr avec les nouveaux chemins.

@HugoTrentesaux , je vois que tu passes de pelican à Zola (que je ne connaissais pas). Sur leur readme ils annoncent ne pas tout à faire supporter le multilingue. J’ai commencé quelques corrections sur le site EN qui traîne derrière, Tu penses qu’on peut réussir à grouper les deux langues sur un même projet zola ? C’est peut-être plus pertinent que mettre à jour la version pelican ?

– Edit

https://www.getzola.org/documentation/content/multilingual/
Ça semble plutôt OK je dirais ?

La question du multilingue a déjà été discutée. La décision n’était pas évidente, mais on a choisi de garder une gestion découplée du site francophone et du site anglophone. J’avais déjà réalisé une fusion des sites duniter en et fr (Multilingual website) mais nous ne l’avions jamais mise en place. Donc non seulement il n’est pas prévu de gérer le multilingue, mais en plus il est prévu de ne pas gérer le multilingue ! Ceci dit, rien n’empêche de reprendre ce qui a été fait dans une langue pour l’autre, et cela est valable pour toutes les langues futures (espagnol, allemand…). Le problème est moins technique qu’humain : il faut des gens pour maintenir le site à long terme. Si tu tu proposes pour la maintenance du site anglophone, je serais très content de pouvoir travailler avec toi :slight_smile:

1 Like