Skytap Cloud CI Plugin

Skip to end of metadata
Go to start of metadata

Plugin Information

Plugin ID skytap Changes In Latest Release
Since Latest Release
Latest Release
Latest Release Date
Required Core
Dependencies
2.01
Mar 05, 2014
1.509.1
Source Code
Issue Tracking
Maintainer(s)
GitHub
Open Issues
Tom Milligan (id: tmilligan)
Usage Installations 2013-Oct 13
2013-Nov 9
2013-Dec 7
2014-Jan 9
2014-Feb 15
2014-Mar 16
This plugin allows you to use Jenkins to run continuous integration and automated testing workflows using dynamically created complex development and testing environments in Skytap Cloud

Introduction

Skytap Cloud is a self-service cloud that makes it easy for you to create development and test environments on demand within minutes. The environments can be as simple as a client application running on a single VM to a multi-component distributed application running on multiple VMs across multiple networks. Skytap makes it easy for you to set up these environments and save them off as golden templates. These templates in turn can be used to create clones, as many as needed, to run your test passes, be it for unit testing, functional testing, integration testing, stress/performance testing or user acceptance testing.

The Skytap Cloud CI Plugin for Jenkins provides a set of pre-packed Skytap Cloud actions for use in configuring a Jenkins based continuous integration workflow. These pre-packaged Skytap Cloud actions provide the user with actions that are commonly needed in provisioning environment resources during a CI run. 

Specifically, the Skytap Cloud Actions provided in the plugin are as follows:

  • Add Configuration to Project
  • Change Configuration State
  • Connect to Network in another Configuration (ICNR)
  • Connect to VPN Tunnel
  • Create Configuration from Template
  • Create Published URL
  • Create Template from Configuration
  • Delete Configuration
  • Add Template to Project
  • Merge Template into Configuration
  • Create Published Service
  • List Published URL for Configuration
  • List VM Published Service

Each of these Skytap Actions is described in detail in this document.

Installation of the Skytap Cloud CI Plugin for Jenkins

From the Jenkins Web UI

You can install the Skytap Cloud CI Plugin for Jenkins directly from the Jenkins Web UI by navigating to the Jenkins “Manage Plugins” page.


 
Once there, you can select the “Available” tab and filter for “Skytap”


When you see the “Skytap Cloud CI Plugin for Jenkins” select the “Install” checkbox and click the “Download now and install after restart” button.
When Jenkins restarts, you will have access to Skytap Cloud Actions in the Jenkins Project Configuration screen “Add Build Step” dropdown menu.

From a Downloaded Skytap Cloud CI Plugin for Jenkins file

If you have downloaded the "skytap.hpi" plugin file directly from the Jenkins plugin repository, you can install it by navigating to the Jenkins “Manage Plugins” page as described earlier and then, on that page, select the “Advanced” tab:


 
Find the “Upload Plugin” section and click the “Choose File” button.  Then navigate to where the downloaded Skytap Cloud CI Plugin for Jenkins file (skytap.hpi) is located and select it.  Once that is done, click the “Upload” button.

After the plugin is uploaded, restart Jenkins by entering the following URL in your browsers URL Address: http://_your-jenkins-server_/jenkins/restart and click the “Yes” button:

When Jenkins restarts, you will have access to Skytap Actions in the Jenkins Project Configuration screen “Add Build Step” dropdown menu.

Configuring the Plugin

Skytap Cloud Authentication

To use the Skytap Cloud CI plugin for Jenkins you must first be able to authenticate with Skytap Cloud.  This authentication requires a Skytap Cloud user ID and an API Token.  This is needed so that the plugin can make API calls on your behalf to manage resources in your account on Skytap Cloud. Assuming you already have a Skytap Cloud account, you can retrieve your API Token in your Skytap Account Settings:

If you don’t have a Skytap Cloud account, you can sign up for one here: http://www.skytap.com/

Once you have your security token, you will need to enter it along with your Skytap User ID in the Skytap Cloud Plugin configuration panel for your Jenkins build project.

Skytap Action Logging

The Skytap Cloud Plugin configuration panel on the “Manage Jenkins->Configure System” page controls logging of Skytap Actions.

If the checkbox is checked, verbose output on the operation of Skytap Actions will be sent to the Jenkins Project build console.

Supported Actions for Skytap Cloud

The Skytap Cloud Actions that are available for use in Jenkins project builds are exposed in the Jenkins Project Configuration screen in the “Add Build Step” dropdown menu as an “Execute Skytap Action” menu pick:

Once you select “Execute Skytap Action” you will be presented with a “Skytap Action” dropdown menu listing the available actions:
 
