[wpkg-users] [Bug 53] One Host, several Profiles

bugzilla-daemon at bugzilla.wpkg.org bugzilla-daemon at bugzilla.wpkg.org
Tue Nov 20 11:59:27 CET 2007


http://bugzilla.wpkg.org/show_bug.cgi?id=53





--- Comment #10 from Rainer Meier <skybeam at users.sourceforge.net>  2007-11-20 11:59:19 ---
>From my point of view such a modification eases the mixing of various profiles
for each host - which is a thing a system administrator should avoid. Assigning
a mixture of various profiles to each individual host creates maintenance-hell.

Additionally I have the feeling that we are not comparing the same things here
in your example. In the first one (where you tried to show the disadvantages of
the existing solution) you "pre-created" these meta-packages which combine
several profiles. Example:

    <profile id="rati01visproj">
        <depends profile-id="rati01vis" />
        <depends profile-id="rati01proj" />
    </profile>

A system administrator usually would try to keep the number of individual
profiles as low as possible. In your second example you almost end up in adding
profiles for single packages. Then we are at the point that we could even allow
individual packages assigned directly to hosts:

<host name="rati.+" profile-id="rati01" />

<host name="ratiws-0108" >
    <profile profile-id="rati01wrar" /> 
    <profile profile-id="rati01vis" /> 
    <profile profile-id="rati01ge" /> 
</host>

<host name="ratiws-0153" >
    <profile profile-id="rati01vis" /> 
    <profile profile-id="rati01pro" /> 
    <profile profile-id="rati01ge" /> 
</host>

The assigned 'rati01ge' package just contains one single package (Google
Earth). I think this is usually considered to have an over-structured profile
structure.

We could also look at it from the other side and claim that for system
administrators it is an advantage to allow only one profile to be assigned to a
single host since he can see the number of individual profiles by just looking
at profiles.xml.

I am usually grouping profiles by functional groups and then group them to
"department-profiles". Example:

<!-- hosts -->
<host name="ratiws-0108" id="department-finance" />

<!-- departments -->
<profile id="department-creative">
    <depends profile-id="office" />
    <depends profile-id="grpahics" />
</profile>
<profile id="department-finance">
    <depends profile-id="office" />
</profile>

<!-- functional groups -->
<profile id="office">
    <package package-id="msvisio2003" />
    <package package-id="msvisio2003-kb923272" />
    <package package-id="msvisio2003-kb924424" />
    <package package-id="msvisio2003-kb920813" />
    <package package-id="googleearth" />
    <package package-id="msproject2003" />
    <package package-id="msproject2003-kb837240" />
    <package package-id="msproject2003-kb887620" />
    <package package-id="msproject2003-kb837240" />
</profile>

<profile id="grphics">
    <package package-id="coreldraw" />
    <package package-id="photoshop" />
</profile>


In case an individual machine needs additional programs not within the
department profile (which is a thing you definitely want to avoid) you have two
choices. Either add the software to one of the groups and spread it to more
clients, add it to the department (spread to all department members) or create
a host-specific profile.
With the multi-profile modification I will anyway have to create a new profile
(which is added to the host) since I will probably not add it to an existing
group to prevent spreading it to other nodes. So when using this change I would
do the following:

<!-- hosts -->
<host name="ratiws-0108" >
         <profile profile-id="department-finance" /> 
         <profile profile-id="quake" /> 
</host>

<!-- individual packages -->
<profile id="quake">
    <package package-id="quake" />
</profile>

<!-- departments -->
<profile id="department-creative">
    <depends profile-id="office" />
    <depends profile-id="grpahics" />
</profile>
<profile id="department-finance">
    <depends profile-id="office" />
</profile>

<!-- functional groups -->
<profile id="office">
    <package package-id="msvisio2003" />
    <package package-id="msvisio2003-kb923272" />
    <package package-id="msvisio2003-kb924424" />
    <package package-id="msvisio2003-kb920813" />
    <package package-id="googleearth" />
    <package package-id="msproject2003" />
    <package package-id="msproject2003-kb837240" />
    <package package-id="msproject2003-kb887620" />
    <package package-id="msproject2003-kb837240" />
</profile>

<profile id="graphics">
    <package package-id="coreldraw" />
    <package package-id="photoshop" />
</profile>



Instead I would do the following:

<!-- hosts -->
<host name="ratiws-0108" id="tatiws-0108" />

<!-- host-specific packages -->
<profile id="ratiws-0108">
    <depends profile-id="department-finance"
    <package package-id="quake" />
</profile>

<!-- departments -->
<profile id="department-creative">
    <depends profile-id="office" />
    <depends profile-id="grpahics" />
</profile>
<profile id="department-finance">
    <depends profile-id="office" />
</profile>

<!-- functional groups -->
<profile id="office">
    <package package-id="msvisio2003" />
    <package package-id="msvisio2003-kb923272" />
    <package package-id="msvisio2003-kb924424" />
    <package package-id="msvisio2003-kb920813" />
    <package package-id="googleearth" />
    <package package-id="msproject2003" />
    <package package-id="msproject2003-kb837240" />
    <package package-id="msproject2003-kb887620" />
    <package package-id="msproject2003-kb837240" />
</profile>

<profile id="gfaphics">
    <package package-id="coreldraw" />
    <package package-id="photoshop" />
</profile>


So from the first view within profiles.xml I see that there is an individual
profile which I have to maintin. With multiple profiles per host this
information would be hidden within the hosts.xml. So if I have to verify
package compatibilities (for example when adding a new package to the "office"
group) I would have to open hosts.xml to see that there is a host who uses
"office" together with "quake".

Additionally I think it's essentially important for system administrators to
know the total number of host-variations. With this modification I need to open
hosts.xml and then compare the list of added profiles of each host entry to
each other entry in order to find out how many individual profiles will result.


Moreover you indicated that you are about to create a new profile for each
permmutation of possible package-constellations. In fact this is not needed at
all. If a host uses a completely individual collection of packages there is
also nothing wrong about adding the packages directly to such a host-specific
profile:

<!-- hosts -->
<host name="ratiws-0108" id="tatiws-0108" />

<!-- host-specific packages -->
<profile id="ratiws-0108">
    <package package-id="msvisio2003" />
    <package package-id="googleearth" />
    <package package-id="msproject2003" />
    <package package-id="quake" />
</profile>

So you don't need to create a new profile which just contains one single
package.


-- 
Configure bugmail: http://bugzilla.wpkg.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


wpkg-users mailing list
wpkg-users at lists.wpkg.org
http://lists.wpkg.org/mailman/listinfo/wpkg-users



More information about the wpkg-users mailing list