makkalot@xxxxxxxxx wrote:
On Wednesday 25 February 2009 05:43:16 am Arthur Pemberton wrote:
Hi,
And actually implemented it better than I had in mind.
My name is Arthur Pemberton, and I was just browsing through the
Google Summer of Code 2008. And it looks a lot like this idea that I
had in mind, except that i did actually start coding it, except for
starting a file tree [1].
?
So I am curious as to if working on this to kind of merge in my
(incomplete) idea would be a welcomed GSoC project.
So here is the idea I had:
First of all, I named my idea LiCo (short for Linux Commander). The
idea was to make point and click admin types comfortable with managing
groups of machines (so forgive any proceeding Windows analogies). I
was going to create a UI, the only part I actually started, with PyQt
and use python over SSH to command n number of Linux machines to do
simple operations: 'update machine', 'sync time', 'copy remote file'
Func uses XML-RPC over SSL which is kind of better than ssh because it already
does all the serialization things between end points. There is already a UI
(web-based) FuncWeb written in Python and uses Func API directly. However a
UI written in PyQT maybe interesting also u can help improving the current
one. Also u can add new modules to Func as u said above 'update
machine', 'sync time', 'copy remote file' (i think we have them) if u want to
make some contribution. Current modules are mostly written for fedora,redhat
machines having different modules for other platforms is also and interesting
idea.
A typical use case would be:
1) browse through machines and machine groups
2) choose machines machine groups (list of machines would be flattened
internally)
3) Create a batch of actions to run against those machines
4) Hit the 'Run' button
5) Operations begin executing in the background (probably with the
ability to attach a viewing window to any machine)
The Funcweb already has them ;)
Features I had in mind:
* plugin architecture (each plugin would handle its actions, and draw
any required dailog boxes)
* capable of handling valid combinations of: password login, key
login, root login (sudo, su -)
* be able to organize machines into non-exclusive groups
The Funcweb already has them ;) except those :
* run well across Windows, Linux and MacOS
* could be "compiled" with py2exe for Windows.
One significant differences between my idea and Func's actual
implemntation (if I've read correctly) is that I was hoping to use ssh
only, so the controlled machine would need no additional software, but
I am not even yet sure how feasible that is so Func's approach seems
more realistic.
There was an idea of having a pluggable structure for supporting different
kind of conenctionns in Func (like QMF). That maybe a point u can play on if
interested.
Anyways, if the devs are interested and willing to mentor this as a
GSoC project let me know. If not I'll be looking through your code and
see how things are done as 'LiCo' was to be a long term learning
project for me -- so your code would be very educational.
I'm not a core developer but last year i was in GSOC2008 and spent some great
time with Func and its developers so, it maybe better to contribute to Func
project instead of reinventing the things ...
_______________________________________________
Func-list mailing list
Func-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/func-list
FuncWeb is definitely a neat idea. If you're interested in adding to
it, Arthur, I think it could have an interesting future.
As for the "no software installed/SSH" thing, no, Func is designed to
/not/ require SSH key deployment, as that is actually somewhat /easier/
to deploy
than SSH in many instances.
It's not really a problem when you deploy your machines originally such
that they have Func installed from day 1, and we have some instructions
for using Cobbler to do this up at http://fedorahosted.org/cobbler.
I suspect the Windows port may be challenging, but as long as the crypto
libraries still are available and some of the things that deal with
paths can be sufficiently abstracted
and coded around, it should be possible. We have talked about making
the modules smart enough to know how to do things a bit differently on
different platforms.
Take a look if you like...
--Michael
_______________________________________________
Func-list mailing list
Func-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/func-list