Duniter v1 : comment livrer duniter-core et duniter-gva?

J’ai l’impression que la vers de Cargo de la pipeline est vieille, non ? D’après les logs : 1.51.0-x86_64-unknown-linux-gnu (default)

Comment gère t’on les différentes version de compilateur, en Rust ? Et pour les dépendances ?

En effet on pourrait essayer de passer à la release d’aujourd’hui. On gagnerait aussi en performance de compilation et d’exécution et en compatibilité. Ce doit être défini dans un fichier relatif à docker et/ou gitlab, mais si on n’a pas de chance il faut changer une image docker autre part et là je ne sais pas faire…

edit: il faudrait mettre à jour cette image docker sur dockerhub je pense : .gitlab-ci.yml · master · nodes / rust / modules / duniter-gva · GitLab

edit 2 : Docker

C’est buildé ici.

ok, on peux tenter.
Vers quelle version du coup ?

A priori la dernière stable est 1.70.0

rustup install stable
info: syncing channel updates for 'stable-x86_64-unknown-linux-gnu'

  stable-x86_64-unknown-linux-gnu unchanged - rustc 1.70.0 (90c541806 2023-05-31)

info: checking for self-update

Oui, on peut le voir sur github ou avec rustup check si la toolchain stable est installée.

ok j’ai checké et c’est bien la 1.70.0. J’ai pushé une modif du DockerFile, mais la CI failed : test_build_image (#107965) · Jobs · docker / rust / rust-x64-stable-ci · GitLab

Une idée ?

Je ne connais rien à docker, je vois juste les erreurs permission denied au début, qui ont dû causer les erreurs suivantes. @Pini peut-être ?

Ah oui effectivement… Reste à attendre @Pini, ou @poka ? @HugoTrentesaux ? Quelqu’un ? :slight_smile:

Bon je file pour ce soir. Tant pis :frowning:

J’ai poussé un correctif. Par contre, prenez le temps de comprendre comment fonctionne ce dépôt. Ça uploade l’image sur Docker Hub lorsqu’il y a un tag.
Par contre, je ne suis pas sûr si le bump de version, corresponds à la version de Rust.

failed :frowning: Pipeline · docker / rust / rust-x64-stable-ci · GitLab

package `cargo_toml v0.15.3` cannot be built because it requires rustc 1.64 or newer, while the currently active rustc version is 1.61.0

Oui, faut chercher comment updater Rust.

Je ne sais pas si la version du Dockerfile: LABEL version="1.70.0" peut être passé à cargo install conventional_commits_linter --version ^0.

rustup install stable a priori

La version de Rust vient de cette ligne où il télécharge l’image Docker
Ça devrait être bon. Pourquoi ne télécharge-t-il pas la dernière image latest de Rust ?
Étant donné que la version est :

the currently active rustc version is 1.61.0

Sur le runner Redshift, j’ai fait un docker image rm rust:latest qui pointait vers une ancienne image.
J’ai également fait un docker image prune et docker container prune, je sais pas si ces dernières commandes ont aidé.
À présent rust:lastest pointe vers la dernière image Rust v1.70.0. J’ai publié une nouvelle image tagué v1.70.0.

feat(bma) add `get_written_transactions_for_bma()` and `get_pending_transactions_for_bma()` - close #1 (!5) · Merge requests · nodes / rust / modules / duniter-gva · GitLab passe les tests sans le bump des dépendances (async-bincode nécessite un changement du code (breaking change)). Les autres dépendances nécessitent également un correctif.

Un cargo update -p duniter-core permet de mettre à jour uniquement le hash git de `duniter-core.

Ça devrait être bon. Maintenant le job n’arrive plus à se lancer :confused:

J’arrive après la bataille. Désolé.

Il y a peut-être une option côté CI pour forcer un pull de l’image à chaque fois.

Le runner gère tellement de job qu’à un moment il se grippe.
De temps à autre il faut faire le ménage.

Encore ce runner qui joue de ces tours, je l’ai de nouveau désactivé. Il n’est pas stable et de fait pas fiable.

Les tests sont passés. Il reste à corriger les rapport de fmt et clippy :wink:

1 Like

Wahou, merci @moul !!

Pas de soucis je m’en charge