Skip to content

Commit

Permalink
Updated the readme about how to build the extension package.
Browse files Browse the repository at this point in the history
  • Loading branch information
Hongtao Chen committed Sep 25, 2018
1 parent 236806e commit 8955826
Showing 1 changed file with 50 additions and 0 deletions.
50 changes: 50 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,53 @@ This DMTF standard (https://www.dmtf.org/standards/redfish) is supported by many

## Redfish on Windows Admin Center
If we can proxy the Redfish REST service via a [Window Admin Center gateway plugin](https://docs.microsoft.com/en-us/windows-server/manage/windows-admin-center/extend/guides/use-custom-gateway-plugin), and build a refish device [solution extension](https://docs.microsoft.com/en-us/windows-server/manage/windows-admin-center/extend/develop-solution) inside the Windows Admin Center UI, then we can manage not only the Windows, also the physical server that runs the Windows, and even other network devices.

## Putting things together

Windows Admin Center uses NUGET package as it's extension package format. So we need to build a nuget package for this redfish device extension.

**To use unsigned plugin, you must install WAC with DEV_MODE turned on, introduction is [here](https://docs.microsoft.com/en-us/windows-server/manage/windows-admin-center/extend/prepare-development-environment)**
```cmd
msiexec /i WindowsAdminCenter<version>.msi DEV_MODE=1
```

1. Create a `package` folder
2. Build the [gateway REST call forwarder project](https://github.com/hongtao-chen/wac-rest), create a `plugin` folder under the previous `package` folder and copy the `RestForwarder.dll` into it.
3. Build the [redfish device solution extension](https://github.com/hongtao-chen/wac-redfish-extension), copy the whole `public` folder under the `package` folder.

4. Create a nuget spec file in the `package` folder, below is an example:
```xml
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
<metadata>
<packageTypes>
<packageType name="WindowsAdminCenterExtension" />
</packageTypes>
<id>redfish</id>
<version>0.0.1</version>
<title>Redfish Device Solution (Demo)</title>
<authors>Hongtao Chen</authors>
<owners>Hongtao Chen</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<projectUrl>https://github.com/hongtao-chen/redfish-device</projectUrl>
<description>Redfish device solution demo</description>
<copyright>MIT</copyright>
<tags></tags>
</metadata>
<files>
<file src="public\**\*.*" target="ux" />
<file src="plugin\**\*.*" target="gateway" />
</files>
</package>
```

5. run the command below to create the package
```bat
nuget pack redfish.nuspec
```
6. Copy the generated package `redfish.0.0.1.nupkg` into a network share, and add this share as a extension feed in WAC.

7. Install the `Redfish Device Solution (Demo)` from the WAC extension management UI.

Detail introduction about publishing WAC extension is here: https://docs.microsoft.com/en-us/windows-server/manage/windows-admin-center/extend/publish-extensions


0 comments on commit 8955826

Please sign in to comment.