I played around with testing this on dogfood with the following test plan:
0 Ensure that ~michael.nelson/+archive/pocketsphinx is private
1 Upload a new version of pocketsphinx to ~michael.nelson/+archive/pocketsphinx
that is for contrib component (Done). It will be overridden to main when
published. Run ppa-run.sh.
2 Wait for i386 build to build successfully (Done).
3 in a harness (or the API if available), do the archive.syncSource()
with binaries included, as shown in https://lp-oops.canonical.com/oops.py/?oopsid=1405B2440 and verify
that it fails with the same traceback.
{{{
>>> ubuntu = getUtility(IDistributionSet)['ubuntu']
>>> ubuntu.main_archive
<Archive at 0xae2c10c>
>>> ubuntu.main_archive.title
u'Primary Archive for Ubuntu'
>>> primary_archive = ubuntu.main_archive
>>> myppa = getUtility(IPersonSet).getByName('michael.nelson').ppas[0]
>>> myppa.title
u'Pocketsphinx packages for karmic'
>>> karmic = ubuntu['karmic']
>>> ret_val = primary_archive.syncSource(from_archive=myppa, include_binaries=True, source_name='pocketsphinx', to_pocket='Security', to_series='karmic', version='0.5.1+dfsg1-0ubuntu1+ppa1')
}}}
although the test was invalid as I didn't have a private PPA the first time. But while going through this, I realised that the same fix needs to be done for the builds being included in the copy (see PackageUploadBuild.checkComponentAndSection()), and the test will need to be updated to test this also.
So, this won't land in 3.1.12, but I'll aim to land it first thing in the next release.
I played around with testing this on dogfood with the following test plan:
0 Ensure that ~michael. nelson/ +archive/ pocketsphinx is private nelson/ +archive/ pocketsphinx syncSource( ) /lp-oops. canonical. com/oops. py/?oopsid= 1405B2440 and verify IDistributionSe t)['ubuntu' ] main_archive. title IPersonSet) .getByName( 'michael. nelson' ).ppas[ 0] archive. syncSource( from_archive= myppa, include_ binaries= True, source_ name='pocketsph inx', to_pocket= 'Security' , to_series='karmic', version= '0.5.1+ dfsg1-0ubuntu1+ ppa1')
1 Upload a new version of pocketsphinx to ~michael.
that is for contrib component (Done). It will be overridden to main when
published. Run ppa-run.sh.
2 Wait for i386 build to build successfully (Done).
3 in a harness (or the API if available), do the archive.
with binaries included, as shown in
https:/
that it fails with the same traceback.
{{{
>>> ubuntu = getUtility(
>>> ubuntu.main_archive
<Archive at 0xae2c10c>
>>> ubuntu.
u'Primary Archive for Ubuntu'
>>> primary_archive = ubuntu.main_archive
>>> myppa = getUtility(
>>> myppa.title
u'Pocketsphinx packages for karmic'
>>> karmic = ubuntu['karmic']
>>> ret_val = primary_
}}}
although the test was invalid as I didn't have a private PPA the first time. But while going through this, I realised that the same fix needs to be done for the builds being included in the copy (see PackageUploadBu ild.checkCompon entAndSection( )), and the test will need to be updated to test this also.
So, this won't land in 3.1.12, but I'll aim to land it first thing in the next release.