Skip to content
This repository has been archived by the owner on Oct 3, 2023. It is now read-only.

Commit

Permalink
Add the 'Customize Portal' plugin to samples repo.
Browse files Browse the repository at this point in the history
This plugin supersedes the plugin-lifecycle plugin which was available
at https://github.com/vmware/vcd-ext-sdk/tree/master/ui/plugin-lifecycle.

Testing Done:
Built the plugin according to the instructions in the README.md file.
Uploaded the plugin to a vCD 9.7 testbed and verified that I could
perform the following tasks:
* Upload plugin
* Disable/enable plugin
* Publish/Unpublish plugin
* Delete plugin

Signed-off-by: Jeff Moroski <jmoroski@vmware.com>
  • Loading branch information
Jeff Moroski committed Jul 29, 2019
1 parent 0286ad9 commit ac54d38
Show file tree
Hide file tree
Showing 30 changed files with 11,425 additions and 12 deletions.
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
.awcache/
node_modules/
dist/
manage_plugin.json
manage_plugin.py
40 changes: 28 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,35 @@


# Extensibility Samples for vCloud Director
# VCD Customize Portal Plugin

## Overview
This repository contains example plugins for integrating with, and extending vCloud Director capabilities.
This is a plugin for configuring various parts of the vCloud Director UI portals. It currently supports managing plugins, but will soon support managing themes, and branding of the portals.

## UI Seed Plugin
The seed plugin ([source code](../../tree/plugin-seed-9.1)) is a fully functional UI plugin that can be deployed to a vCloud Director installation. It showcases the basic use cases of a UI plugin including:
* Overall project structure and required libraries
* Definition of plugin manifest (metadata for the plugin)
* Registration of a top level navigation menu
* Basic I18N
* Leveraging host-provided data
* Referencing assets embedded in the plugin
The plugin will appear as an option in the top level navigation menu of the provider portal.

## Contributing
## Getting Started
### Prerequisites ###
This document assumes NPM 5+ as the package manager, as well as NodeJS 8.x or 10.x. NodeJS 12.x has known incompatibilities.

An installation of vCloud Director version 9.1.0.2 or above is required to deploy the plugin.

### Build
```bash
git clone -b customize-portal --single-branch https://github.com/vmware-samples/vcd-ext-samples.git
cd vcd-ext-samples

# install project dependencies
npm ci

# build plugin
npm run build
```

### Install
> Note: A service provider admin account is necessary to install the plugin into vCloud Director.
> Note 2: If you are running version 9.7 or later of vCloud Director, you do **not** need to install this plugin, as it is installed by default in a 9.7 system.
#### Automated Deploy Method ####
A Python script is available [here](https://github.com/vmware-samples/vcd-ext-samples/tree/plugin-manager) that will automatically deploy a plugin to the associated vCD environment. It uses various settings from the manifest.json file to define the plugin. Usage is detailed in the [README](https://github.com/vmware-samples/vcd-ext-samples/blob/plugin-manager/README.md) for the script.

The vcd-ext-samples project team welcomes contributions from the community. Before you start working with vcd-ext-samples, please read our [Developer Certificate of Origin](https://cla.vmware.com/dco). All contributions to this repository must be signed as described on that page. Your signature certifies that you wrote the patch or have the right to pass it on as an open-source patch. For more detailed information, refer to [CONTRIBUTING.md](CONTRIBUTING.md).
Loading

0 comments on commit ac54d38

Please sign in to comment.