Depending on which action you select you will be presented with a set of input and output parameters to specify in order to enable execution of the Skytap Action.  The specific input and output parameters that are required differ depending on which Skytap Action you select.  These parameters are described below in the discussion of individual Skytap Actions.

Add Configuration to Project

This Skytap Action allows the user to specify a Skytap Configuration to add to a Skytap Project.


 

Parameters

Configuration ID --or- Configuration File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

Project ID --or- Project Name

The user can specify a specific Skytap Project ID (an integer) or a Skytap Project Name.  Whichever method is used, the project must already exist and be accessible by the users Skytap account.

Add Template to Project

This Skytap Action allows the user to specify a Skytap Template to add to a Skytap Project.

Parameters

Template ID --or- Template File

The user can specify a specific Skytap Template ID (an integer), if one is known.  If the template was created using the “Create Template from Configuration” Skytap Action, the user can specify the Skytap template by specifying the “Template Data Save File” that is an output of the “Create Template from Configuration” Skytap Action.

Project ID --or- Project Name

The user can specify a specific Skytap Project ID (an integer) or a Skytap Project Name.  Whichever method is used, the project must already exist and be accessible by the users Skytap account.

Change Configuration State

When this Skytap Action is selected, the user must then select the desired state to which they wish to transition the configuration.  Choices are “Run Configuration”, “Suspend Configuration”, and Shutdown Configuration”.

Once a state change action is specified the user can fill out the remaining parameters.

Parameters

Power off VM if shutdown fails

The “Power off VM if shutdown fails” checkbox serves as a failsafe if a VM fails to shutdown.  If this checkbox is checked, and the specified Skytap Configuration fails to shutdown after a period of 5 minutes, the specified Skytap Configuration will be forcefully shutdown or “powered off”.  This is equivalent to clicking the “Power off this machine” button in the Skytap Web GUI.

Configuration ID --or- Configuration File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

Connect to Network in another Configuration (ICNR)

When this Skytap Action is selected, the specified networks in the two specified configurations will be connected using the Internal Configuration Network Routing (ICNR) protocol.  This feature is useful during testing, where one or more test environments need to access a central resource, like a database or Active Directory server. The network subnets in the two configurations must already be configured to allow an ICNR connection to occur. You can read more about ICNR in the Skytap Help Documentation.

Parameters

Source Configuration ID --or- Source Configuration Data File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

Source Network Name

This required parameter specifies the name of the network in the Source Configuration to use in the ICNR connection attempt. If there is more than one network in the configuration with the specified name (not recommended), the first network encountered in the meta data associated with the configuration will be used.


Target Configuration ID --or- Target Configuration Data File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

Target Network Name

This required parameter specifies the name of the network in the Source Configuration to use in the ICNR connection attempt.  The network in the Target Network Name must be configured to be visible to other networks.

Connect to VPN Tunnel

When this Skytap Action is selected, the specified Skytap VPN definition will be connected to the specified network in the specified Skytap Configuration.

Parameters

Configuration ID --or- Configuration File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

Configuration Network Name

This required parameter specifies the name of the network in the skytap Configuration to use in the VPN connection attempt.

VPN ID

This parameter is the Integer ID of the Skytap VPN definition to which to connect the specified network in the configuration.

Create Configuration from Template

This Skytap Action allows the user to specify a Skytap Template from which to create a Skytap Configuration.

Parameters

Template ID --or- Template File

The user can specify a specific Skytap Template ID (an integer), if one is known.  If the template was created using the “Create Template from Configuration” Skytap Action, the user can specify the Skytap template by specifying the “Template Data Save File” that is an output of the “Create Template from Configuration” Skytap Action.

Configuration Name

This parameter allows the user to specify a name for the created configuration.

Configuration Data Save File

This output file contains the Skytap Configuration metadata in json format.  This metadata contains the Skytap Configuration ID as well as the other metadata that defines the Skytap Configuration.  This file can then be used as input to Skytap Actions that require a Skytap Configuration ID or other Skytap Configuration metadata.

Create Published URL

When this Skytap Action is selected, a Skytap Published URL will be created and associated with the specified Configuration.

Parameters

Configuration ID --or- Configuration File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

URL Save Filename

When the Published URL is created, the text of the URL will be written into the file specified in the Filename specified in this parameter.

Select Permissions

This dropdown list specifies the permissions associated with the Published URL that will be created.  The meaning of these permissions can be reviewed in the Skytap Help materials at this URL: Skytap Published URL Help

Require Password for Access

If this checkbox is checked, the user can specify a password that will be required before anyone using the created Published URL will be allowed to access the associated Skytap resource.

Create Published Service

When this Skytap Action is selected, a Skytap Published Service will be added to the port number specified by the “Port Number” parameter in the network with the name specified by the “Network Name” parameter in the virtual machine specified by the “VM ID” or “VM Name” parameter in the configuration specified by the “Configuration ID” or “Configuration File” parameter.

