Launchpad: CLI "Pakete kopieren"

8

Ich verwende Launchpad, um a .dsc, a debian.tar.gzund a hochzuladen .orig.tar.xz. Das Orig-Archiv enthält sowohl i386- als auch amd64-Dateien und ich verwende sie debian/rules, um verschiedene Architekturpakete zu erstellen. Es baut jedoch nur auf Trusty-Serien auf. Ich möchte die Funktion Pakete kopieren verwenden , möchte aber, dass sie automatisiert wird.

Derzeit muss ich verbinden Launchpad , klicken Sie auf Ansicht Paket - Details , klicken Sie auf Kopieren von Paketen und Verwendung:

> Destination PPA:
> This PPA

> Destination series:
> Utopic

> Copy existing binaries

Gibt es eine Möglichkeit, all dies zu automatisieren, "die vorhandenen Binärdateien aus der älteren Serie in die neue Serie zu kopieren" oder dies über die CLI zu tun, um es in einem Skript zu verwenden?

Vielen Dank


Führt :

  • F:ubuntu-archive-tools Kann mir vielleicht dabei helfen, es scheint ein Python-Skript für ein Kopierpaket zu haben?

    A: Damit funktioniert es nicht:python copy-package -y -b --ppa-name=myname/myppa --to-ppa-name=myname/myppa -s trusty --to-suite=utopic -e versionofpackage

  • F: Vielleicht, wenn ich meinen Änderungsprotokolleintrag von trusty ; urgency=lowauf ändere utopic trusty ; urgency=low?

    A: Es funktioniert nicht:Unable to find distroseries: utopic trusty. Further error processing not possible because of a critical previous error.

  • F: Build 1 orig.tar.xzund mehrere .dsc&debian.tar.gz

    A: Ich erstelle derzeit eine inkrementierte Versionsnummer (dh mypackage-1.1.0-0trusty0und mypackage-1.1.0-0utopic0), aber die Lösung könnte besser sein, da ich die orig.tar.xzfür jede neu hochladen muss und sie doppelt so viel Platz in der PPA einnimmt, da die erstellten .debnicht als Kopie von betrachtet werden einander aber 2 Pakete.

MrVaykadji
quelle
1
Für den Datensatz müssen Sie das nicht erneut hochladen, orig.tar.xzwenn Sie es bereits zuvor hochgeladen haben. Führen Sie debuild -sd(oder dpkg-build-package -sd) aus, um eine .changesDatei zu generieren , die den ursprünglichen Tarball nicht hochlädt.
saiarcot895
Welchen Fehler haben Sie bei der ersten Methode bekommen?
Saiarcot895
Danke für den ersten Tipp @ saiarcot895, ich werde ihn benutzen !! Die erste Methode hat nichts ausgegeben, ich denke, das liegt daran, dass sie --to-suitenicht für "Serien" gemacht ist, sondern für etwas anderes. Ich weiß es nicht. Es schien zu funktionieren, aber an meinem PPA änderte sich nichts.
MrVaykadji
1
--to-suiteist für die Serie. Ich würde das -eFlag nicht angeben, da standardmäßig die neueste Version ausgewählt wird. Versuchen Sie auch, Aufspaltung --ppa-name=myname/myppazu -p myname --ppa-name=myppa, da --ppa-namenur den Namen des PPA will. Außerdem müssen Sie nicht angeben, --to-*ob es dasselbe ist wie das von.
Saiarcot895
@ saiarcot895: Ich kann das Kopierpaket nicht zum Laufen bringen. Ich habe ein Autorisierungstoken, ich bin der Eigentümer der PPA, aber es funktioniert nicht.
MrVaykadji

Antworten:

2

copy-package ist gut dafür, aber die richtige moderne Anrufung wäre:

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

(Wie saiarcot895 richtig erwähnt, benötigt man zu trennen --ppaund --ppa-name, aber das war immer sehr verwirrend , was einer der Gründe war , dass wir die einheitliche hinzugefügt --fromund --toOptionen zur Angabe Archiven. Auch Sie den Paketnamen enthalten vernachlässigt, was wahrscheinlich war , warum Sie nicht bekommen Ausgabe; neuere Versionen copy-packageprüfen dies.)

Colin Watson
quelle