Invoke installfromuri - software update
Michal Minář
miminar at redhat.com
Fri Aug 23 04:09:55 UTC 2013
Hi George,
answers embedded bellow.
On 14.8.2013 08:14, George varghese 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?
Correct. In openlmi-software this enumeration is disabled though. There
is just too many available packages to enumerate. Only enumeration of
LMI_SoftwareInstalledPackage (association class) is supported.
>
> 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.
The Software Update Profile says it all. You don't need to create any
CIM_ConcreteJob instances if you don't support asynchronous methods
right now.
> 2. Download and install the firmware in system
> 3. Return OK as status.
And "Job Completed with No Error" (0) as a return value.
> 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?
Yes but only in cause you support asynchronous invocations. Software
Update Profile does not cover any progress readings when installing
synchronously.
>
> Please advise me.
>
> Regards,
> George
>
>
> On Tue, Jul 30, 2013 at 2:58 PM, George varghese <georgooty at gmail.com
> <mailto: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 <mailto: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 <mailto: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 <mailto: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> <mailto: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
> <mailto:openlmi-devel at lists.fedorahosted.org>
> >>
> https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
> >
> >
> > _______________________________________________
> > openlmi-devel mailing list
> > openlmi-devel at lists.fedorahosted.org
> <mailto:openlmi-devel at lists.fedorahosted.org>
> >
> https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
> >
> >
> >
> >
> > _______________________________________________
> > openlmi-devel mailing list
> > openlmi-devel at lists.fedorahosted.org
> <mailto:openlmi-devel at lists.fedorahosted.org>
> >
> https://lists.fedorahosted.org/mailman/listinfo/openlmi-devel
>
>
>
> _______________________________________________
> openlmi-devel mailing list
> openlmi-devel at lists.fedorahosted.org
> <mailto: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/20130823/7077d10b/attachment-0001.html>
More information about the openlmi-devel
mailing list