Hello Jake, On Friday 30 April 2010 13:00:21 Jake Scott wrote: > Hi all. > > I'm new to Bacula but would like to work on some new features and > enhancements. I have seen the Projects page on the web site and they don't > include the enhancements I had in mind. > > What's your policy on accepting patches? Do the changes need to be added > to Projects first and agreed, or are you willing to accept feature code > that's been discussed here?
No the proposed features do not need to be added to Projects first. We accept many patches that come out of the blue, but if we haven't previously discussed it, they risk to be rejected. So by far the best procedure is to discuss what you want to do before hand, and get a rough agreement for some feature. > What's your GIT workflow?.. The experienced developers push directly to the repo. The developers not completely comfortable generally send us git format-patches that we integrate. If you are doing a big project, it will normally be done on your own branch that you would either push to Source Forge or otherwise share with us from time to time until it is merged. Most of the time, I *much* prefer doing reasonable size coding on a branch then rebasing it before merging it into master. > > The features that I'd like to work on are : > - Automated configuration of storage devices in a library (using > serialization) It would be nice to have automated configuration of storage devices, but unless you have some trick, it is generally quite system dependent, and we try as much as possible to avoid system dependent code. In addition, storage configuration at all but the very largest sites is generally done once in about 10 minutes when initially installing Bacula. > - Support for native Linux changer device (more robust that MTX in my > experience) If it requires Bacula to send SCSI commands to the control channel, then it is very unlikely we would accept the code. It is much better to have such highly dependent system code in a separate program. If you can write better code than MTX, it might be worthwhile creating a new program. If Linux has some simple way of working an autochanger that can do everything that MTX can in the same simple ways that MTX works, that could be interesting. > - Device sharing between SDs That could be interesting for very large sites. However, I think it would be much more interesting to have one Bacula SD be able to communicate to another one (i.e. write to two different SDs at the same time). > - SQL Server agent We have just now changed the name of plugin/agent/runscript to "module". We are currently working on a Windows System State module, and the SQL server will probably pretty much "fall out" of that implementation. > - MySQL and SapDB agents Yes, those would be very interesting -- most of all the SapDB or an Oracle module. We are currently working on an Oracle module. > - Support for configurtion data in the databsae (eg. device configs) I'm not too much in favor of having Bacula conf data in the database because it complicates bare metal recovery, but if you are talking about keeping statistics, usage, ... of SD devices in the database, yes. I implemented that some years ago, but was unhappy with the implementation, so some tables are already there, and there is some code in Bacula for maintaining them, but it is all turned off. I would like to see this work completed. > - Enhancments to allow easier reporting hooks Yes, that would be very nice. > - Administrative ACLs and auditing Yes, those features are becoming very important. For example, it would be nice to know what console (or who) started a particular job, ... I assume you have seen what are called "restricted consoles", which goes a long ways towards creating administrative ACLs. > - Windows port of the server components This is already done. I recently turned the code off, because we do not have anyone to support the Windows servers. If you are ready, willing, and able to do it, I would welcome it. We are currently spending a *lot* of effort improving our Windows offering (modules, bare metal recovery, ...) > - Tape encryption Yes, something really needed. > > Does any of that sound interesting? Yes, most of it sounds very interesting. As noted above I have a few reservations in a few areas that may or may not apply to what you are thinking about doing. To get started, I recommend reading the Developer's guide. You will find a lot of questions about how we work answered there. Then fill out two copies of the Fiduciary License Agreement (FLA) and send them in. See www.bacula.org -> FSFE License > Lemme know.. > > Great. Thanks for the offer. We look forward to your help! Best regards, Kern ------------------------------------------------------------------------------ _______________________________________________ Bacula-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/bacula-devel
