Deployment Solution

 View Only

Easily Intergrate Your Workflow Solution with Deployment Solution for Your HelpDesk Workers 

Oct 08, 2009 03:04 PM

Today we will discuss how to create a workflow that integrates with Deployment Solution to distribute images to systems. First let me tell you the reason of why you want to do this. If you are familiar with DS (or the DS WebPart in Altiris) you know that the process, while simple, is pretty involved to get from start to finish.

Prereq for this:

  • Workflow Solution
  • Deployment Solution
  • Understanding of how to create Images with DS

Phase 1: Create a Web Workflow with DS Integration

1. Open up Workflow Designer and Create a new Form(Web) Workflow and name it as you wish.

2. I always like to get started with a welcome page because it lets the end user know asap what workflow they are getting ready to run, so I guess you insert a Welcome Page (using a Form) in the beginning. Inside this form you will create a few labels just telling the user what they are running

Phase 2: DS Server Monitoring

3. Next we want to insert a few server monitors, so that way before the user even gets started we can be sure all systems are up and available.

imagebrowser image

4. After you input all of the values you wish you have you will want to take both the Unreachable Host and the Waning Messages and connect them into some type of notification system (i.e. ticket creation, email to your HelpDesk etc..) so that way you can know something is going on before the end user calls to ask you about it. I recommend putting a simple email component here and setting it up to email your HelpDesk on both the Warning and the Unreachable. However only on the unreachable you will want to create another Form telling the end user something to the effect of the system is unavailable and that the HelpDesk has been notified (you can get really complicated with this if you want as far as how you want the notifications to go. In the beginning I recommend keeping it simple and after you have gained the experience move on to the more complex items).

Phase 3: Connection to DS Server and List Jobs

5. So we have created our welcome page and put in some due-Diligence for our sake (and the end users) now lets move on to establishing our connection. Go ahead and insert the "Create DS Connection Profile component and open it up and select "use the default settings for plug in" (if you have more than one DS environment you will want to manually enter the information into the component).

6. Insert a List Job Component. Inside you will want to set your look up method to Name and then type in name of the Folder within DS that contains your Images. Then set your output to something that you can easily remember like v_ComputerImages so you can use it later on.

imagebrowser image

Let's review so far. We have created a welcome page, inserted a monitor to check if our DS server is up (and made notifications), created a connection to our DS Server, and complied a list of jobs available to us. So where do we go from here? User interaction is our next step.

7. Place a Form on your Workflow open it up and lets get started.

Phase 4: User Experience

8. First let's create a method for our end user to select what image they want to use. Insert a drop down list component then open it up. At the top under the Functionality tab the first box you see is "Data Type" Click the ... box to the left of it and in the pop up search window type in the word job.

imagebrowser image

Reason is because the "JobID" is the number we are going to use to assign this image to install to a system. Without this setting you would not be able to advance. So select Job and Click OK.

9. Next be sure your Display Value Source is Field and that your Display Field is Name. The reason is so that your end user will see the names of each of the computer images in the drop box as they would if they logged into the DS server.

10. In the Items Selection click the ... box, be sure only Process Variables is checked and click Add Array. Select the Root of v_ComputerImages (or whatever you have named it) and click OK.

imagebrowser image

11. Finally for the Output Data use something simple like v_SelectedImage then click OK to close this item.

If you were run debug this flow now (after you connected everything together of course) you would end up with a form that contains a drop box of all of your images. Pretty Cool isn't it!!! Moving On.

12. Inset a text box into your form and name is v_SelectedComputer. This is a manual input box so just leave it as such.

13. Using Labels label both the Drop box for your images and the Selected Computer. You may also label the page as you see fit (instructions, titles, pictures, etc...)

14. From here I like to put in a little display box that tells the user to go ahead and PXE boot into DS and let the computer sit and wait for instructions. I prefer to use Linux as it loads faster than PE and the images seem to download quicker as well. Again that is my preference not Symantec's Recommendation.

15. After that you will want to insert the Get Computer component. Tell it to look up by Name and then select the v_ComputerName from the Process Variables. You will be given 2 paths for which the component exits. Once is Found and one is not found. What I like to do is to link the Not Found to a message box that displays the computer was not found and then directs the back to the previous form to re-enter the name again (we all fat finger once in awhile).

16. Finally you will get a Run Job on Computer component and setting it up to read from Variable on both the JobID and Computer ID section using the variables v_SelectedImage.jobID and ComputerFound.ComputerID

imagebrowser image

Phase 5: Debug and Publish

Be sure all components are connected (in the correct order) and debug the site. What you should get is a simple flow that:

  1. Welcomes you to the Workflow.
  2. Checks the DS to make sure its available (by ping at least).
  3. Establishes a connection to DS.
  4. Pulls all of the jobs in the specified folder.
  5. Displays the "Front End" page where the user selects the images and types in the computer name
  6. Validates the Computer name against the database.
  7. Runs the job on the computer.

If all of this works as you expect in Debug publish it out to your Workflow WebServer and advertise it to your HelpDesk.

Conclusion:

Most of you may be asking yourself. Why spend all of this time to develop a workflow for such a simple process? Well the one thing that we can never account for in any process of human error. Fat fingers and happy clickers are always something that we can never anticipate. However, by using workflow we lessen the changes of that happening by giving the user an interactive experience with fewer options to worry about. In DS all the jobs are predefined and the computer names are already entered so the chances of someone deploying an image incorrectly are greatly reduced by putting it to Workflow. Also some of your HelpDesk workers may not like the (and I'm sorry Altiris) clunky Web Interface that is used with DS. Using Workflow will allow you do customize it your way.

Eventually you can take this one step further and include ticket creation, asset assignments, user notification and application installs (which I will publish at a later time after I get it written). The end result with using Workflow can be summed up in one word...simplify.

Again thank you for taking the time to read this article and if you have any questions or comments please feel free to send me an email or post a response. I will answer.

Thx
Wes

Statistics
0 Favorited
0 Views
0 Files
0 Shares
0 Downloads

Tags and Keywords

Related Entries and Links

No Related Resource entered.