Invoke installfromuri - software update

George varghese georgooty at gmail.com
Wed Aug 14 06:14:33 UTC 2013


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/20130814/75a37c99/attachment.html>


More information about the openlmi-devel mailing list