Overview
This article will go through the components of a Request template and the capabilities it delivers.
A request template is the definition of an Azure Stack Marketplace offering. When published and consumed it results in a request that can be tracked by the requesting user. It contains all publishing information that is advertised in the Azure Stack Marketplace. It also contains the wizard interface configuration that will be presented to the user when initiating the request, as well as the automation workflow configuration that is executed when submitted.
Request Templates Authoring
Request templates can be listed through the Request templates tile or menu item in your EvOps account dashboard.
Security
All Marketplace items are by default accessible and visible to all portal users. It’s your available plan services and quota that limit if you can consume the Azure Stack Marketplace item. In EvOps the default accessibility and visibility of a published Request template have the same behaviour, but if required security limitations can be set to restrict access to the published Request template so only specific users or groups have access to the Marketplace items. If a user hasn't been assigned access to the published Request template, it will be prompted instantly with a message stating that it doesn’t have access to the selected offering.
Limiting Marketplace item access to specific users or groups:
- Open a Request template that you want to limit access to
- Click Security in Settings section of the left-side menu
- Click Add
- Choose the users or groups for whom you want to limit access to the offering from the list
- Click Select
- Click Overview menu item to get back to Request template dashboard
- Click Publish to publish the template to Marketplace
Marketplace
Marketplace items contain advertisement information about the offering. This information contains both visual elements as well descriptive texts and web links. This helps users considering consuming the offering to get a better understanding if this is what they are looking for.
When clicking Marketplace menu in a Request template, you will get directly to the General tab.
Display name |
Display name is the public name of the request template and is shown in Marketplace. |
Name |
Name is the unique name of the Request template in the EvOps account. It’s not visible in the Marketplace, but it's visible to users managing Request templates. Name is specified when creating Request template and cannot be changed. A workaround to be able to change Name is to export and import Request template, then you can modify Name when importing. |
Publisher |
Publisher is shown to users in Marketplace, it’s specified when creating Request template and cannot be changed. |
Summary |
Marketplace has changed, this summary is not shown anymore. |
Long summary |
Marketplace has changed, this summary is not shown anymore. |
Categories |
Here you select what Category in Marketplace the published Request template should be added to. You can select existing categories or create your own categories. |
In the Description tab, you enter the main descriptive text for the offering. The field supports HTML formatting.
In the Icons tab, you add icons for the offering.
Requirements: Icons in PNG format with exact sizes as below:
- Small - 40x40px
- Medium - 90x90px
- Large - 115x115px
- Wide - 255x115px (Currently not used)
In the Screenshots tab, you add screenshot for the offering that will be visible on the main offering blade. Screenshots should be in PNG format with exact size 533x324px.
In the Useful links tab, you add hyperlinks that could be helpful describing the offering.
Wizard
Azure Stack Marketplace native items are often technically oriented and may cause a lot of questions. In Request templates you can take full control of what input is required from the user to be able to fulfil the request. Show certain questions only if other questions have specific answers etc. You can also both populate wizard prompts with data from external systems as well as validate inputs.
There are some general settings of Request template wizards that are explained below.
Mode |
The wizard can be configured in two different modes:
|
Steps |
If Request template wizard is configured in Wizard mode, additional steps can be added that group prompts per page and make wizards more intuitive. |
Summary |
If Summary is enabled, last step in the wizard will summarize all the selection values. Optionally an End-User Agreement can be shown as a part of the Summary page. |
Prompts
The wizard design supports a rich selection of prompt types, in this section we will describe each prompt type in detail.
Type: Textbox |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Default value |
If set, will be the default prompt value shown. |
Watermark |
If set, shows a watermark help text inside prompt. |
Sub-label |
If set, shows a text below the prompt. Can be used to display domain name for a service etc. |
Source/Source configuration |
If this prompt should have a dynamically populated value, the following extension sources are available:
|
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Multi-line Textbox |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Default value |
If set, will be the default prompt value shown. |
Source/Source configuration |
If this prompt should have a dynamically populated value, the following extension sources are available:
|
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Checkbox |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Default value |
If set, will be the default prompt True/False. |
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Date |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Date constraints |
If this prompt should have input date constraints, these options are available:
|
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Time |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Default value |
If set, will be the default prompt date shown. |
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Date time |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Date constraint |
If this prompt should have input date and time constraints, these options are available:
|
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: List |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Source/Source configuration |
If this prompt should have a dynamically populated value, the following extension sources are available:
|
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: File upload |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Default value |
If set, will be the default prompt value shown. |
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Numeric |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Default value |
If set, will be the default prompt value shown. |
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Options |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Source/Source configuration |
If this prompt should have a dynamically populated value, the following extension sources are available:
|
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Resource Picker |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Filter by type |
Check types of resources that should be listed. |
Blade |
Set in what blade the prompt should be shown |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Slider |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Default value |
If set, will be the default prompt value shown. |
Min value |
Set minimum slider value. |
Max value |
Set maximum slider value. |
Step |
Set how many numbers that will be added/deducted when moving slider. |
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Resource Group |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Default value |
If set, will be the default prompt value shown. |
Hide picker |
If set, prompt is hidden if default value has been set. |
Subscription |
Prompt that is used to get selected Subscription ID. |
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Subscription |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Default value |
If set, will be the default prompt value shown. |
Hide if single subscription |
If set, prompt is hidden to users if they only have one subscription. |
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Location |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Default value |
If set, will be the default prompt value shown. |
Hide if single location |
If set, prompt is hidden to users if there is only one location available. |
Subscription ID from prompt |
Prompt that is used to get selected Subscription ID. |
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: SKU |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Blade title |
As SKU prompts open a new blade, this property sets the display name of the new blade. |
Blade subtitle |
As SKU prompts open a new blade, this property sets the subtitle of the new blade. |
No selection text |
If set, displays a watermark text if no selection has been made. If not set, text "No SKU has been selected" is shown. |
Add SKU |
Allows adding customized SKU items. |
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Type: Password |
|
ID |
Request template unique Prompt ID that is referenced in wizards and workflows. |
Label |
Prompt display name that is shown in wizard. |
Tooltip |
If set, display icon that shows information message when hovering with mouse. |
Read-only |
If enabled, prompt is greyed-out and read-only. |
Blade |
Set in what blade the prompt should be shown. |
Visibility |
Configure a rule that the prompt should only be visible if a certain criterion is met. |
Validator |
Configure if prompt should validate inserted values. Available validation methods are:
|
Remote Source and Validation
Many of the prompts have the Source and Validation option Service Endpoints. This means that you can use Azure Function hosted on Web Apps in Azure Stack or in public Azure to populate your prompts with data or validate data that users insert in real-time.
This opens up for a broad number of integration scenarios since Functions can be written in many different programming languages incl. C# and PowerShell. Take a look at the article Getting Started with Service Endpoints for more details and how to get started.
Workflow
A Request template has a core workflow that contains activities that drive the workflow forward. The request will be marked as completed if all activities are executed successfully. Specific activities can be skipped based on criteria that you can specify on each activity.
When clicking Workflow menu in a Request template, you will enter a visual workflow designer.
In the middle-pane you have the workflow. You edit activities by selecting them, when selected the right-side editing pane will show activity properties. You can add activities using the +Add activity and you can rearrange activity order by drag and drop.
Dynamic Content
Input data in workflows can either be static meaning that you set values manually, or you can use dynamic content mapping data from prompts.
Currently it’s limited to mapping from prompts. Map output from workflow activities is not currently supported, but support for this will be added Q2 2019.
It’s possible to manipulate strings and set conditions using Liquid mark-up language. You can find more details about Liquid and reference here.
In below screenshot sample, Liquid is used for comparing prompt values and set mapping value based on the result.
Activities
Request
The request activity is added automatically to the workflow and cannot be removed. It should be considered as the starting point of the workflow.
Request activity can be configured with the following input parameters:
Title |
Title is required and is the name of the request that is created. |
Description |
Description is the initial description of a request. Description text will be added as the first conversation entry in a created request. |
Classification |
Set a classification on the created request. Currently available classifications are limited to Not configured, Hardware, Infrastructure, and Website. |
Priority |
Set a priority on created request. Available options are Not configured, High, Medium, and Low. |
Support group |
Assign the created request to a support group. Currently available support groups are limited to Not configured, Tier 1, Tier 2, and Tier 3. |
Source |
Set a source on created request. Available options are Not configured, API, Azure Alert, Console, OMS Alert, and Portal. |
ARM Deployment
The ARM Deployment activity allows deploying Azure Resource Manager (ARM) templates in your workflows. This unlocks many scenarios since you can export templates directly from Azure Stack Marketplace or download templates from the community and paste it into the activity and you are ready to go.
The activity also has the capability to deploy ARM templates in Azure as well in other Azure Stack stamps or Azure environments using custom endpoints. ARM templates will generate prompts on ARM Deployments main blade. For more details, visit: ARM Deployment Activity
HTTP Request
HTTP Request activity executes an HTTP POST request. The input defines the endpoint and the expected request body. For more details, visit: HTTP Request Activity
The activity can be used to trigger Azure Functions or Azure Logical Apps. See below samples.
Trigger Azure Function Sample
Trigger Logical Apps Sample
Manual Task
Manual Task activity allows incorporating manual labor in workflows. Assign users or groups as task implementer. For more details, visit: Manual Task Activity
Review
Review activity allows approvals in workflows. Assign users or groups as reviewers. For more details, visit: Review Activity
SMA Runbook
SMA Runbook activity allows execution of Service Management Automation (SMA) runbooks in workflows. For more details, visit: SMA Runbook Activity
TFVC Check-in
TFVC Check-in activity allows you to check in content to Team Foundation Server and Visual Studio Online. It also allows integration with Review activities to show impact (content comparison) as a part of the review. For more details, visit: TFVC Check-in Activity
Timer
Timer activity pauses the workflow for a specified period. This duration is an absolute time value. It is best to adjust the duration, so the workflow can progress in a timely manner. For more details, visit: Timer Activity
Comments
0 comments
Article is closed for comments.