Storage provisioning with cobbler
by Scott Henson
This morning I had a quick idea that I thought I might throw out and see
if anyone else could use it. Basically the idea is having cobbler
provision storage for hosts based upon management classes or some other
configuration management construct. Cobbler would need to be taught
about accessing SAN and NAS devices to construct volumes and SAN luns,
and then have those volumes mounted and/or formatted during the
provisioning process of the host. Anyone think it is a good idea or
have any comments on it?
--
Scott Henson
Red Hat CIS Operator
WVU Alum BSAE/BSME
14 years, 11 months
[PATCH] Support for Fedora 11 imports
by James Laska
---
cobbler/codes.py | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/cobbler/codes.py b/cobbler/codes.py
index 968e517..6da28eb 100644
--- a/cobbler/codes.py
+++ b/cobbler/codes.py
@@ -41,7 +41,7 @@ VALID_OS_BREEDS = [
]
VALID_OS_VERSIONS = {
- "redhat" : [ "rhel2.1", "rhel3", "rhel4", "rhel5", "fedora5", "fedora6", "fedora7", "fedora8", "fedora9", "fedora10", "generic24", "generic26", "other" ],
+ "redhat" : [ "rhel2.1", "rhel3", "rhel4", "rhel5", "fedora5", "fedora6", "fedora7", "fedora8", "fedora9", "fedora10", "fedora11", "generic24", "generic26", "other" ],
"suse" : [ "sles10", "generic24", "generic26", "other" ],
"debian" : [ "etch", "lenny", "generic24", "generic26", "other" ],
"ubuntu" : [ "WartyWarthog", "HoaryHedgehog", "BreezyBadger", "DapperDrake", "EdgyEft", "FeistyFawn", "GutsyGibbon", "HardyHeron", "IntrepidIbex", "JauntyJackalope" ],
--
1.6.2.2
14 years, 11 months
[PATCH] Fix for generic delete
by James Cammarata
Pushed to my github:
commit 315f5d4f8be49dd0c1d7d2c72df26b1d3948d4d3
Author: James Cammarata <jimi(a)sngx.net>
Date: Tue May 26 21:46:05 2009 -0500
Fix for generic delete (remote remove_item uses the object name, not
the handle)
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
14 years, 11 months
[PATCH] Ignore non-present network interfaces in post_install_network_config
by Justin Sherrill
If during execution of this snippit $IFNAME is empty, the the script
will end up executing:
grep $IFNAME /etc/modprobe.conf
which will be:
grep /etc/modprobe.conf
this never will return and results in a hung kickstart. Now the only
reason IFNAME would be null is if at provisioning time, an interface
specified in the system record wasn't present. This might be an 'error
case', but it would be more ideal to simply ignore the interface than to
hang.
Here's the patch:
index e6839f7..7191087 100644
--- a/snippets/post_install_network_config
+++ b/snippets/post_install_network_config
@@ -100,7 +100,7 @@ fi
IFNAME=\$(ifconfig -a | grep -i '$mac' | cut -d ' ' -f 1)
## Rename this interface in modprobe.conf
## FIXME: if both interfaces startwith eth this is wrong
-if [ -f "/etc/modprobe.conf" ]; then
+if [ -f "/etc/modprobe.conf" ] && [ $IFNAME ]; then
grep \$IFNAME /etc/modprobe.conf | sed "s/\$IFNAME/$iname/" >>
/etc/modprobe.conf.cobbler
grep -v \$IFNAME /etc/modprobe.conf >> /etc/modprobe.conf.new
rm -f /etc/modprobe.conf
--
Justin Sherrill, RHCA 1801 Varisty Drive.
Software Engineer Raleigh, NC 27603
Red Hat, Inc.
14 years, 11 months
Idea for secure storage of specific fields
by James Cammarata
So, an idea occurred to me the other night for a possible feature that I
think is a must-have: secure encrypted storage of password fields,
specifically the one used for power management.
My original idea, is for a new set of commands: "cobbler lock/unlock".
This would set a stored password in cobblerd that would be used for
encrypting/decrypting fields. The basis for this idea is the ssh-agent
functionality, where an admin unlocks a key for use allowing non-admins to
use it. Basically, after starting up cobblerd, an admin with privilege
would have to type in the password to make things work correctly.
An alternate idea proposed by Rob Lazzurs is to use public/private crypto
(namely gpg), but for additional security an unlock command would still be
needed to give a pass phrase to unlock the private key to cobblerd. In
this use case, people could still manage objects, but cobbler would not be
able to execute some actions until the pass phrase for the private key was
entered.
Whichever method we used, it would be transparent for users of cobbler,
which would still be controlled via the ownership and ACLs methodology.
The burden would be on the admin to make sure cobblerd was unlocked
Having this secure storage feature would also allow for the use of
per-system and per-profile root passwords to be stored, which would be
extremely useful and a killer feature I think.
Thoughts?
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
14 years, 11 months
Django status update (Cobbler Web 2.0)
by Michael DeHaan
I have the list pages and edit pages /mostly/ working from a common
field definition now.
We've rearranged the Django structure a lot to make it conform better,
so we can use (among other things) custom Django template tags.
Fields like interfaces are all rendered out, and drop downs are
populated... the next step is to make the interface editor widgets,
which were a little complex, once more work for browing
interfaces and editing/creating new ones in (browser) memory.
After that we can look at reworking the save code and most things will
once again be functional.
There are probably a lot of cosmetic things to be done, plus just
checking to make sure we restore feature parity with what we originally
had -- that will take some time.
Though the Django templates are looking crazy nice and simple -- this
should be very good for people adding new fields and should (long term)
get us out of the business of doing much (hard)
work on the web app.
Huge thanks to Dan Radez for helping me out today with the django
pathing migrations and getting the custom template tags working.
--Michael
14 years, 11 months
[PATCH] Fixing modify_list function and merging it with the modify_filter function
by James Cammarata
I was looking through the code last night and noticed you'd commented out
the modify_list function. This is the function that handles all the paging
functions like # of items per page, current page, etc. I've noticed
previously that it was functionally very similar to the modify_filter
function, so I went ahead and merged the filter stuff into the
modify_list() function, and modified the urls and template to use the new
method.
modify_filter() is still in the code, but is no longer being used, but I
left it for now. I added a header comment to the function explaining what
it does, and also added a few comments in the code to clarify things.
Pushed to my github:
commit 3903476bf2955f901487dce0d1916ad93de58e5f
Author: James Cammarata <jimi(a)sngx.net>
Date: Wed May 20 06:33:36 2009 -0500
Fixing modify_list function and merging it with the modify_filter
function
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
14 years, 11 months
Unicode quote and dash characters in kickstart comments causes traceback
by Bryan Schneiders
When attempting to use a kickstart file from
http://oss.tresys.com/projects/clip/wiki/DownloadRelease
I get tracebacks because it contains fancier than necessary dash and quote characters in comments.
Specifically 0x2013, 0x2014, 0x2018 and 0x2019, or –, —, ‘ and ’ respectively. I can fix the kickstart file by replacing these with the standard - and ' characters and I have sent an email to the CLIP developers to inform them of the issue, but I wanted to alert the cobbler developers as well in case this incompatibility should be fixed on both ends.
Here's an example traceback using a kickstart file containing only these 4 lines:
# 0x2013, –
# 0x2014, —
# 0x2018, ‘
# 0x2019, ’
MOD_PYTHON ERROR
ProcessId: 25129
Interpreter: removed
ServerName: removed
DocumentRoot: '/var/www/html'
URI: '/cobbler/web/'
Location: None
Directory: '/var/www/cobbler/web/'
Filename: '/var/www/cobbler/web/'
PathInfo: ''
Phase: 'PythonHandler'
Handler: 'index'
Traceback (most recent call last):
File "/usr/lib/python2.5/site-packages/mod_python/importer.py", line 1537, in HandlerDispatch
default=default_handler, arg=req, silent=hlist.silent)
File "/usr/lib/python2.5/site-packages/mod_python/importer.py", line 1229, in _process_target
result = _execute_target(config, req, object, arg)
File "/usr/lib/python2.5/site-packages/mod_python/importer.py", line 1128, in _execute_target
result = object(arg)
File "/var/www/cobbler/web/index.py", line 130, in handler
content = func( **form )
File "/usr/lib/python2.5/site-packages/cobbler/webui/CobblerWeb.py", line 1171, in ksfile_edit
'ksdata': self.remote.read_or_write_kickstart_template(name,True,"",self.token)
File "/usr/lib/python2.5/site-packages/cobbler/webui/CobblerWeb.py", line 102, in __render
return str(tmpl)
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2013' in position 3681: ordinal not in range(128)
MODULE CACHE DETAILS
Accessed: Tue May 19 10:23:54 2009
Generation: 1
_mp_43be29589f5d909275df7d4c30cbcdd3 {
FileName: '/var/www/cobbler/web/index.py'
Instance: 1
Generation: 1
Modified: Fri Mar 27 15:41:21 2009
Imported: Tue May 19 09:55:15 2009
}
--
Bryan Schneiders
bschneiders(a)woti.com
301-562-1900 ext 305
14 years, 11 months