BigFix Software Distribution

(imported topic written by JackCoates91)

Hi,

BigFix, an IBM Company, is proud to announce the general availability of the BigFix Software Distribution fixlet site, which builds on the existing software distribution capabilities in BigFix. We now provide a refreshed set of software library management features, which allows more efficient management of files, provides a more granular level of control over packages and fixlets, and improves relevance targeting via MSI metadata. Packages can be managed for Windows targets, using EXE, MSI, or BAT files for installation.

Existing customers of the Systems Lifecycle Management Pack, Systems Lifecycle Management Pack with DSS SAM Extension, or SLM/SCVM Combo Pack can request the BigFix Software Distribution site by emailing your serial number to

licensing@bigfix.com

.

The BigFix 8.0 platform is required to use this new site as it takes advantage of new features only available in 8.0.

For more information, please see the User’s Guide at http://support.bigfix.com/product/documents/SWD_Users_Guide.pdf

Thanks,

Jack

(imported comment written by ajdyer200091)

Thanks Jack I believe we will be going v8 soon.

(imported comment written by SystemAdmin)

I’ve installed the Site but I’m currently having an issue with it. My application I’ve created doesn’t seem to be uploading. Am I best to contact support Jack?

(imported comment written by JackCoates91)

I believe it’s kb article 1750…

(imported comment written by SystemAdmin)

I’ve ran those 2 tasks before I created my test job. When I run the Uploadmanagerservice manually it comes up as not being able to connect to the DSN. I’ve looked at how the XML runs the command and substitued the right settings in but it still says the connection failed. I’m using a remote database so I don’t know if this is part of the issue.

(imported comment written by JackCoates91)

Hi Shane,

Sounds like you’re using NT Authentication only for that database connection? Probably best to call support and get switched over to SQL auth for the bes_bfenterprise database.

(imported comment written by SystemAdmin)

No my system uses SQL Authentication. But sure I’ll get in touch with support and see what they can do. Thanks for your help

(imported comment written by SystemAdmin)

Hi Jack,

Just to say what a great product this S.D. tool is. I know it’s very early in the product’s lifecycle but are you accepting and is there a forum yet for submitting enhancement requests?

One feature I would like to see is a button for creating a baseline. i.e. you tick the boxes for all the packages that have inter-dependancies, click the ‘Make Baseline’ button and it automatically creates a Baseline for you (as per the ‘Best Practices’ section in the SWD Users Guide).

Obviously, the fixlets needs to be created first and the user will, probably, still need to put the packages into the correct installation order but, I think, it would enhance the workflow. It might also be useful if we had visibility of the Baselines in the dashboard. Again, it would make the workflow a lot slicker/easier for the occassional Bigfix console operator.

Cheers,

Mark.

(imported comment written by JackCoates91)

Hi Mark,

thanks, good feedback and that’s an area I’m interested in enhancing. This post is as good a place as any for feature requests, or I can always be emailed with the really off-the-wall ones :slight_smile:

Jack

(imported comment written by SystemAdmin)

Hi Jack,

Another, very minor, change that might be useful would be to include the version number in the auto-generated fixlet name. I recently created packages for three different versions of Firefox, created the fixlets from the ‘Manage Fixlets’ tab which all worked fine. However all the fixlets had the same name!

I know, I know, I should be less bone-idle and edit the fixlets myself but I’m far too busy trying to work out the best route to Leicester too watch the rugby match on Sunday :smiley: :smiley: :smiley:

(imported comment written by SystemAdmin)

It would also be nice if you edit the task, say by adding or modifying a file, it didn’t blow away any custom relevance or changes you made to the existing task!

I love the idea of where this is going. The ability to have one central repository of files with multiple tasks pulling from the same files. However, I don’t think it’s mature enough yet. Why is everything wrapped up in .bat files and __move?? How does a .bat file handle multiple install files? For example, install A.msi, wait for it to finish, install B.msi, wait for it to finish, then install C.msi? Why not just stick with the existing download/extract/wait scripting that has been used in the past and that everyone is familiar with??

I do most of this manually as it is by creating additional tasks using the software distribution wizard, making them relevant to no one, then just copying the download/extract lines and pasting them into another task. For example a modified config .msi that needs to be updated on an existing task. I think I’ll stick with this until the Software Distribution dashboard is ready for prime time!

Could someone confirm something? If I delete a task that was created using software distribution wizard will it automatically remove the file from the BigFix server?

Thanks

(imported comment written by SystemAdmin)

Hey j2johnson

Thanks, this is great feedback, and I’m always looking to hear more about how people actually use this stuff.

In our new release of SWD (think it went out yesterday), we will have added some tricks to help maintain custom edits (though this doesn’t apply to tasks you made before this release).

j2johnson

Why is everything wrapped up in .bat files and __move?? How does a .bat file handle multiple install files? For example, install A.msi, wait for it to finish, install B.msi, wait for it to finish, then install C.msi? Why not just stick with the existing download/extract/wait scripting that has been used in the past and that everyone is familiar with??

