Software Distribution Packages - bfswd

(imported topic written by SystemAdmin)

I just started attempting to use the new software distribution site to manage installations. After I created my task using the wizard I wanted to modify the task to install one package if the system was 32bit and another if it was 64bit. I know I could just create two seperate tasks, but to keep things simple I would like to consolidate it into one.

I tried to add an if statement before the prefetch block statements, but I get the following message “Only comments and blank lines are allowed before prefetch block.”

So I tried to use the a normal prefetch command and then extract the file. The file was successfully downloaded to the client but, I get the following error in the client log “Unable to extrct archive file”. The file does not have the .tmp extenstion like I am use to using the old distribution wizard.

How can I extract files created with the bfswd extenstion? Or is there another way to modify the created task to allow an if statement?

The created task using the wizard looks like this:

//**Begin Preparation Marker

// Download all specified files

begin prefetch block

add prefetch item name=6E6F290E96E5D5A91B6C4289F6236B5374A54EC5 sha1=6e6f290e96e5d5a91b6c4289f6236b5374a54ec5 size=17427968 url=SWDProtocol://127.0.0.1:52311/uploads/6E6F290E96E5D5A91B6C4289F6236B5374A54EC5/AgentInstall64.msi.bfswd

end prefetch block

// All SWD Files will go into a folder in the clients __BESData folder. This folder get cleared on every restart.

parameter “baseFolder” = “__Download/”

// Move files into subfolders and unescape file names

move “__Download/6E6F290E96E5D5A91B6C4289F6236B5374A54EC5” “{parameter “baseFolder”}AgentInstall64.msi”

//**End Preparation Marker

I attempted this:

prefetch AgentInstall64.msi.bfswd sha1:6e6f290e96e5d5a91b6c4289f6236b5374a54ec5 size:17427968 http://server.domain.name:52311/Uploads/6E6F290E96E5D5A91B6C4289F6236B5374A54EC5/AgentInstall64.msi.bfswd

extract AgentInstall64.msi.bfswd

(imported comment written by SystemAdmin)

I think I found my answer. If you are uploading a single file there is no compression. I was able to use my prefetch command, and just change the name to agentinstall64.msi (remove the bfswd extension).

I used:

prefetch AgentInstall64.msi sha1:6e6f290e96e5d5a91b6c4289f6236b5374a54ec5 size:17427968 http://server.domain.name:52311/Uploads … .msi.bfswd

instead of:

prefetch AgentInstall64.msi.bfswd sha1:6e6f290e96e5d5a91b6c4289f6236b5374a54ec5 size:17427968 http://server.domain.name:52311/Uploads … .msi.bfswd

extract AgentInstall64.msi.bfswd

It appears if it is a compressed folder the name will appear with a bftemp extension and you can use the standard extract command.

Are there benifit of using the “SWD” protocol vs. the standard prefetch command that I’m missing.

So far I like that the daseboard makes it easier to manage files, but like many other have mentioned I do not like how it wants to run all installation commands using a .bat script. It would be nice if within the wizard you can enter in custom relevance, or modfiy the automatic relevance it creates instead of opening the task after it’s created. I also like that it can create an uninstall task automaticly and it queries the msi for relevance, however the relevance is quite combersum and I will probally end up overwriting it with simplier and quicker relevance.

(imported comment written by SystemAdmin)

The “SWD” protocol lets BES know that it should use our download plugin to retrieve the file from the server, rather than use the normal method. Since swd does some special stuff to manage the files on the server (make sure you dont have duplicate copies if you upload the file multiple time, etc), it needs to use the download plugin to make sure it finds the right file.

My view when designing this was that the “create task” dialog (which pops up after you hit “create task” in the wizard) the best/most sophisticated place to do these sorts of custom edits, and anything we built into the wizard itself would just be a lamer version of that dialog. Do you feel it doesn’t cut it for you?

Also, does the fact the run command is in a .bat file prevent you from doing things you would normally want to do?

-Zak

(imported comment written by SystemAdmin)

Is there a way I can use the SWD protocol and have an if statement before the download block?

I guess when I used the wizard the first time I checked the option to also created an uninstall task, that created two tasks and the create task dialog never came up.

when you run tasks in a batch file you lose the ability to see exit codes produced by the executables. If you have multiple run commands you lose the ability to see the status of each line. I have not had tasks fail because of this.

(imported comment written by SystemAdmin)

Any updates?

Is there a way you can use an if statement using the bfswd protocol?