5 Replies Latest reply on May 2, 2011 8:07 AM by AspenSkier

    how does one trigger inventory update while provisioning

    Specialist

      I'd like some of my provisioning tasks to force the local agent to perform an inventory update and send the results to the core.

       

      There isn't a pre-configured provisioning action for this so I'm looking for any tips...

       

      what executeable do I need to run and what switches might I use, if any?

       

       

       

      The reason for this is simple; I need to force an inventory update so that my queries are accurate when I run them.  Currently the queries rely on a mix of old and new data-I need more control over the age of the data.  The LDMS 90 console doesn't allow me to select multiple machines and issue an inventory update command to them; I have to invidually right click on each machine to initiate this...with large groups of machines this is tiresome.

       

      I'd like to do this via provisioning in an 'on-demand' way as well as be able to update the inventory after a provisioning task makes changes to a system that should be reported to the inventory database.

       

       

      thanks

        • 1. Re: how does one trigger inventory update while provisioning
          Ken Apprentice

          If you look in Manage Scripts, there will (should) be one called "inventoryscanner" that can be scheduled and used to target as many devices as you'd like.

           

          If you want to set it up as a provisioning action, you will need to execute the LDISCN32.EXE file.  There are several switches you can use, but I prefer:

           

          /L - User local registry information to determine core server name

          /F - Force a software scan

          /SYNC - Force a full scan (not delta)

           

           

          For a 32-bit system, LDISCN32.EXE is located in:

          C:\Program Files\LANDesk\LDClient\LDISCN32.EXE

           

          For a 64-bit system:

          C:\Program Files (x86)\LANDesk\LDClient\LDISCN32.EXE

           

          Most devices will have an environment variable that refers to the LDClient\Data folder, so you can use this path for both 32- and 64-bit systems:

          %LDMS_LOCAL_DIR%\..\LDISCN32.EXE

          • 2. Re: how does one trigger inventory update while provisioning
            Specialist

            thank you Ken,

             

            The Scripts didn't really accomplish all that I wanted with respect to provisioning, but the command line bit you supplied does the job.  Thank you.

             

            I'm using these switches:  /L /F /SYNC

             

            I was unable to get the variable to work for the client path, which is too bad.  I have a mix of 32-64 bit systems and it would be nice to have a single include for provisioning that doesn't care what OS is being used.

             

            I tried

             

            %LDMS_LOCAL_DIR%\..\LDISCN32.EXE

             

            and

             

            %LDMS_LOCAL_DIR%\LDISCN32.EXE

             

             

            and in each case I got an error about an unknown variable;  I'm using LDMS 9.0 SP2+++

             

            -any idea where I can lookup/test the presence of this variable?

             

             

            update:

            found %LDMS_CLIENT_DIR%\LDISCN32.EXE listed in the inventoryscanner script; tried using it and got an error:

             

             

            "The specified user variable does not exist"

             

            Tried it again with double %% and got the same thing, "The specified environment variable does not exist"

            • 4. Re: how does one trigger inventory update while provisioning
              Ken Apprentice

              Another possibility would be to create a provisioning variable that inserts the client path listed in the LANDesk inventory information:

               

              "Computer"."LANDesk Management"."Client Path"

               

              Set it up just like you see in the attached image, and then you can reference the %ldClientPath% variable in your 'Execute File' provisioning action.

               

              Give this a try and see if you have better results.

               

              Ken

              1 of 1 people found this helpful
              • 5. Re: how does one trigger inventory update while provisioning
                Specialist

                This is a good idea, pulling the path from the database...thanks

                 

                 

                However, as I went to implement this I realized how it won't really matter.  For some reason Landesk has decided that provisioning tasks can NOT be made 'flat' so as to apply for different OS types.  Previously I had setup a provisioning include template for each OS type we are using and those includes worked for launching the inventory scanner on each specific OS type.  I have to continue using those 3 includes because a single, OS independent one won't work as each provisioning template must align with the target OS type or else it won't run.

                 

                Ken, you have a good solution, too bad we can't use it to make a single template.

                 

                Maybe we need an ER for allowing us to create generic provisioning templates?  I've tried to specify WINDOWS as the target OS before, however I'm never able to use those templates on a Win7x64 target OS.  They are unavailable as INCLUDES and if I try to use them singly they will never run because of the OS mismatch.