Publishing packages from CI builds sometimes creates duplication
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
New
|
Undecided
|
Unassigned |
Bug Description
I want to preface this with the fact that I'm not entirely sure if this is a real issue yet.
Today I was publishing the python package `editables` in a private distribution targeting artifactory from a CI build available here: https:/
I published this using the `lpcraft release` command written some time ago by @cjwatson
The package is not currently present in artifactory and it had been around 20-30 minutes, so I wanted to check whether there was something blocking its publication. I created a launchpad client from a python session and checked the private PPA that targets artifactory:
>>> archive = lp.archives.
>>> binaries = [_ for _ in archive.
>>> editable_binaries = [_ for _ in binaries if _.binary_
Typically my first check at this point is to make sure there is only one binary (there should only be one version of the package):
>>> len(editable_
3
So I looked a bit more carefully:
>>> [_.status for _ in editable_binaries]
['Pending', 'Pending', 'Pending']
>>> [_.date_created for _ in editable_binaries]
[datetime.
>>> len({url for _ in editable_binaries for url in _.binaryFileUrl
1
As you can see they are all 3 'Pending', all published today at the *exact* same timestamp, and share identical URLs.
I gave this a bit more time and the package did ultimately publish, but interestingly there are still 3 packages that turn up, with all 3 indicating they are published now:
>>> binaries = [_ for _ in archive.
>>> editable_binaries = [_ for _ in binaries if _.binary_
>>> [_.status for _ in editable_binaries]
['Published', 'Published', 'Published']
Again I have no idea if this is a serious issue but I am not sure if this is intended and wonder if it is a cause of some other issues I've seen with mysterious duplication of released items.