On Wed, Aug 15, 2007 at 09:38:27PM -0300, James Oakley wrote:
I had some trouble with the obs_mirror_project in the new build of obs-server, so I rewrote it in Python. It's called exactly the same way but it differs in the following ways:
- Uses the osc library directly to perform api operations
- Instead of downloading every single RPM on every invocation, it only downloads RPMs that have not already been downloaded
- RPMs are downloaded to a temporary directly and moved to the local project once completed. If a download fails, there won't be any half-downloaded RPMs causing buildroot failures
- RPMs that are no longer on the api server are cleaned up
- Download progress is displayed
An idea, regardless of the usefulness of a "mirror binaries" tool: How about implementing the import of e.g. 10.2 binaries into a local buildservice instance by _uploading_ the binaries via the api? Instead of writing the prj xml, the prf conf and all the binaries into the local filesystem, it should be possible to do this via the _api_. This way we would get rid of the requirement to chown files to the obsrun user. There are api calls to save prj xml and config, but I'm not sure about a "put binary" path. Does that exist? Peter -- "WARNING: This bug is visible to non-employees. Please be respectful!" SUSE LINUX Products GmbH Research & Development