Projet

Général

Profil

Actions

Demande #2745

fermé

Demande #1877: Nouveaux messages qu'Hebdobot devrait envoyer pour les sujets collectifs

automatiser le build d'hebdobot

Ajouté par François Poulain il y a environ 7 ans. Mis à jour il y a plus de 3 ans.

Statut:
Résolu
Priorité:
Normale
Assigné à:
Christian P. Momon
Version cible:
-
Début:
03/11/2017
Echéance:
% réalisé:

0%

Temps estimé:
Difficulté:
2 Facile

Description

Dans un monde GNU idéal on tape make et ça juste marche.

Sinon, un readme reproducible est acceptable.

Mis à jour par François Poulain il y a environ 7 ans

madix: hebdobot est vraiment bien comme outil et les améliorations proposées nous rendraient tellement heureuses :)

Mis à jour par Christian P. Momon il y a presque 7 ans

J'ai créé un script build.sh à la racine du projet et une série de scripts Ant qui font le travail.

> ./build.sh -h
Hebdobot build script.
Usage: build.sh [ -h | -help | --help | -snapshot | -local | -full ]
     -h, -help, --help            display this help.
     -snapshot, --snapshot        build a snapshot.
     -local, --local              build a new version without tag nor version number commit nor GIT push.
     -tagandpush, --tagandpush    build a new version with tag, version number commit and GIT push.

Pour développer, ./build.sh -snapshot et pour générer un build officiel avec tag et push : ./build.sh -tagandpush

Pour la documentation de build : https://admin.april.org/dokuwiki/doku.php?id=sysadm:hebdobot&#builder_hebdobot

Mis à jour par Christian P. Momon il y a presque 7 ans

Qui valide et ferme le ticket ?

Par défaut, j'assigne à qui a ouvert le ticket : Polux \o/

Mis à jour par Christian P. Momon il y a presque 7 ans

  • Assigné à changé de Christian P. Momon à François Poulain

Mis à jour par François Poulain il y a presque 7 ans

  • Statut changé de Nouveau à En cours de traitement
  • Assigné à changé de François Poulain à Christian P. Momon

Coucou,

root@bots:/srv/hebdobot/hebdobot# ./build.sh -snapshot
./build.sh: line 2: mvn: command not found
mkdir: cannot create directory ‘target/hebdobot’: No such file or directory
cp: cannot stat 'target/hebdobot-*.jar': No such file or directory
cp: target 'target/hebdobot' is not a directory
cp: cannot create regular file 'target/hebdobot': No such file or directory
./build.sh: line 7: mvn: command not found
./build.sh: line 8: launch4j: command not found
./build.sh: line 9: cd: target: No such file or directory
./build.sh: line 9: zip: command not found

J'ai loupé un truc ?

Aussi, dans la doc, on lit « Les prérequis à un build sont : un JDK 8, Ant ». Tu peux stp traduire ces prérequis en paquet debian pour que le néophyte s'y retrouve ?

PS: je te rend l'assignation, pas besoin de se refiler le bébé à chaque fois, je lis mes emails. :)

Mis à jour par Christian P. Momon il y a presque 7 ans

J'ai loupé un truc ?

Oui ! Je précise :

1) je n'ai rien touché dans /srv/hebdobot/ afin de conserver une version fonctionnelle d'Hebdobot :-)
Et donc, le dossier GIT /srv/hebdobot/hebdobot/ n'est pas à jour.
Pour information, les modifications que tu avais faite sont dans la branche april-wasted2017.

2) la VM bots n'est pas un environnement de build.
Actuellement, je développe et teste depuis ma machine perso (en lançant depuis Eclipse ou en ligne de commande via hebdobot.sh -c confdetest). Donc je n'ai mis nul part les sources d'Hebdobot v2 sur la VM bots.
Et donc il faut cloner le projet sur une machine adaptée (voir commande git clone dans la doc : https://admin.april.org/dokuwiki/doku.php?id=sysadm:hebdobot#builder_hebdobot).
Nous pouvons faire le choix de builder sur la VM bots. Ici, les prérequis sont « légers » (paquets openjdk-8-jdk et ant). J'aurai alors envie de cloner vers /srv/hebdobot-test/git.
Précédemment, la VM admin avait été citée comme machine potentielle de build, ce qui obligerait à chaque fois à « déployer » le zip (en attendant un éventuel paquet deb).
Usages à définir : comment verriez-vous ça ?

3) où déposer un build ?
D'où qu'on build, le résultat est un zip qu'on déploie. Ça se fait de stocker les build. Dans notre cas, ça serait où ?

Aussi, dans la doc, on lit « Les prérequis à un build sont : un JDK 8, Ant ». Tu peux stp traduire ces prérequis en paquet debian pour que le néophyte s'y retrouve ?

Oui, très bonne idée, fait (https://admin.april.org/dokuwiki/doku.php?id=sysadm:hebdobot&#builder_hebdobot).

PS: je te rends l'assignation, pas besoin de se refiler le bébé à chaque fois, je lis mes emails. :)

Ça marche :)

Mis à jour par François Poulain il y a presque 7 ans

Et donc, le dossier GIT /srv/hebdobot/hebdobot/ n'est pas à jour.

Ok.

Usages à définir : comment verriez-vous ça ?

Perso je simplifierais au maximum : build sur la machine bots ; déploiement par un cp une fois les tests fonctionnels passés.

Mis à jour par Christian P. Momon il y a presque 7 ans

Sur IRC #april-admin, le 09/01/2018 :

13:54 < cpm_screen> yop, https://agir.april.org/issues/2745, du coup, vos avis pour l'approche KISS-issime de builder sur la VM bots ?
13:57 < benj> cpm_screen: c'est très bien
13:57 < benj> cpm_screen: idéalement, un « ant install » serait parfait, mais une intégration à la main documentée me suffit

Donc, ok, j'ai fait un
> apt-get install openjdk-8-jdk-headless ant
qui fait que les prérequis sont ok.

Question subsidiaire : comment cloner un dépôt GIT Agir sur la VM bots ?

Mis à jour par Christian P. Momon il y a plus de 3 ans

  • Statut changé de En cours de traitement à Résolu

La question subsidiaire n'a plus d'intérêt depuis https://forge.april.org/adminsys/hebdobot.
Fermeture du ticket.

Actions

Formats disponibles : Atom PDF