Regardless of the registration method you choose, you must set the properties of the Extension data object.

You use the following properties to define the Extension data object.

Property Name

Description

<key>

The plug-in package ID that you defined in your plug-in package manifest file, plugin-package.xml file.

<client>

This property must contain one ExtensionClientInfo data object, with the following properties.

Property Name

Description

<version>

The dot-separated version number of the plug-in package that is defined in plugin-package.xml.

<type>

Must be set to vsphere-client-serenity.

<url>

The location of the plug-in package ZIP file that is accessible on a Web server.

<server>

Optional. If the URL uses HTTPS, you must define a <server> property in your extension data object. The <server> property must contain the SHA1 thumbprint for the server where your plug-in package ZIP file is stored. For information about the <server> property, see the following example.

The following example shows an example Extension object defined in an XML file.

<extension>
   <description>
      <label>My plugin</label>
      <summary>My first vSphere Client plugin</summary>
   </description>
   <key>com.mycompany.myPlugin.MyPlugin</key>
   <company>VMware</company>
   <version>1.0.0</version>
   <client>
      <version>1.0.0</version>
      <description>
         <label>My plugin</label>
         <summary>My first vSphere Client plugin</summary>
      </description>
      <company>VMWare</company>
      <type>vsphere-client-serenity</type>
      <url>http://a-web-server-path/mypluginPackage.zip</url>
   </client>
</extension>

A best practice is to use a secure URL (HTTPS) for your plug-in package ZIP file location. If you use an HTTPS URL, you must include a <server> property in your vim.Extension data object. The <server> property contains the SHA1 thumbprint for the server that corresponds to the URL.

The following example shows an example <server> property.

<extension>
...
    <server>
        <url>https://myhost/helloworld-plugin.zip</url>
        <description>
            <label>Helloworld</label>
            <summary>Helloworld sample plugin</summary>
        </description>
        <company>VMware</company>
        <!-- SHA1 Thumbprint of the server hosting the .zip file -->
        <serverThumbprint>
            3D:E7:9A:85:01:A9:76:DD:AC:5D:83:1C:0E:E0:3C:F6:E6:2F:A9:97
        </serverThumbprint>
        <type>HTTPS</type>
        <adminEmail>your-email</adminEmail>
    </server>
</extension>