Answered by:
Unable to deploy Data Science VM via ARM Template due to offer terms not accepted

Question
-
Hi im trying to deploy the Windows 2016 Data Science VM using an ARM template. The storageprofile from the template is below
"imageReference": {
"publisher": "microsoft-ads",
"offer": "windows-data-science-vm",
"sku": "windows2016byol",
"version": "latest"
},I have enabled automated deployment for this marketplace item via the console and confirmed via PowerShell that it is set (Remvoed some values to keep it short)
Publisher : microsoft-ads
Product : windows-data-science-vm
Plan : windows2016
LicenseTextLink : <licence URL>
PrivacyPolicyLink : <privacy Policy>
Signature : <SIG>
Accepted : True
Signdate : 18/01/2018 10:18:18However when i deploy the template, i get the below error
Template deployment returned the following errors:
10:17:25 - Error: Code=MarketplacePurchaseEligibilityFailed; Message=Marketplace purchase el
igibilty check returned errors. See inner errors for details.
10:17:26 - Error: Code=BadRequest; Message=Offer with PublisherId: microsoft-ads, OfferId: w
indows-data-science-vm cannot be purchased due to validation errors. See details for more in
formation.[{"Legal terms have not been accepted for this item on this subscription. To accep
t legal terms using PowerShell, please use Get-AzureRmMarketplaceTerms and Set-AzureRmMarket
placeTerms API(https://go.microsoft.com/fwlink/?linkid=862451) or deploy via the Azure porta
l to accept the terms":"StoreApi"}]
The deployment validation failedHas anyone else seen this or know why this could be an happening?
Chris Gibson
- Edited by Chris Gibson Thursday, January 18, 2018 10:38 AM
- Moved by CHEEKATLAPRADEEP-MSFTMicrosoft employee Thursday, January 18, 2018 10:52 AM Better suited here (Moved from Azure Management Portal)
Thursday, January 18, 2018 10:25 AM
Answers
-
Chris,
Before the first time you deploy DSVM through ARM template you must accept the terms of service. As Paul mentioned this is a Azure marketplace VM requirements and applies to all marketplace VMs (including the DSVM). To accept the TOS you can go to the portal and in your subscription blade setup programmatic deployment. See attached screenshot in portal (click on highlighted link on your portal).
There is also a API to accept the terms from powershell or through REST API.
- Marked as answer by Chris Gibson Wednesday, February 7, 2018 10:57 PM
Friday, January 26, 2018 12:53 AM
All replies
-
Hi,
We have two SKUs for Windows 2016: windows2016 and windows2016byol. The first is called "Data Science Virtual Machine - Windows 2016" in the Marketplace, while the second is called "{CSP} Data Science Virtual Machine - Windows 2016". The second is intended for cloud solution providers, while the first is for everyone else. It looks like you have accepted the terms for one SKU and are trying to deploy the other in your ARM template. Assuming you do not need the CSP edition, can you change the template to use the windows2016 SKU and try again?
Best,
Paul
Thursday, January 18, 2018 11:37 PM -
Hi i updated the SKU as suggested, but i still recieved the same error when trying to deploy the template
Chris Gibson
Friday, January 19, 2018 6:55 AM -
Thanks Chris. The DSVM team does not build this functionality, so you would be better suited at the Marketplace forums or submitting a support ticket in the Portal using the Support link in the top-right corner.Friday, January 19, 2018 7:31 PM
-
Chris,
Before the first time you deploy DSVM through ARM template you must accept the terms of service. As Paul mentioned this is a Azure marketplace VM requirements and applies to all marketplace VMs (including the DSVM). To accept the TOS you can go to the portal and in your subscription blade setup programmatic deployment. See attached screenshot in portal (click on highlighted link on your portal).
There is also a API to accept the terms from powershell or through REST API.
- Marked as answer by Chris Gibson Wednesday, February 7, 2018 10:57 PM
Friday, January 26, 2018 12:53 AM -
Forgot to mention - This is a one time step for each edition (offer) of the DSVM. Once you accept the terms, you can deploy programmatically from ARM template as many times for that offer.Friday, January 26, 2018 12:54 AM
-
Try adding following line in deploy.ps1 before calling New-AzureRmResourceGroupDeployment
Get-AzureRmMarketplaceTerms
-Publisher"microsoft-ads"-Product"windows-data-science-vm"-Name"windows2016byol"|Set-AzureRmMarketplaceTerms-Accept
Tuesday, February 6, 2018 7:32 PM -
yeah I already tried that and it didn't work. As suggested it only started working after I had enabled it for the subscription (deploy via automation) and deployed one manually
Chris Gibson
- Proposed as answer by Femisulu-MSFT Thursday, March 22, 2018 11:16 AM
- Unproposed as answer by Femisulu-MSFT Thursday, March 22, 2018 11:17 AM
Wednesday, February 7, 2018 10:57 PM -
Thanks! That did the trick for me! :)Monday, September 10, 2018 5:42 PM