Activity log for bug #2039495

Date Who What changed Old value New value Message
2023-10-16 21:15:12 Dan Ryan bug added bug
2023-10-16 21:15:26 Dan Ryan description This is a follow up to LP#2022095 As part of several security team projects that interface with artifactory, we maintain some PPAs that use artifactory as a backend. We are trying to use the copyPackages API to move packages between several of these repositories. We are now able to copyPackages() successfully, however, we have run into the following issues: * copyPackages() only copies a single version of a given package. Because we must provide only a list of source package names to the api call, we have no control over which version is copied, but launchpad only seems to copy one version of a given package. I do not know how that version is selected, but I suspect it is either the most recently modified/released version, or the latest version. As we are managing python packages here, we are not bound by archive-like restrictions whereby we keep only one version of each package, so the normal assumptions that would apply to the archive do not apply to us. We probably need a way to specify either the version(s) we want, or to just copy all of the versions. * copyPackages() does not copy all artifacts. In some instances, we have built architecture specific wheels for a package (e.g. for arm+amd64). Even for the version of the package selected, launchpad does not copy both the arm and the amd64 wheel. It appears to choose only one wheel (for every case I examined, it copied the arm wheel). Again, I'm not sure how it is making this choice, maybe it is the most recently uploaded wheel? Thanks for investigating! This is a follow up to #2022095 As part of several security team projects that interface with artifactory, we maintain some PPAs that use artifactory as a backend. We are trying to use the copyPackages API to move packages between several of these repositories. We are now able to copyPackages() successfully, however, we have run into the following issues: * copyPackages() only copies a single version of a given package. Because we must provide only a list of source package names to the api call, we have no control over which version is copied, but launchpad only seems to copy one version of a given package. I do not know how that version is selected, but I suspect it is either the most recently modified/released version, or the latest version. As we are managing python packages here, we are not bound by archive-like restrictions whereby we keep only one version of each package, so the normal assumptions that would apply to the archive do not apply to us. We probably need a way to specify either the version(s) we want, or to just copy all of the versions. * copyPackages() does not copy all artifacts. In some instances, we have built architecture specific wheels for a package (e.g. for arm+amd64). Even for the version of the package selected, launchpad does not copy both the arm and the amd64 wheel. It appears to choose only one wheel (for every case I examined, it copied the arm wheel). Again, I'm not sure how it is making this choice, maybe it is the most recently uploaded wheel? Thanks for investigating!
2023-10-16 21:15:56 Dan Ryan description This is a follow up to #2022095 As part of several security team projects that interface with artifactory, we maintain some PPAs that use artifactory as a backend. We are trying to use the copyPackages API to move packages between several of these repositories. We are now able to copyPackages() successfully, however, we have run into the following issues: * copyPackages() only copies a single version of a given package. Because we must provide only a list of source package names to the api call, we have no control over which version is copied, but launchpad only seems to copy one version of a given package. I do not know how that version is selected, but I suspect it is either the most recently modified/released version, or the latest version. As we are managing python packages here, we are not bound by archive-like restrictions whereby we keep only one version of each package, so the normal assumptions that would apply to the archive do not apply to us. We probably need a way to specify either the version(s) we want, or to just copy all of the versions. * copyPackages() does not copy all artifacts. In some instances, we have built architecture specific wheels for a package (e.g. for arm+amd64). Even for the version of the package selected, launchpad does not copy both the arm and the amd64 wheel. It appears to choose only one wheel (for every case I examined, it copied the arm wheel). Again, I'm not sure how it is making this choice, maybe it is the most recently uploaded wheel? Thanks for investigating! This is a follow up to lp#2022095 As part of several security team projects that interface with artifactory, we maintain some PPAs that use artifactory as a backend. We are trying to use the copyPackages API to move packages between several of these repositories. We are now able to copyPackages() successfully, however, we have run into the following issues: * copyPackages() only copies a single version of a given package. Because we must provide only a list of source package names to the api call, we have no control over which version is copied, but launchpad only seems to copy one version of a given package. I do not know how that version is selected, but I suspect it is either the most recently modified/released version, or the latest version. As we are managing python packages here, we are not bound by archive-like restrictions whereby we keep only one version of each package, so the normal assumptions that would apply to the archive do not apply to us. We probably need a way to specify either the version(s) we want, or to just copy all of the versions. * copyPackages() does not copy all artifacts. In some instances, we have built architecture specific wheels for a package (e.g. for arm+amd64). Even for the version of the package selected, launchpad does not copy both the arm and the amd64 wheel. It appears to choose only one wheel (for every case I examined, it copied the arm wheel). Again, I'm not sure how it is making this choice, maybe it is the most recently uploaded wheel? Thanks for investigating!