Track - Developer
CMPI Provider Test Harness
Chip Vincent, IBM
CMPI is a CIMOM-agnostic provider interface supported across a variety of CIM environments, such as OpenPegasus, SFCB, WBEM Solutions, and WMI+A. The interface is designed to allow one to implement a provider once and deploy it in a variety of operating environments. However, the overall complexity of the CIM stack and the nuances between the implementations (and versions) can make testing the provider extremely difficult and expensive. Testing and troubleshooting is further complicated when providers from multiple vendors must operate within the same CIMOM.
The CMPI Provider Test Harness is a powerful provider test tool and diagnostic. It supports pluggable test cases, call intercepts, and even a variety of CMPI implementations. With this tool, it is possible to script tests to perform 100 percent code coverage of a provider in an OpenPegasus, SFCB, or WMI+A environment BEFORE integrating it with the CIMOM and other providers.
From the provider's perspective, the tool acts just like a CMPI broker. However, it is really a sophisticated wrapper for a real CMPI implementation. The wrapper even supports provider up-calls by re-routing requests to a CIMOM running in a separate process on the same system. This allows one to isolate a provider but still test complex provider-repository or provider-provider relationships.
The tool is still in the early stages of development but will be contributed to the open community once stable.
CMPI Provider Test Harness features overview:
- Scriptable interface
- Provider isolation to expedite troubleshooting and simplify debugging
- Pluggable CMPI implementation wrappers (OpenPegasus, SFCB, WMI+A)
- Pluggable test modules
Python CIM Providers
Bart Whiteley, NovellThis session will discuss recent developments in the Python CIM Provider Interface. Python providers can now run under any CIMOM that supports CMPI. The session will present the architecture of the Python provider adapter, Python provider concepts, and concrete examples of Python providers.
Java WBEM API (JSR48)
Jim Davis, WBEM Solutions
The JSR48 API is the standard Java API for developing CIM and WBEM
Clients and Providers. The API includes support for the following:
CIM
- A mapping of the Common
Information Model (CIM) Meta Schema to Java.
WBEM
Client - A protocol-neutral mapping of
WBEM operations to Java.
Listeners - A set of classes
to listen for Indications.
Providers - A set of interfaces
for developing providers.
This session will describe the architecure and design of the API,
describe each of the Interface areas, provide running code examples for
clients, listeners, providers and CIM Mappings. The examples will use
both CIM-XML and WS-Management.
Best Practices for Writing CMPI Providers
Marek Szermutzky, IBM
The Common Manageability Programming Interface (CMPI) is a standard interface for CIM providers supported by many popular CIM Servers. CMPI is binary compatible which makes development of CIM providers independent from a particular CIM Server implementation. The presentation will cover the "Do's and Dont's" of writing CMPI providers based on practical experiences and samples. Commonly experienced stumbling stones are described and how those can be circumvented or avoided. Focus will be put on how to write high-performance, reliable and stable CMPI providers.
Testing Providers with PyWBEM
Tim Potter, Hewlett Packard
Testing is a vitally important part of provider development, and has different requirements of a CIM client. This presentation will cover the basics of the PyWBEM Python CIM client interface and follow with some useful techniques for testing providers. An introduction to the asynchronous client interface will also be given.
cmpi-bindings - Compiler-free
provider development
Klaus Kämpf, Novell
Bart Whiteley, Novell
The CMPI programming interface removed the CIMOM limitation, pywbem added Python to the list of implementation languages.
In this presentation we show how to use the SWIG (www.swig.org) code generator to enable developers to write CIM providers in any SWIG supported language. This includes Python, Ruby, C#, Java, Perl, Tcl and many more.
WBEM Solutions Development & Test Tools
Carl Chan, WBEM Solutions, Inc.
Jim Davis, WBEM Solutions, Inc.
WBEM Solutions offers a variety of products and services to aid companies in providing enterprise ready WBEM-Based implementations. This session will provide an overview and demonstration of the following products
- WBEM Agent Validation Environment - The WBEM Solutions WBEM Agent Validation Environment is a data driven test infrastructure designed specificatooy to validate WBEM-Based implementations against protocols, profiles and initiatives. The product supports both the CIM-XML and WS-Management protocols. The product allows end users to extend the test suire by add tests, and custom profiles
- SDK Pro - The WBEM Solutions SDK Pro is a set of utilities and
libraries to aid the developer in the creation of Clients,
Providers, tools and Infrastructure. The tools include a code
generation utilities, MOF compiler, MOF formatter, conversion utilities
(MOF->XSD, MOF->XML, MOF->HTML, ...), Java client API, etc.
Inova Development Tools
Mike Brasher, Inova Development
Inova Development offers two tools to aid developers in creating providers:
- CIMPLE - Generate providers from the Class mof files that can attached as either Peqasus C++ or CMPI providers with concrete C++ objects
- Konkrete - Generate CMPI providers from the Class mof files that use only the C compiler and that generate type-save concrete CIM interfaces from the MOF definitions.
This presentation will introduce both products and will include both an overview of the technologies and demonstration of the generation of providers with both technologies.
WBEM Solutions J WBEM Server
Jim Davis, WBEM Solutions
The WBEM Solutions J WBEM Server is the only enterprise level
Java-based WBEM Server in
the industry. The J WBEM Server is used in many shipping products
today; embedded products, proxy-based products, client applications and
services tier implementations.
This session will describe the architecture, features, programming
interfaces and the future roadmap. The J WBEM Server has many
custom features, such as rebranding, built in infrastructutre profiles,
IPv6 support, logging and tracing, configuration of IP address/port
from behind firewall to name a few. This session will
provide a complete description of how the J WBEM Server is used by
customers today as well as the licensing terms.
OpenPegasus
Karl Schopmeyer, Inova Development
This presentation will present an overview of the OpenPegasus CIM Server and environment including the current status of the project and expected new functionality in the next generation. It will also provide information on the use of Pegasus in embedded systems.
Griffin - a Multi-protocol Manageability Framework
Tim Potter, Hewlett Packard
This presentation will describe an experimental CIMOM written in the functional programming language Erlang. Erlang is peculiarly suited to writing network servers and has an unusual set of concurrency, fault-tolerant and robustness features not present in other commonly used languages. The Griffin project is attempting to be not merely another CIMOM, but a flexible platform for implementing services based on manageability protocols.
ECUTE open source tooling
overview and demo
David Judkovics, IBM
Andreas Maier, IBM
OpenTestMan Update
Akash Malhotra, AMD
OpenTestMan (OTM) is an Open Source DASH test tool that was introduced at MDC 2007. In the last year, it has matured, increased in scope, improved its user interface, and gained a number of users. This presentation will briefly recap the purpose, design and uses of the tool, then move on to new features, coverage and improvements in the tool over the last year. A live demo is included.
DASH and Active Directory
Prasad Ayyalasomayajula, AMD
The DASH Implementation Specification does not describe a method for authenticating and authorizing DASH users, but a very common way of doing this in enterprise workstation environments is using Microsoft® Active Directory. This presentation describes the technical challenges of putting Active Directory capability in embedded environments and integrating it with the DASH Simple User and Role-based Authorization profiles. Architecture and code from a reference implementation of AD support will be shown, and there will be a live demo. Information about how to obtain the reference implementation will be given.
Microsoft System Center
Configuration Manager and DASH.
Bob Blair, AMD
Microsoft System Center is a widely deployed framework for managing desktop and mobile workstations enterprise-scale environments. This presentation will describe and demonstrate a DASH plugin for the Configuration Manager component of System Center, that allows enterprises to take advantage of DASH features while deploying and managing software and configuration. The plugin is build using the open source DASH SDK introduced as MDC 2007. The presentation includes a description of the architecture of the plugin, how the DASH SDK was leveraged, information on how to download and install the plug-in, and a live demo.
Integrated Access Control Manager for Consolidated Enterprise Systems
Not provided.