The main reason these tasks look a little more complicated than a normal hand-made task, is that the wizard is never really sure how the particular installer will work. Many have quirks, or make certain assumptions, that we have to account for. For example, some installers assume a specific relative working directory within the package (./bin for example). If you just move the file to ./bin and use the “run” command in bigfix, the working directory will actually be the __download folder, causing the installer to fail. We package the installer command in a .bat file so that we can have the cwd set to the appropriate folder (this lets us also get away with other tricks for more specific installer types, like spbs)

The “move” code is mostly around reconstructing the package structure on the endpoint, and also allows for some optimization (for example, if a file is used in multiple locations, we will only download it once, and copy it into the proper places).

j2johnson

How does a .bat file handle multiple install files? For example, install A.msi, wait for it to finish, install B.msi, wait for it to finish, then install C.msi

It will execute them one after another. You can think of it as running multiple “wait” commands in actionscript.

j2johnson

Could someone confirm something? If I delete a task that was created using software distribution wizard will it automatically remove the file from the BigFix server?

The wizard keeps track of how many tasks use a certain file. If you have 10 tasks that download a file, only one copy will be stored on the server. If you use the wizard to delete all 10 tasks, then a process on the server will detect that no one needs it any more and will remove it from the server (the process runs periodically, so it might take a little bit before it detects that it needs to remove it).

Hope that answers your questions. Try out the new version of SWD, and let me know if its still falling short in some places.

-Zak

(imported comment written by SystemAdmin)

Zak, thanks for your reply. A few follow-up questions/thoughts come to mind.

Why has the default path issue not been a problem before the wizard? Could you not just make a field during the task creation to specify the path to use rather than affecting every body for what could be seen as the exceptions?

If it’s simply a bat file calling .exe will it actually WAIT for the first one to finish before calling the subsequent .exe file?

It’s nice that the dashboard reads the file and tries to build relevance around the app name and version info. However, when you are adding multiple files to a new task the dashboard assumes the first file is the one to key off of. I think there should be an option to “select” the file that will be used to build the relevance info.

E.g. In our usage case, I have a pre-install file, a client install and a config install. When I add all three to a package in software distribution and then build a new task the create task wizard using the pre-install file info to build the relevance and I would like it to use the client install file instead.

(imported comment written by SystemAdmin)

It would also be nice if there was an easy way to “Edit” a task that was created with Software Distribution. As in my previous example if I need to “Update” my install task with a new client config install it would be nice it I could just select the task in Software Distribution, select edit, then add or remove new files to the task and then save out the task. Done. As it is now I have to go create a dummy task in order to get the file into BiFix, then copy out the download/extract info and place it into my pre-existing task!! A lot of extra work!

(imported comment written by SystemAdmin)

While I’m on the thought of possible features, it would be nice if you could set and expiry time for file in the __Download folder rather than having it wiped out every reboot! Example. “Keep these file in the __Download folder for X number of days”

My thought for this is Office 2010. I’m trying to setup a package to push out Office2010. Ideally I would like to have the clients download the full package and ONLY then make it available to them to install. To do this I was thinking about making it an offer. However as the install takes a long time (30-45 minutes) I would like them to be able to do the install when they have time. The issue is if they reboot their computers after the package has downloaded but not installed they will have to re-download a 700mb package correct??

(imported comment written by SystemAdmin)

Think I found an issue with the SWD. I created a task using 1 of the .msi files I had uploaded to the package. (this is because when creating a task with multiple .msi files the created task doesn’t let me select which of the files to use to build the relevance. Ideally it should ask or build a separate relevance for each file) I then edited the task and added in 2 additional .msi files. The prefetch block and move commands were updated with the 2 additional files (I imagine because they were between the defined //** markers) however the .bat file creation did NOT get updated. This may not be a “bug” per say as the .bat file creation isn’t between any defined update markers however I think it should be. If I’m adding additional .msi files my assumption would be that it would update all necessary parts of the task.

I may be pushing the usage a little bit here (with multiple .msi installs in the same package) but I thought I’d provide some feedback.

(imported comment written by SystemAdmin)

And for the 5th post…

Odd issue with RunAsCurrentUser.exe and run.bat.

I’m using waithidden “{pathname of download folder}\RunAsCurrentUser.exe” run.bat

However when the I click Take Action on the task and it launches I get a CMD window poping up saying:

‘//’ is not recognized as an internal or external command, operable program or batch file.

‘//**Begin’ is not recognized as an internal or external command, operable program or batch file.

I imagine I’m only seeing this because it is running as the current user and that this error is happening in the back ground when running as system user. Should those comment lines not be parsed out and NOT added to the .bat file when it’s created?

On top of that the task show as complete on the PC even while the install is still occuring!

Really not a big fan of this .bat file idea!

For reference:

createfile until

end

@ECHO OFF

cd “{parameter “baseFolder”}”

// See comments at the beginning of this action for an explanation of the comment markers.

//**Begin Command Marker

setup.exe /S /qb

//**End Command Marker

end

(imported comment written by jeremylam)

I think createfile doesn’t pay attention to comment markers, so the lines starting with “//” will be in the file.

You can use :: to comment in batch files.

(imported comment written by SystemAdmin)

I had the same thought however I think if you modify the //**Begin Command Marker by putting :: in front of it if you update the task through the SWD it will no longer update correctly.

I find it hard to imagine that this wasn’t thought of??? Crazy .bat files. I feel like this is moving backwards rather than forwards!!