Pour un backport de paquet qui existe déjà dans Debian, on peut utiliser dgit :
$ dgit clone django-haystack $ cd django-haystack $ # si debian/patches/series existe, le retirer, parce que eobuilder va recréer le .orig.tar.gz avec les patchs déjà appliqués $ git rm -f debian/patches/series && git commit debian/patches/series $ git remote add eo git@git.entrouvert.org:debian/django-haystack $ git push -u eo dgit/sid:main
Puis lancer https://jenkins.entrouvert.org/job/debs/.
curl -X POST --user user:token "https://jenkins.entrouvert.org/job/debs/buildWithParameters?GIT_PROJECT=debian/django-haystack&DEBIAN_VERSIONS=buster,bullseye"
debian/rules
¶#!/usr/bin/make -f # -*- makefile -*- export PYBUILD_NAME=combo <-- ici nom de la distribution déclaré dans setup.py ou pyproject.ml, ou plutôt suffix qui suivra python(3)- dans le nom du paquet, j'ai un doute ici export PYBUILD_DISABLE=test %: dh $@ --with python3 --buildsystem=pybuild <-- rajouter python2 si besoin, systemd si brique override_dh_install: <-- uniquement pour les briques dh_install mv $(CURDIR)/debian/python3-<project>/usr/bin/manage.py $(CURDIR)/debian/<project>/usr/lib/<project>/manage.py
debian/python(3)-x.install
¶Inutile.
debian/project.install
pour les briques (applications Django)¶On ne doit trouver que ces fichiers (.init, .service, .cron, etc.. installé automatiquement)
debian/combo-manage /usr/bin debian/settings.py /etc/combo debian/uwsgi.ini /etc/combo debian/debian_config.py /usr/lib/combo
Le manage surchargé, le settings de base, le uwsgi de base et le debian_config.py de base.
Exemple :
git clone ssh://git@git.entrouvert.org/debian/factur-x git remote add github https://github.com/akretion/factur-x.git ... merge et mise à jour éventuelle de trucs dans debian/, etc. git push
ex de fichier changelog à générer :
wcs (1.12.12.5.g46a0062-1~eob70+1) * (46a0062) tests: check forgotten page where user can set password (#6506) * (edbd295) hobos: change command to only deploy one instance, given as arg (#6486) * (0a58b8f) hobos: rename command to hobo_deploy, to match others (#6486) * (d0e2120) hobos: read json from a file if a filename is given on the command line (#6486) * (377911a) email: do starttls if advertised by the server (#6453) wcs (1.12.12-0) $dist; urgency=low * (8df6312) release 1.12.12 * (c631b0a) ctl: fix display of list of commands * (b199f1d) update french translation -- eobuilder <eobuilder@entrouvert.com> Date... wcs (1.12.11-0) $dist; urgency=low * (a563be0) release 1.12.11 * (e54d2eb) form: fix handling of date in iso format in French-configured sites (#6390) * (1505495) use new password entry widget for register page (#5805) * (4a91c26) form: turn file type check into a hard check (#6134) * ... -- eobuilder <eobuilder@entrouvert.com> Date... ...
Dans la dépôt git du projet, les fichiers qui sont "usuellement" édités sont à la racine du dépôt dans le dossier debian/
debian/control
:Package: publik-base-theme Architecture: all Depends: ${shlibs:Depends}, ${misc:Depends}, python-xstatic-abrilfatface Conflicts: python-authentic2 (< 2.1.20.742.gb6ee096-0) Breaks: combo (< 0.7.1) Description: Publik Base Theme
debian/publik-base-theme.dirs
:/etc/combo/settings.d
debian/publik-base-theme.install
:debian/fonts.py /etc/combo/settings.d
Pour ne pas avoir à pousser sur master et attendre de voir la tâche jenkins de notre paquet (par ex. https://jenkins.entrouvert.org/job/publik-base-theme-deb/), on peut localement tester ça sur sa debian avec :
sudo apt install devscripts cd monprojet debuild -uc -us -b