If the specified configuration has more than one Virtual Machine with the name specified by the “Virtual Machine Name” parameter, the first Virtual Machine with the specified name that is listed in the configuration metadata will be used.

If the specified configuration has more than one network with the name specified by the “Network Name” parameter, the first network with the specified name that is listed in the configuration metadata will be used.

The text of the public URL and port in the form “public-URL:port-number” is saved in a file with the name specified in the file specified by the “Published Service Save Filename” parameter. 

Parameters

Configuration ID --or- Configuration File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

VM ID --or- VM Name

This parameter specifies the Virtual Machine to which the Published Service is to be attached.  The specification can be a VM ID or a VM Name.  Note that if the specified configuration has more than one VM with the same name, the first VM with that name that is encountered in the Skytap Configuration metadata definition will be selected.

Network Name

This parameter specifies the Network to which the Published Service is to be attached. Note that if the specified VM has more than one network with the same name, the first network with that name that is encountered in the Skytap Configuration metadata definition will be selected.

Port Number

This parameter specifies the Port to which the Published Service will be connected.

Published Service Save Filename

This parameter specifies the file to which the text that describes the created Published Service will be written.  The format of the text will be of the form “public URL:port-number”.

Create Template from Configuration

This Skytap Action allows the user to specify a Skytap Configuration from which to create a Skytap Template.

Parameters

Configuration ID --or- Configuration File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

Template Name

This parameter allows the user to specify a name for the created template.

Template Description

This parameter allows the user to specify a description for the created template.

Template Data Save Filename

This output file contains the Skytap Template metadata in json format.  This metadata contains the Skytap Template ID as well as the other metadata that defines the Skytap Configuration.  This file can then be used as input to Skytap Actions that require a Skytap Template ID or other Skytap Template metadata.

Delete Configuration

This Skytap Action allows a user to delete the specified Skytap Configuration.

Parameters

Configuration ID --or- Configuration File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

List Published URL for Configuration

The configuration desktops URL with the specified Published URL Name for the specified configuration is written into the file specified by the “Published URL Save Filename” parameter.  Published URLs for individual VMs in a configuration are not supported.

Parameters

Configuration ID --or- Configuration File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

Published URL Name

This parameter specifies the name of the desired published URL.  If more than one published URL in the specified configuration has the same name, the first URL encountered in the configuration metadata will be selected.

Published URL Save Filename

The text of the published configuration URL will be written into the file specified in this parameter.

List VM Published Service

The Skytap Published Service for the port specified in the “Port Number” parameter in the network with the name specified by the “Network Name” parameter in the virtual machine specified by the “VM ID” or “VM Name” parameter in the configuration specified by the “Configuration ID” or “Configuration File” parameter is written into the file specified by the “Published Service Save Filename” parameter.

If the specified configuration has more than one Virtual Machine with the name specified by the “Virtual Machine Name” parameter, the first Virtual Machine with the specified name that is listed in the configuration metadata will be used.

If the specified configuration has more than one network with the name specified by the “Network Name” parameter, the first network with the specified name that is listed in the configuration metadata will be used.

The text of the public URL and port in the form “public-URL:port-number” is saved in a file with the name specified in the file specified by the “Published Service Save Filename” parameter.


 

Parameters

Configuration ID --or- Configuration File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

VM ID --or- VM Name

This parameter specifies the Virtual Machine to which the Published Service is to be attached.  The specification can be a VM ID or a VM Name.  Note that if the specified configuration has more than one VM with the same name, the first VM with that name that is encountered in the Skytap Configuration metadata definition will be selected.

Network Name

This parameter specifies the Network to which the Published Service is to be attached. Note that if the specified VM has more than one network with the same name, the first network with that name that is encountered in the Skytap Configuration metadata definition will be selected.

Port Number

This parameter specifies the Port to which the Published Service will be connected.

Published Service Save Filename

This parameter specifies the file to which the text that describes the created Published Service will be written.  The format of the text will be of the form “public URL:port-number”.

Merge Template into Configuration

The Virtual Machines contained in the Skytap Template identified by the specified Skytap Template ID or Template Data File are added to the Skytap Configuration identified by the specified Skytap Configuration ID or Configuration Data File.

 

Parameters

Configuration ID --or- Configuration File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

Template ID --or- Template File

The user can specify a specific Skytap Configuration ID (an integer), if one is known.  If the configuration was created using the “Create Configuration from Template” Skytap Action, the user can specify the Skytap configuration by specifying the “Configuration Data Save File” that is an output of the “Create Configuration from Template” Skytap Action.

Labels

Edit
plugin-external plugin-external Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.