Publication automatique des releases Duniter

cd
build

#1

Je souhaite reconstruire la v1.7.12 qui a disparu. (la 1.6.31 aussi).

Mais, la construction échoue. Ça a déjà été reporté ici https://forum.duniter.org/t/doppler-gitlab/3183/66?u=moul.

Ça serait lié à ici https://git.duniter.org/nodes/typescript/duniter/blob/dev/.gitlab/releaser/releaser.py#L2

Je pense que les images Docker n’installent pas cette dépendance.

Pour savoir quelle image Docker est utilisée pour construire le build, je vais la dessus, et je ne trouve plein de dépôt relatifs au build. Si quelqu’un veut bien m’aiguiller ou faire le ménage entre :


#2

Je t’aurais bien aiguillé, mais je ne sais pas du tout comment installer cette fichue dépendance python ! Ce ne devrait pourtant pas être compliqué, je suppose.


#3

Comme indiqué dans le .gitlab-ci.yml le job de prerelease utilise l’image docker tensorflow/tensorflow:latest-py3 du docker hub. Ce n’est pas une image a nous.

D’ailleurs cette étape qui fail ne concerne pas du tout le build mais uniquement la génération automatique de la page wiki avec les liens vers les artifacts qui eux ont déjà été générés dans les job d’avant. Donc au pire la page wiki peut très bien etre rédigée a la main :wink:

EDIT: bref, le problème viens juste du fait que l’image tensorflow/tensorflow:latest-py3 n’inclus plus jinja2, donc soit faut trouver une autre image python soit créer la notre.


#4

Rajouter ce qui suit dans le Dockerfile devrait suffire :

apt install -y python3-jinja2

https://packages.debian.org/search?suite=default&section=all&arch=any&searchon=names&keywords=python3-jinja2

Après, je sais pas pourquoi ça a sauté après la Màj de GitLab.


#5

Si c’est une latest, effectivement on s’expose à subir des mises à jour avec régressions (en l’occurrence la perte de jinja2) :confused:


#6

Tu parles de l’image Docker de GitLab ou de tensorflow/tensorflow:latest-py3 utilisé pour construire la release ?


#7

Oui. Comme ce n’est pas une version précise, en cas de mise à jour on subit les changements.

Pour une image de build, peut-être pourrait-on prendre une version fixe car par sûr que les mises à jour soient utiles.


#8

Bon, j’ai joué un peu avec les jobs et la pipeline.
J’ai pas trouvé comment lancer une release qui ne soit pas en test ?


#9

Je ne comprends pas ta question ?


#10

Ça créé une release test.
J’ai tenté de rajouter un tag, mais, ça a également fait une release test.
Le problème qu’on rencontre avec jinja2 n’arrive que sur la construction du paquet en prerelease ou release.
Comment lance-t-on une release de ce type ?


Tu as su contourner le problème pour la 1.7.14 ? Comment as-tu fait comment ?


#11

J’ai édité la page de releases et copié/collé la partie que je voulais reproduire. Il suffit ensuite de remplacer le numéro de job par le tiens.

Bien sûr tu devras supprimer les entrées Windows et ARM qui ne proviennent pas d’un job GitLab.


#12

J’ai fait un copié coller du tag de la v1.7.14 en modifiant le numéro de job et de version des liens, mais les liens ne fonctionnent pas.

Je vois pas ce que j’ai manqué.


#13

Faut lancer la release ! C’est une étape manuelle :slight_smile:


#14

Elles servent à quoi les étapes prerelease et release ?
Publient-elles automatiquement la release dans la section tag de GitLab ? Ou, font-telle autres choses ?


#15

La prerelease créer la page dans le Wiki GitLab. Et la release la modifie, il me semble. Il suffit de lire le fichier releaser.py dans les sources de Duniter.


#16

Oui je confirme. Le job release va juste modifié le wiki pour tagger la version en “release”, le but était d’avoir un truc similaire au “latest” de github :slight_smile:


#17

Ok, du coup, c’est pas très critique, mais c’est partique à avoir.


#18

Ok, c’est corrigé avec ce commit.

Avec la pipeline avec la prerelease a la release qui ont réussit.

Publié automatiquement en v1.7.13.


#19

Cool merci beaucoup, je me servais des mêmes scripts python réalisés par @sveyret pour Durs, du coup je vais appliquer le meme correctif :slight_smile:


#20

Putain c’est déconcertant de simplicité, quand je pense que je me galérais à trouver cette solution ! :sob:

Merci Moul !