Publishing Azure Marketplace ARM Templates
This article defines some basic concepts of the Azure Marketplace and introduces how to publish ARM templates on the Azure Marketplace Publisher Portal.
Within this article, scope of “Azure Marketplace” is limited to China.
After publishing the ARM template, it can be viewed on the Azure Marketplace and Azure Portal.
1. Prerequisites and Preparations
1.1 You must have an Azure account and have registered as an Azure Marketplace service provider. Please refer to the Azure Marketplace Publisher Guide.
1.2 Prepare the pre-publication data and ARM template file by referring to the Azure Marketplace ARM Template Creation Guide.
1.3 After you have finished preparing the ARM template, you need to perform on-premises testing. Note that you can use tools such as PowerShell or Azure CLI. For details, refer to Create and Deploy Your First Azure Resource Manager Template.
1.4 Prepare the createUiDefinition file by referring to the Azure Marketplace ARM Template UI Guide.
2. Sign in to the Azure Marketplace CPP and publish the ARM template
Sign in to the CPP (Cloud Partner Portal).
As shown below, click "New offer" -> "Azure Applications" in the left-hand navigation bar, then start the ARM template publishing process.
The ARM template publication content includes four forms: "Offer Settings", "SKUs", "Marketplace", and "Support." Each form consists of a set of text fields to be filled in. Required fields are marked with a red asterisk (*). After each form is filled out, you must click "Save" to prevent content loss.
2.1 Define the Offer and SKU
The SKU is the commercial name for an ARM template and is the smallest Offer that can be purchased. An ARM template can include a number of virtual machines, storage accounts, virtual networks, Web apps, data warehouse servers, and 3rd party services. It is in essence the complete configuration file of a resource group.
In Azure Marketplace, the publisher, Offer and SKU can only define one ARM product. The Offer is an SKU “parent” and the publisher can have many Offers and determine the structure of any Offer. When the Offer is pushed to the publication environment, the SKU is pushed along with it. Please carefully consider the SKU IDs because they are displayed within the URL:
Azure Marketplace: https://market.azure.cn/marketplace/apps/{Publisher}.{OfferIdentifier}{SKUidentifier}?tab=Overview
Azure portal: https://portal.azure.cn/#blade/Microsoft_Azure_Marketplace/GalleryFeaturedMenuItemBlade/selectedMenuItemId/home
2.2 Marketplace
The Marketplace primarily includes marketing-related content and laws, as well as sales lead management assets and specifications.
2.3 Support
Support includes Support Department contact details and technical support information.
These four areas are described in detail below.
3. Offer Settings
Offer ID
The Offer ID is the unique identifier that represents the offer within Azure Marketplace. The Offer ID is generally the name of the product or service that the seller intends to sell on the Azure Marketplace.
The Offer ID can only include lowercase letters, numbers, dashes or underscores, may only end with lowercase letters or numbers, and may not exceed 50 characters in length. This identifier will be displayed in the product URL and ARM template. Note that once the Offer request is submitted, the field cannot be modified.
Publisher ID
The Publisher ID dropdown box allows you to select the publisher that will publish the Offer. Note that once the Offer request is submitted, the field cannot be modified.
Name
Offer names are used to identify offers on the Azure Marketplace platform. They are only displayed within the Publishing Platform, and are not displayed externally or to users. Offer names must be no longer than 50 characters or 25 Chinese characters. If possible, please include an identifiable trademark. The offer name may be the same as the title in section 5.
Select “Save” to save your progress. You will add the SKUs for your Offer in the next tab.
4. SKUs
From the “SKU” tab, you can create one or multiple SKUs. Solutions can be differentiated by SKU based on their feature sets, throughput or scalability, billing model, or other specific features. Click “New SKU” to create an SKU.
SKU ID
A SKU requires an ID in the URL and the ID must be unique within the CPP (Cloud Partner Portal). SKU names may include lower case letters, numbers and dashes, but may not end with a dash. The maximum length is 50 characters and Chinese characters are not supported. Note that once the Offer request is submitted, the field cannot be modified.
Title
The SKU name is the name that appears publicly in the Azure Marketplace and Azure portal. It cannot exceed 25 Chinese characters or 50 characters. If possible, please include an identifiable trademark and avoid including the company name.
Summary
The summary is visible to customers, so it should be easy to read and no longer than 100 characters or 50 Chinese characters. The title and summary description of the SKU is displayed on the “Plan” tab of the Azure Marketplace product pages, as well as on the Azure portal product pages. Azure Marketplace examples are given below:
Description
The description field is visible to customers. It is displayed on the product page in the Azure portal. Descriptions should generally include a simple explanation of the SKU. We recommend a length of no more than 100 characters. Descriptions are displayed in the Azure portal as shown below:
Price
There are two price models: Free and BYOL.
For the free model, Microsoft only charges an infrastructure cost and not a software cost. Please refer to the list of Virtual Machine Pricing.
Regarding the BYOL model, the publisher can administer the license to run the virtual machine software and Microsoft only charges for infrastructure costs. Under these models, the user must obtain a license by emailing or calling the service provider, or by contacting them by some other means. The service provider can specify whether or not to give the user a free trial. A 30-day, 90-day, or no free trail is calculated from the start of the deployed ARM product.
Description
Provides a detailed description of the solution template definition in the SKU. The version number represents the current version of the solution template definition. The zip file contains the template file mainTemplate.json, the interface definition creation file createUIDefinition.json, and any other files you need to use. Please refer to the ARM Template Creation Guide and the ARM Template UI Guide for template development.
5. Marketplace
The Azure Marketplace primarily includes marketing-related content and laws, as well as the sales lead management policy and practices. This section of the content will mainly be shown in Azure Marketplace.
- Marketing assets include the offer name, description and logo.
- Legal assets include the privacy policy, terms of use, and other legal documents.
- The sales lead management policy allows you to specify how to handle information about potential end users from Azure Marketplace.
Title
The title of the Offer is the official name of the Offer that appears publicly in the Azure Marketplace. It cannot exceed 25 Chinese characters or 50 characters. If possible, you should include an identifiable trademark, such as “XXX Cloud Platform Firewall 2018”.
Summary
The summary is visible to customers, so it should be easy to read and no longer than 50 Chinese characters or 100 characters.
Description
The detailed description is visible to the customer and is displayed on the image’s product page. The detailed description generally includes a product introduction, user guide, and technical details. It makes up the main portion of the p, so please pay attention to the overall layout and the following points:
- The product introduction generally includes a product overview, function features, technical architecture, and application scenarios.
- The user guide generally includes product deployment instructions, login instructions, and usage methods.
- The technical details generally include installation location, system startup and shutdown, log management, system maintenance, and other considerations.
- The user guide and technical details can also be written as a product manual and added to Related Links.
- Pictures cannot be inserted in the detailed description. To add pictures, please refer to the Picture module.
- The description must be no longer than 3,000 characters or 1,500 Chinese characters, but we recommend a minimum length of 500 characters.
- Customer support, generally include customer service email and customer service phone number. If you need to display on the left side of the product page, you need to add the "Customer Support" tag in the HTML code mode <!--Customer Support-->. Afterwards, if you edit the description in the HTML code mode, you need to re-add the "Customer Support" tag <!--Customer Support-->, otherwise you can edit and modify it directly.
Example:
<!--Customer Support-->
<h3>Customer support</h3>
<ul>
<li>Customer Email:support@domain.com</li>
<li>Customer Phone Number:000-000-0000</li>
</ul>
You can add HTML tags to the detailed description, but only basic HTML tags such as p, em, ul, li, ol, strong and b are supported (you can also use plain text, but it will look messier). You can edit using a rich text editor. We recommend two simple rich text editors: HtmlCleaner and Simditor. Both allow you to use simple HTML tags.
If you are using HtmlCleaner, as shown below, please edit the text in the Visual Editor, then in the “HTML Editor”, select “Copy to clipboard” to copy the HTML source code.
If you are using Simditor, as shown below, once you finish editing the text, select the text with the cursor and right-click. You can select “View selected source code” and copy the source code directly. Alternatively, you can select “View element” (or press F12), right-click to select the DIV tag in which the text block is located, and then press “Copy” -> “Internal HTML” to finish copying. Please note that the source code cannot include complex HTML tags such as DIV or CSS.
Preview subscription ID
The preview subscription ID is the subscription ID used by the Publisher for the interface preview and deployment testing of the image in the Azure portal and Azure Marketplace when the ARM is published to the "Publisher signoff" status. The subscription ID can be viewed by clicking on the "Cost management + billing" menu in the Azure portal.
Related links
You can add up to five links to useful information such as user guides. These links will be displayed after the ARM user guide.
Choose categories
Select as many as three categories related to the image from the category list. The selected categories will be used to match your offer to the product categories in the Azure Marketplace and Azure portal.
Upload a Logo Icon
All logos uploaded to Cloud Partner Portal must comply with the following rules:
- The Azure layout uses a simple color palette, so please keep the number of main and secondary colors in the logo to a minimum.
- The main colors in the Azure portal are black and white, so you should avoid using these colors as your logo background, and instead choose colors that will make your logo stand out in Azure portal. We recommend that you use a simple main color, and if you are using a transparent background, please ensure that the logo or text are not in black, white or blue.
- Avoid using gradient backgrounds in your logo background.
- Avoid putting any text on your logo, even if the text consists of your company or brand name. The logo should appear “smooth”, and gradients should be avoided.
- The logo should not be stretched.
- The logo must comply with the resolution requirements (40x40 for small, 90x90 for medium, 115x115 for large, 255x115 for wide).
Upload Screenshots
The first “cover” image will appear on both the Azure portal and Azure Marketplace image details page. Any further images will only be displayed on the Azure Marketplace image details page. You can upload a maximum of five images. Please refer to Upload a Logo in the previous section for details of image specifications. Images must also conform to the 533x324 resolution requirement.
Sales lead management
If you want to collect user information and manage sales leads, you need to provide an Azure storage connection string. The system will then save the user data in your storage table. For details, see Azure Marketplace Sales Leads.
Fill in the privacy statement
We suggest that the privacy statement URL address be placed on the service provider website.
Fill in the End User License Agreement
We suggest that the End User License Agreement URL address is placed on the service provider company website.
Select whether software is open source
Please note that not all free software is open source.
Upload the product authentication files
Product authentication files are not mandatory but uploading them speeds up approval.
Examples of Main Marketplace Information
6. Support
Please note that the technical and customer support information for this service is displayed on the Offer details page. The contact information that you supplied when you registered for Azure Marketplace will not be displayed on the Offer details page.
Fill in the technical support information
Please provide contact information for Technical Support. As far as possible, contact details should be given for the selected company rather than personal details, to prevent this information becoming invalid due to personal changes.
Fill in customer service support information
Please provide contact details for Customer Support. As far as possible, contact details should be given for the selected company rather than personal details, to prevent this information becoming invalid due to personal changes.
After you finished entering the information, please select “Save” to save your progress.
7. Problems with Publishing Images for the Global Azure Marketplace on Azure China Marketplace
ARM template descriptions on the global Azure Marketplace are generally in English, but we recommend that you use Chinese if you publish ARM templates on the Azure China Marketplace.
Next steps
After you have finished creating an ARM template, the next steps are to submit onboard requests for Onboard requests and administrator approval.
Feedback
- If you have any questions about this documentation, please submit user feedback in the Azure Marketplace.
- You can also look for solutions in the FAQs.