web-dev-qa-db-fra.com

Launchpad: CLI "Copie de packages"

J'utilise Launchpad pour télécharger un .dsc, une debian.tar.gz et un .orig.tar.xz. L'archive orig contient à la fois des fichiers i386 et AMD64, et j'utilise debian/rules pour construire différents packages d'architecture. Mais il ne s'appuie que sur la série Trusty. Je voudrais utiliser la fonctionnalité Copier les packages , mais je veux qu'elle soit automatisée.

Actuellement, je dois me connecter à Launchpad, cliquer Afficher les détails du package, cliquer Copier les packages, et utiliser:

> Destination PPA:
> This PPA

> Destination series:
> Utopic

> Copy existing binaries

Existe-t-il un moyen d'automatiser tout cela "copier les binaires existants de l'ancienne série vers la nouvelle série", ou de le faire via CLI pour l'utiliser dans un script?

Je vous remercie


Pistes :

  • Q: Peut-être ubuntu-archive-tools peut m'aider à le faire, il semble avoir un package de copie python?

    A: Cela ne fonctionne pas avec ça: python copy-package -y -b --ppa-name=myname/myppa --to-ppa-name=myname/myppa -s trusty --to-suite=utopic -e versionofpackage

  • Q: Peut-être que si je change mon entrée de journal des modifications de trusty ; urgency=low à utopic trusty ; urgency=low?

    A: Cela ne fonctionne pas: Unable to find distroseries: utopic trusty. Further error processing not possible because of a critical previous error.

  • Q: Build 1 orig.tar.xz et plusieurs .dsc & debian.tar.gz

    R: Je crée actuellement un numéro de version incrémenté (c'est-à-dire mypackage-1.1.0-0trusty0 et mypackage-1.1.0-0utopic0), mais la solution pourrait être meilleure car je dois re-uploader le orig.tar.xz pour chacun et qu'il prend deux fois plus de place dans le PPA depuis la construction .deb ne sont pas considérés comme une copie l'un de l'autre, mais comme deux packages.

8
MrVaykadji

copy-package est bon pour cela, mais l'invocation moderne correcte serait:

./copy-package --from=~myname/ubuntu/myppa --from-suite=trusty --to=~myname/ubuntu/myppa --to-suite=utopic -b -y packagename

(Comme saiarcot895 l'a correctement noté, vous devez séparer --ppa et --ppa-name, mais cela a toujours été très déroutant, ce qui est l'une des raisons pour lesquelles nous avons ajouté le système unifié --from et --to options pour spécifier les archives. De plus, vous avez négligé d'inclure le nom du package, ce qui est probablement la raison pour laquelle vous n'avez obtenu aucune sortie; versions plus récentes de copy-package vérifiez cela.)

2
Colin Watson