启动板:CLI“复制软件包”


8

我正在使用Launchpad上传a .dsc,a debian.tar.gz和a .orig.tar.xz。orig归档文件同时包含i386和amd64文件,并且我使用它debian/rules来构建不同的体系结构软件包。但这仅建立在Trusty系列上。我想使用“ 复制软件包 ”功能,但我希望它是自动化的。

当前,我必须连接到Launchpad,单击“ 查看软件包详细信息”,再单击“ 复制软件包”,然后使用:

> Destination PPA:
> This PPA

> Destination series:
> Utopic

> Copy existing binaries

有没有一种方法可以自动执行所有“将现有二进制文件从旧系列复制到新系列”的操作,或者通过CLI在脚本中使用它来进行自动操作?

谢谢


潜在客户:

  • 问:也许ubuntu-archive-tools可以帮我做到这一点,它似乎有一个可复制包装的python脚本?

    答:不适用于此:python copy-package -y -b --ppa-name=myname/myppa --to-ppa-name=myname/myppa -s trusty --to-suite=utopic -e versionofpackage

  • 问:也许我可以将变更日志条目从更改trusty ; urgency=lowutopic trusty ; urgency=low

    答:这是行不通的:Unable to find distroseries: utopic trusty. Further error processing not possible because of a critical previous error.

  • 问: Build 1 orig.tar.xz和多个.dscdebian.tar.gz

    答:我目前正在构建一个递增的版本号(即mypackage-1.1.0-0trusty0mypackage-1.1.0-0utopic0),但是解决方案可能会更好,因为我必须orig.tar.xz为每个版本重新上载,并且它在PPA中所占的比例是两倍,因为构建.deb的版本不被视为的副本。彼此,但2包。


1
作为记录,orig.tar.xz如果您之前已经上传过,则不必重新上传。运行debuild -sd(或dpkg-build-package -sd)以生成.changes不上传原始tarball的文件。
saiarcot895 2014年

第一种方法遇到什么错误?
saiarcot895 2014年

感谢您的第一个提示@ saiarcot895,我将使用它!第一种方法没有输出任何东西,我认为这是因为--to-suite不是针对“系列”而是针对其他东西。我不知道。它似乎可以正常工作,但我的PPA没有任何改变。
MrVaykadji 2014年

1
--to-suite是该系列的。我不会指定该-e标志,因为默认情况下将选择最新版本。另外,请尝试拆分--ppa-name=myname/myppa-p myname --ppa-name=myppa,因为--ppa-name只需要PPA的名称。另外,您无需指定--to-*它是否与from相同。
saiarcot895 2014年

@ saiarcot895:我无法使复制程序包正常工作。我有一个授权令牌,我是PPA的所有者,但是它不起作用。
MrVaykadji 2014年

Answers:


2

copy-package 对此有好处,但是正确的现代调用将是:

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

(如saiarcot895正确指出的那样,您需要将--ppa和分开--ppa-name,但这总是很令人困惑,这是我们添加了用于指定档案的统一--from--to选项的原因之一。此外,您还忽略了软件包名称,这可能就是为什么您没有获得软件包名称的原因。输出;copy-package对此进行检查的最新版本。)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.