Feedback: Snap-in system


  • Developer

    Please list any problems or feature requests for the snap-in system.

    If you have any suggestions, they are more than welcome.

    Be short and to the point, list form is more than acceptable.



  • [quote=“timcough, post: 11851, member: 40”]I have suggested the following in a different thread to allow a single snapin to be sent to multiple computers:

    Add the following lines to the groups section of tasks.advanced.include.php:

    [PHP]<tr>
    <td class=“c”><a href="?node=tasks&type=group&direction=onesnap&noconfirm=<?php print $groupid; ?>"><img src="./images/snap.png" /><p><?php print _(‘Deploy Single Snapin’); ?></p></a></td>
    <td><p><?php print _(‘This option allows you to send one of the snapins to the group without imaging the computers. (Requires FOG Service to be installed on client)’); ?></p></td>
    </tr>[/PHP][/quote]

    Thank you SO MUCH for this code. It has made snap-in deployment much easier. Has anyone figured out a way to make snap-in groups? It would be terrific to be able to put a number of snapins into a group for deployment to certain machines. ie. all 32 bit machines get a certain group of snapins, while 64 bit get a different group, etc.



  • I have suggested the following in a different thread to allow a single snapin to be sent to multiple computers:

    Add the following lines to the groups section of tasks.advanced.include.php:

    [PHP]<tr>
    <td class=“c”><a href="?node=tasks&type=group&direction=onesnap&noconfirm=<?php print $groupid; ?>"><img src="./images/snap.png" /><p><?php print _(‘Deploy Single Snapin’); ?></p></a></td>
    <td><p><?php print _(‘This option allows you to send one of the snapins to the group without imaging the computers. (Requires FOG Service to be installed on client)’); ?></p></td>
    </tr>[/PHP]



  • Hi Guys,

    What I do for snap-ins is create a sub-folder on a read-only file share - and put the binaries and cmd script in that folder, then I upload the cmd script to the fog server for snap-in deployment - that way I don’t have much for extra files on my fog server and leverage the file server we already have…

    This way we can deploy to XP or Windows 7 and I don’t need to be concerned about maintaining more than many one snap-in for multiple OS’s… I’ve attached an script example to this post…

    Also I edit the PHP/SQL code a little bit so that when we’re adding snap-in’s to a host - it won’t show existing host snap-ins in the list of all snap-ins… in other words if a host has 30 snap-ins assigned to it - when we select a new snap-in to add to the host - those 30 are not present in the candidate list.

    Maybe this has already changed in the new version(s) of Fog… I haven’t looked yet…

    Finally, we’ve have some applications that deploy via group policy (office 2010) as an example, so when Fog images a host, it adds the host to our domain and adds the computer object to the OU containing the policy that deploys some of our apps… this is a further benefit of Fog because every time a computer is re-imaged those apps are automagically deployed.

    Thanks for this awesome project!!!

    [url="/_imported_xf_attachments/0/228_example.cmd.txt?:"]example.cmd.txt[/url]


  • Developer

    Great feedback here guys!

    FYI, the waits have been reduced in FOG SVN source code. But it has not been recompiled just yet.



  • [quote=“afmrick, post: 4735, member: 417”]Yeah, the snapin agent is hard coded to wait 350-500 seconds in [B]fog_0.32/FOG Service/src/FOG_SnapinClient/MOD_SnapinClient.cs:[/B]
    [CODE]126 try
    127 {
    128 Random r = new Random();
    129 int intSleep = r.Next(350, 500);
    130
    131 log(MOD_NAME, “Sleeping for " + intSleep + " seconds.”);
    132 System.Threading.Thread.Sleep(intSleep * 1000);
    133 }[/CODE]
    There’s a good posting on this at [URL=‘http://www.edugeek.net/forums/o-s-deployment/92417-how-modify-snapin-client-sleep-timer.html’]edugeek.net[/URL][/quote]

    Correct. i’ve also gone one step further and downloaded the new snapinclient.dll that checks in every 30 seconds instead of 5. Saves time on imaging / etc. Check the wiki and main support pages on these forums for a copy of it.



  • Yeah, the snapin agent is hard coded to wait 350-500 seconds in [B]fog_0.32/FOG Service/src/FOG_SnapinClient/MOD_SnapinClient.cs:[/B]
    [CODE]126 try
    127 {
    128 Random r = new Random();
    129 int intSleep = r.Next(350, 500);
    130
    131 log(MOD_NAME, “Sleeping for " + intSleep + " seconds.”);
    132 System.Threading.Thread.Sleep(intSleep * 1000);
    133 }[/CODE]
    There’s a good posting on this at [URL=‘http://www.edugeek.net/forums/o-s-deployment/92417-how-modify-snapin-client-sleep-timer.html’]edugeek.net[/URL]



  • A simple work around for now is to name your snapins in the order they should be weighed.

    Example:

    1. Chipset
    2. Microsoft Office
    3. Antivirus
    4. etc.

    They will be picked up properly by the SQL database and be installed in the order as named. Not ideal, and it’s a global “all or nothing” when it comes to their installation order, but it does work.

    YMMV.



  • [quote=“Blackout, post: 194, member: 1”]Thanks for the feedback guys.

    Multiple files is a hard one as it will require a lot of work (more than i can do before 0.33)

    Dependency & weighting are very possible though.[/quote]
    Dependency & weighting would be a big help.



  • [quote=“Lee Rowlett, post: 1591, member: 28”]i would like to see maybe a progress bar or be able to send detail to the gui like what stage of the script it is installing if it is a multiple software install script… I.e Installing Adobe… Then Installing Java etc. etc…[/quote]

    How does the Snap-In system work at the moment? is this about right?
    [LIST=1]
    []The FOG Agent periodically polls the server checking for Tasks at offset times to not overload server
    [
    ]The FOG Agent sees a list of pending Snap-Ins begins downloading the first one eg SNAP-IN-1
    []Run the Snap-In until it exits
    [
    ]FOG Agent pops up Message Box “Installation Complete SNAP-IN-1”
    [/LIST]

    Why not give us an API into the FOG Agent’s message system (if some way doesn’t already exist???)

    so when we are installing something, we can be writing messages to the FOG Agent if required and it pops up the message in the top right hand corner.

    Eg We could have a process like this

    [LIST=1]
    []The FOG Agent periodically polls the server checking for Tasks at offset times to not overload server
    [
    ]The FOG Agent sees a list of pending Snap-Ins begins downloading the first one in the list eg SNAP-IN-1
    []The FOG Agent runs the Snap-In
    [
    ]Inside the Snap-In script there is a command/script whatever which send the Fog Agent the message “Installation Starting” this is popped up on screen by the FOG Agent
    []Snap-In continues on … opps there is an error installing … using API, error can be displayed on screen in the agent box
    [
    ]If there was no error, return code 0, FOG Agent pops up Message Box “Installation Complete SNAP-IN-1”
    [/LIST]

    At the moment sometimes I use snap ins to display something eg, a vbsccript messagebox pops up why not give us a way to send those messages to the FOG Agent popup



  • I would love the Snap-In functionality (and overall FOG) to integrate with AD/LDAP/SAMBA

    Then apply snapins on a group level.

    What I mean is;

    In LDAP let’s say you have a structure as follows;

    Organisation
    [INDENT=1]-Departments[/INDENT]
    [INDENT=2]-Finance[/INDENT]
    [INDENT=3]-PC1[/INDENT]
    [INDENT=3]-PC2[/INDENT]
    [INDENT=2]–Engineering[/INDENT]
    [INDENT=3]-PC3[/INDENT]
    [INDENT=3]-PC4[/INDENT]
    [INDENT=3] [/INDENT]
    I would love to be able to apply Snap-In’s to the Finance department and all PC’s below automatically get those assigned. Kicker is I want this structure to be read from AD/LDAP so that there is no need to a seperate lot of groups in FOG as well.

    Then you can move a PC from OU and it gets the Snap-Ins assigned from that OU

    If not on an OU level, even Groups would do for PC’s

    e.g

    Group1-SnapIn-1
    Group2-Snap-In2

    Any computers in Group1 get the Snapin 1 deployed etc

    Is there a better way of achieving something like this?



  • Could you eliminate the prompt that says “An instance of FOG Tray is already running.”? In my organization, it’s common for people to move around between PCs. If multiple people log in to the same PC using Switch User, the subsequent users will all get the error. It confuses people, and I can’t think of any purpose for the message. It seems adequate for duplicate instances to silently fail or write it to the log rather than display an error.

    Also, +1 vote for finding a way to handle snapins that are multiple files. A relatively simple way might be this:
    Instead of supporting only executable snapins, make it also possible to upload two files: a ZIP of the package and an accompanying script (batch file, VBS, .CMD, etc.) that will execute. The script will be responsible for unzipping the package, running any installers, and doing any other installation tasks.

    Also also, I’d vote for making FOG more aggressively check that a snapin installed correctly. If a machine gets shut down or rebooted in the middle of deploying a snapin, it can get stuck as “In Progress” in the FOG console, never fully deploy, and the machine may have a corrupt snapin that only installed halfway. Similarly, if a user is running an application while FOG tries to deploy an update to it, it can fail. Making FOG more intelligently retry to deal with these scenarios would be great.


  • Moderator

    If I could ask one thing is that, sometimes snapins just take ages to deploy. I’m not sure of the reason, but especially if you try to deploy snapins to a machinie that hasn’t been recently imaged. Does FOG try to wait for certain client circumstances before installing them or?

    It would love a “force deploy” snapins so they would get pushed out the machine quickly.

    I’ve noticed with win 7 some snapins deploy, but then don’t finish for some reason… But I can just add a task to cancel the SFX task before the cmd script finished…


  • Developer

    i would like to see maybe a progress bar or be able to send detail to the gui like what stage of the script it is installing if it is a multiple software install script… I.e Installing Adobe… Then Installing Java etc. etc…



  • I too would like to see a Single Snapin to a group option. In version .28, I manually added it as an option for my fellow techs, but have been unable to do so in the latest release.



  • I would absolutely love to see another application to create snapins. Because unfortunately, InstallRite seems to be a “hit-or-miss” problem. Not to mention, I’ve also used another custom build repackager called “AppDeploy” which has the same concepts as installrite, but converts it into an MSI form. (There’s other little handy features it comes with as well!). However, when running MSI’s and putting in arguements and everything needed to run the MSI snap-in; sadly it fails because the account for which it is to be installed on, does not have the permissions :(


  • group:cid:13:privileges:mods:members

    A slot system would be nice to prioritize the installs of the snap-ins. This idea comes from Deploy Studio for Macs. You can decide in what order you would like what application to run. The problem I run into is that I would like a specific program to run last because it needs to restart the machine. So it would be nice if I could have that go last so I don’t have to wait for a reboot, the client to checkin, and start deploying more.



  • [quote=“ssx4life, post: 693, member: 268”]

    #3. Updating the snapin to play nicer with Windows 7.
    [/quote]

    Ditto on this one !



  • I do not feel that application virtualization is a sutible replacement. We have a very large VMWare infastructure in place here, with ThinApp, and while it does have it uses it can not be used for a lot of things.



  • My biggest frustrations with the snapin systems are 3 fold.

    #1. The inability to upload folders to the snapin system, and then run a .exe or .msi directly from the uploaded folder.

    I’d love to take an office install / Adobe Pro install / etc. and just upload the entire installer folder, and then have the client run the .msi / .exe of my choice. Currently I have to use SFX Maker or some other encapsulation software to package it as an .exe and then tell the software to run the file of my choice (seems like I’m duplicating work)

    #2. The wait time of the snapin ins needs to be cut down… WAY down.

    Currently the fog client waits I think 5 min’s when first checking in with the server to see if there are any tasks. I’d like to see this cut down to say 1 min at most, or even give us the option of changing it during the install on the client side.

    I can edit the .ini file after the service has been installed to check in more rapidly AFTER the wait time. But why have it wait 5+ min’s before checking for a job? Is this due to the network traffic it would generate?

    #3. Updating the snapin to play nicer with Windows 7.

    I’d like to have the snapin play nicer with Windows 7 in regards to the UI, and perhaps have a simpler way to push the software out via GPO.


Log in to reply
 

936
Online

39.3k
Users

11.0k
Topics

104.5k
Posts

Looks like your connection to FOG Project was lost, please wait while we try to reconnect.