Invoke installfromuri - software update

George varghese georgooty at gmail.com
Wed Aug 21 08:18:00 UTC 2013


Hi,

To perform a firmware update have following operations, Also I have
described some steps here.. please advise the directions are correct.

1. View The current firmare inventory of a system
    1.1. enumerate the CIM_SoftwareIdentity class.
2. Begin the update process
    2.1. Invoke CIM_SoftwareInstallationService.InstallFromURI method.
3. Monior the update process
    3.1. In this area, I have no clear idea.  How to monitor the update
process?

Please help me, how to monitor the update process. which class I
implementing for it?

Regards,
George


On Wed, Aug 14, 2013 at 11:44 AM, George varghese <georgooty at gmail.com>wrote:

> Hi,
>
> I have following questions regarding software update profile, My
> understanding, I have added here, please verify it.
>
> Qn 1. I want to enumerate current installed software details.
>  Ans: I think that CIM_SoftwareIdentity class is used for this purpose.
>  Is it right?
>
> Qn2 : I want to implement CIM_SoftwareInstallationSerice.InstallFromURI
> method. Right now I am trying to implement it synchronous.. Later I wish to
> change it asynchronous method.
>     Ans: I shall describe the steps here.
>            1. Create the instance of CIM_ConcreteJob class. Fill the
> status as downloading/upgrading.
>            2. Download and install the firmware in system
>            3. Return OK as status.
> Qn3: How to the know the firmware installation status? means that which
> class enumerating for this purpose?
>     Ans: I think CIM_ConcreteJob class is used for this purpose. right?
>
>
> Please advise me.
>
> Regards,
> George
>
>
> On Tue, Jul 30, 2013 at 2:58 PM, George varghese <georgooty at gmail.com>wrote:
>
>> Hi,
>>
>> Anybody please reply to me.
>>
>> Regards,
>> George
>>
>>
>> On Mon, Jul 29, 2013 at 4:51 PM, George varghese <georgooty at gmail.com>wrote:
>>
>>> Hi,
>>>
>>> I have following questions regarding software update profile,
>>>
>>> Qn 1. How to know the software revision and other details
>>>  Ans: I think that CIM_SoftwareIdentity class is used for this purpose.
>>>  Is it right?
>>>
>>> Qn2 : I want to implement CIM_SoftwareInstallationSerice.InstallFromURI
>>> method. Right now I am trying to implement it synchronous.. Later I wish to
>>> change it asynchronous method.
>>>     Ans: I shall describe the steps here.
>>>            1. Create the instance of CIM_ConcreteJob class. Fill the
>>> status as downloading
>>>            2. Download and install the firmware in system
>>>            3. Return OK as status.
>>> Qn3: How to the installation status? means that which class enumerating
>>> for this purpose?
>>>
>>>
>>> Please advise me.
>>>
>>> Regards,
>>> George
>>>
>>>
>>> On Thu, Jul 25, 2013 at 3:51 PM, George varghese <georgooty at gmail.com>wrote:
>>>
>>>> Hi,
>>>>
>>>>
>>>>
>>>>>  What optional features you want to implement (like Ordered
>>>>>> Dependencies, Software Bundles etc.).
>>>>>
>>>>> No. I am trying to implement firmware via http . So I trying to
>>>> implement InstallFromURI method. In this method I implement download
>>>> packages using CURL library to destination path. Right now I didn't fill
>>>> CIM_ConcreteJob instance.
>>>>
>>>> What other functionality you are missing in the profile (verification)?
>>>>
>>>> Need to enumerate current installed firmware revision.For this purpose
>>>> need to enumerate instance of  CIM_SoftwareIdentity  and
>>>> CIM_SoftwareInstallationService class. right?
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Whether you are content with synchronous methods? - easy to implement.
>>>>
>>>> current implementation firmware installation done by another process.
>>>> So I think it should  an asynchronous. if it synchronous, take long time
>>>> for getting InstallFromURI method response.. right?..
>>>>
>>>>  And when you choose asynchronous, whether to make indications to
>>>>> notify clients?
>>>>
>>>> how to make notification to client. Please give samples about
>>>> indication.
>>>>
>>>> How to represent your jobs in separate thread or process?
>>>>
>>>> Yes. firmware upgrade process already done, thats in another process .
>>>> So we need to query the status to that process .Inter Process
>>>> Communication(IPC) . using messsage queue mechanism
>>>>
>>>> Regards,
>>>> George
>>>>
>>>>
>>>> On Thu, Jul 25, 2013 at 2:55 PM, Michal Minář <miminar at redhat.com>wrote:
>>>>
>>>>>  On 25.7.2013 10:32, George varghese wrote:
>>>>> >
>>>>> > Hi,
>>>>> >
>>>>> > On Thu, Jul 25, 2013 at 12:27 PM, Michal Minář <miminar at redhat.com><miminar at redhat.com>wrote:
>>>>> >
>>>>> >     Hi George
>>>>> >
>>>>> >
>>>>> >     On 24.7.2013 20:35, George varghese wrote:
>>>>> >>
>>>>> >>     Hi,
>>>>> >>
>>>>> >>     I am trying to implement software update provider for firmware
>>>>> updating. I have done following things.. 1. Created a new instance of
>>>>> CIM_SoftwareInstallationService.
>>>>> >>     2. Downloaded URI link
>>>>> >     >>Maybe I get you wrong. Isn't the provider supposed to download
>>>>> the package from given URI and install it? >>Why doing it yourself.
>>>>> >
>>>>> > 2. I described here the code sequence. download the package from the
>>>>> given URI and install by provider..
>>>>> >
>>>>> >
>>>>> >>     3. Then set success as method, KUint32_Set(&result, 0);
>>>>> KSetStatus(status, OK); in spec I shall copied herre the body content of
>>>>> response, <n1:InstallFromURI_OUTPUT> <n1:ReturnValue>0</n1:ReturnValue>
>>>>> </n1:InstallFromURI_OUTPUT> </s:Body> I don't know how to put description
>>>>> here, for this which method I shall calling.
>>>>> >>     4. I don't know about CIM_ConcretJob class details. How to fill
>>>>> this class properties values.
>>>>> >
>>>>> >     >>You don't need to use CIM_ConcreteJob at all, if the
>>>>> synchronous invocation is sufficient. In that case just ??>>return "Job
>>>>> Completed with No Error", "Failed" or any other value < 4096.
>>>>> >
>>>>> > I think the installation process may be asynchronous. That case
>>>>> which class enumerating for knowing the download status.. ..    If user
>>>>> shall initiate the same process, what is the response value... for this
>>>>> which class I need to enumerate?
>>>>> Look here:
>>>>> http://schemas.dmtf.org/wbem/cim-html/2.34.0/CIM_ConcreteJob.html
>>>>> Search for "PercentComplete" property. You may also provide
>>>>> indications user can subscribe to.
>>>>> This way he doesn't need to poll for status. With asynchronous
>>>>> invocation there are just a few
>>>>> possible values you can return: "Unspecified Error" (2) or "Method
>>>>> Parameters Checked - Job Started" (4096).
>>>>> Return the first one if parameters are invalid or the job could not be
>>>>> started, otherwise start the job, make instance of CIM_ConcreteJob, return
>>>>> it as an Out parameter and make 4096 the return value of method.
>>>>>
>>>>> >
>>>>> > >>All the requirements are listed in Job Control Profile (DSP1103)
>>>>> and Software Update
>>>>> >
>>>>> >     >>profile. For implementation (in python) you may check out our
>>>>> openlmi->>providers/src/python/lmi/common/JobManager.py.
>>>>> >
>>>>> > No, provider implementation should be in C language.
>>>>> >
>>>>> > What things we consider for implementing software update provider?
>>>>> What optional features you want to implement (like Ordered
>>>>> Dependencies, Software Bundles etc.).
>>>>> What other functionality you are missing in the profile (verification)?
>>>>> Whether you are content with synchronous methods? - easy to implement.
>>>>> And when you choose asynchronous, whether to make indications to
>>>>> notify clients?
>>>>> How to represent your jobs in separate thread or process?
>>>>>
>>>>> >
>>>>> >>     Regards,
>>>>> >>     George
>>>>> >>
>>>>> >>
>>>>> >>     _______________________________________________
>>>>> >>     openlmi-devel mailing list
>>>>> >>     openlmi-devel at lists.fedorahosted.org
>>>>> >>     https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
>>>>> >
>>>>> >
>>>>> >     _______________________________________________
>>>>> >     openlmi-devel mailing list
>>>>> >     openlmi-devel at lists.fedorahosted.org
>>>>> >     https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
>>>>> >
>>>>> >
>>>>> >
>>>>> >
>>>>> > _______________________________________________
>>>>> > openlmi-devel mailing list
>>>>> > openlmi-devel at lists.fedorahosted.org
>>>>> > https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> openlmi-devel mailing list
>>>>> openlmi-devel at lists.fedorahosted.org
>>>>> https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
>>>>>
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.fedorahosted.org/pipermail/openlmi-devel/attachments/20130821/2ce51614/attachment.html>


More information about the openlmi-devel mailing list