how to get files from jenkins.ovirt.org to www.ovirt.org

Mike Burns mburns at redhat.com
Tue Jul 31 12:33:01 UTC 2012


On Tue, 2012-07-31 at 02:46 -0400, Eyal Edri wrote:
> Hi,
> 
> after looking into the process and testing it via jenkins.ovirt.info,
> here is my proposal:
> 
> 1. Nightly job [1] will collect rpms from all ovirt projects (other
> jenkins jobs that build rpms per commit).
>    1.1 all files will be kept in a flat dir under $WORKSPCE/rpms 
>    1.2 using 'publish over ssh' [2] plugin the job will then copy
> files to their destination according to their names. [3]
>        for e.g 	'ovirt-engine-3.1.0-3.fc17.noarch.rpm' ==>
> ovirt.org/var/www/html/releases/nightly/rpm/Fedora/17/noarch
>                 'ovirt-engine-3.1.0-3.fc17.src.rpm' ==>
> ovirt.org/var/www/html/releases/nightly/rpm/Fedora/17/src
>                 'ovirt-engine-3.1.0-3.bz2' ==>
> ovirt.org/var/www/html/releases/nightly/src' 
>    1.3 publish ssh plugin can execute a command after its done copying
> the file, so all is left is to run 'createrepo' on the relevant dirs.
> [4]
>  
> 
> 2. a separate cron cleaning script needs to run on ovirt.org to delete
> old rpms and run createrepo. 
> 

Maybe upload to a non-published directory first,
like /home/jenkins/nightly, and have the cron job handle cleanup of old
rpms, adding of new rpms, and running createrepo?

If not, how is the cron job going to cleanup old rpms?

Uploading to a static location that isn't public (and is
under /home/jenkins) would make [3] and [4] unnecessary.  I think I'd
rather avoid having a non-user with sudo and r/w on a publicly served
folder.

The publish ssh plugin can touch a file /home/jenkins/nightly/FINISHED
when it's done, the cron job locally on ovirt.org can watch for that
file and then process the directory structure.

Mike

> 
> +1 for pushing this forward or comments? 
> 
> Eyal.
> 
> 
> [1]
> http://jenkins.ovirt.org/view/rpms/job/publish_ovirt_rpms_nightly/,
> this job currently works only for fedora17 rpms (that's what we have
> now).
>     we'll need to improve it to be more generic (maybe as a matrix
> job) or duplicate it for each opertating system.
> [2] https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+SSH
> +Plugin, using pub/private key with user jenkins to connect
> [3] jenkins user will need r/q permissions to the nightly folder
> [4] will need sudo access for it. 
> _______________________________________________
> Infra mailing list
> Infra at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/infra





More information about the Infra mailing list