----- Original Message -----
From: "Mo Morsi" <mmorsi(a)redhat.com>
To: "aeolus-devel" <aeolus-devel(a)lists.fedorahosted.org>, "Fedora
Cloud SIG" <cloud(a)lists.fedoraproject.org>,
"Development discussions related to Fedora"
<devel(a)lists.fedoraproject.org>
Sent: Wednesday, October 31, 2012 2:22:47 AM
Subject: Deploying fedora infrastructure (koji) across clouds
// Deploying fedora infrastructure (koji) across clouds
// As promised, steps to deploy kojihub to an openstack instance
communicating with builders on ec2
// Any provider supported by deltacloud will work
// (lots of em:
http://deltacloud.apache.org/drivers.html)
// A short video of these steps in action can be seen here:
//
http://youtu.be/qF2ctg7ItNc
// install deltacloud & drivers
$ sudo yum install wget deltacloud-core deltacloud-core-openstack
deltacloud-core-ec2
// start it
$ deltacloudd -i mock
// small wrapper script around deltacloud:
$ wget
https://raw.github.com/movitto/mycloud/master/mycloud.rb
$ chmod +x mycloud.rb
// template describing kojihub cloud deployment
$ wget
https://raw.github.com/aeolus-incubator/templates/master/fedora_infra/koj...
// template describing kojibuild cloud deployment
$ wget
https://raw.github.com/aeolus-incubator/templates/master/fedora_infra/koj...
// edit kojihub deployment to contain openstack credentials
$ vim koji_f17.xml
// startup an instance on openstack w/ kojihub setup togo
$ ./mycloud.rb koji_f17.xml
// grab public address from output, grab kojibuild ssl credentials
from
new instance
$ scp -i ~/os.key ec2-user@kojihub:/etc/pki/koji/kojiadmin.pem .
$ scp -i ~/os.key ec2-user@kojihub:/etc/pki/koji/koji_ca_cert.crt .
// edit kojibuild deployment to deploy to ec2 w/ correct koji
credentials & hub address
$ vim koji_builder_f17.xml
// startup an instance on ec2 w/ kojibuild communicating w/ the hub
$ ./mycloud.rb koji_builder_f17.xml
// open up a webbrowser, navigating to
http://kojihub/koji to use
your
Koji instance!
A few questions:
#1: How does this take things like ARM or other archs into the picture - ie: I am guessing
we can't really build ARM on ec2? :)
#2: Could there be a way to take a (working) nightly build, build one's package
against that nightly in a personal build of some sort, and somehow have a verification
process that it built in that "personal build" before it goes into rawhide, etc?
(or even... unit tests, etc.)?
I'm mostly thinking about things like "how to not have perpetually broken
rawhide" (avoid checking in things that will likely break the build in the first
place).
Re: the endless anaconda-killing-f18 thread: I know there's been some discussion about
whether or not the devel process really accommodates what needs to happen with something
like a full-blown anaconda re-write - and while I know that "THE CLOUD" is not
the entire solution to that (there are obviously, as others have graciously pointed out,
many other feature/fesco/planning/etc processes intertwined here that also need love) - it
seems like having these capabilities might fit in to a solution, or at least, something on
the road to a better devel/build process.
There are plenty of projects doing CI/CD - and having cloud infra makes this significantly
easier to enable - though obviously not a lot of cases of people doing an OS.
-robyn
-Mo
_______________________________________________
cloud mailing list
cloud(a)lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/cloud