microsoft / microsoft/finops-toolkit

Running Deploy-FinOpsHub sees - Cannot convert value "13" to type "System.Version". Error

Open
#2,293 3 comments 0 reactions 1 assignee View on GitHub

@flanakin is already working on this.

Since Sep 8, 2026.

Type: Bug 🐛
Dominant language
PowerShell
Stars
603
Forks
248
Avg merge
7d 11h
Merged PRs (30d)
11

Description

🐛 Problem

When upgrading / running Deploy-FinOpsHub without using latest as the version the deployment fails:

##[error]Cannot convert value "13" to type "System.Version". Error: "Version string portion was too short or too long. (Parameter 'input')"
##[error]PowerShell exited with code '1'.

👣 Repro steps

  1. We have a pipeline that runs an azure hosted agent, logs in to Azure with a service connection, installs the finops module, then imports it, and then deploys the finops hub. We have deployed version 0.9 successfully without using latest, and version 13 by using latest back in April..
  2. Pipeline command is
  • task: AzurePowerShell@5
    displayName: "Deploy FinOps Hub"
    inputs:
    azureSubscription: ${{ parameters.serviceConnection }}
    pwsh: true
    azurePowershellVersion: LatestVersion
    ScriptType: InlineScript
    workingDirectory: ${{ parameters.workingDirectory }}
    Inline: |
    Write-Host "Starting FinOps Hub deployment..."
    Deploy-FinOpsHub -Name "${{ parameters.Name }}"
    -ResourceGroup "${{ parameters.ResourceGroup }}" -Location "${{ parameters.Location }}"
    -Version "${{ parameters.Version }}" -DataExplorerName "${{ parameters.DataExplorerName }}"
    -DataExplorerSku "${{ parameters.DataExplorerSku }}" -DataExplorerCapacity "${{ parameters.DataExplorerCapacity }}"
    -Verbose

variables:
ServiceConnectionName: "finops-sc"
Name: "finops-non-prod"
ResourceGroup: "finopshub-rsg-01"
Location: "westeurope"
Version: "13"
DataExplorerName: "finops-hub-np-adx"
DataExplorerSku: "Dev(No SLA)_Standard_E2a_v4"
DataExplorerCapacity: 2
DataExplorerRawRetentionInDays: 0
DataExplorerFinalRetentionInMonths: 13

Uncomment to use a different FinOpsToolkit Powershell module version than Version.

moduleVersion: "13.0"

🤔 Expected

The Install starts to work as expected but then

Starting FinOps Hub deployment...
VERBOSE: Performing the operation "CreateTempDirectory" on target "C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit".
VERBOSE: Creating directory 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit'.
VERBOSE: Resource provider Microsoft.EventGrid is already registered.
VERBOSE: Resource provider Microsoft.CostManagementExports is already registered.
VERBOSE: Performing the operation "DownloadTemplate" on target "13".
VERBOSE: WebRequest: v1.1 GET https://api.github.com/repos/microsoft/finops-toolkit/releases
VERBOSE: WebResponse: 200 OK with application/json payload
VERBOSE: Found asset 'contributor-sync.ics'.
VERBOSE: Found asset 'CostManagementConnector.pbix'.
VERBOSE: Found asset 'CostManagementTemplateApp.pbix'.
VERBOSE: Found asset 'dataset-examples.zip'.
VERBOSE: Expanding zip 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit\dataset-examples.zip'.
VERBOSE: Found asset 'dataset-metadata.zip'.
VERBOSE: Expanding zip 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit\dataset-metadata.zip'.
VERBOSE: Found asset 'finops-alerts-v13.zip'.
VERBOSE: Expanding zip 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit\finops-alerts-v13.zip'.
VERBOSE: Found asset 'finops-hub-copilot.zip'.
VERBOSE: Expanding zip 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit\finops-hub-copilot.zip'.
VERBOSE: Found asset 'finops-hub-dashboard.json'.
VERBOSE: Found asset 'finops-hub-fabric-setup-Hub.kql'.
VERBOSE: Found asset 'finops-hub-fabric-setup-Ingestion.kql'.
VERBOSE: Found asset 'finops-hub-v13.zip'.
VERBOSE: Expanding zip 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit\finops-hub-v13.zip'.
VERBOSE: Found asset 'finops-workbooks-v13.zip'.
VERBOSE: Expanding zip 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit\finops-workbooks-v13.zip'.
VERBOSE: Found asset 'office-hours.ics'.
VERBOSE: Found asset 'optimization-engine-v13.zip'.
VERBOSE: Expanding zip 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit\optimization-engine-v13.zip'.
VERBOSE: Found asset 'PowerBI-demo.zip'.
VERBOSE: Expanding zip 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit\PowerBI-demo.zip'.
VERBOSE: Found asset 'PowerBI-kql.zip'.
VERBOSE: Expanding zip 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit\PowerBI-kql.zip'.
VERBOSE: Found asset 'PowerBI-storage.zip'.
VERBOSE: Expanding zip 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit\PowerBI-storage.zip'.
VERBOSE: Found asset 'PricingUnits.csv'.
VERBOSE: Found asset 'Regions.csv'.
VERBOSE: Found asset 'ResourceTypes.csv'.
VERBOSE: Found asset 'ResourceTypes.json'.
VERBOSE: Found asset 'Services.csv'.
##[error]Cannot convert value "13" to type "System.Version". Error: "Version string portion was too short or too long. (Parameter 'input')"
##[error]PowerShell exited with code '1'.

🔧 Environment

  • **FinOps hub version: 13.0 and 14.0
  • **Billing account type: MCA (Microsoft Customer Agreement)

ℹ️ Additional context

If i use the version 13.0 or 14.0 in my variables I get a different error as it doesn't download the toolkit

Starting FinOps Hub deployment...
VERBOSE: Performing the operation "CreateTempDirectory" on target "C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit".
VERBOSE: Creating directory 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit'.
VERBOSE: Resource provider Microsoft.EventGrid is already registered.
VERBOSE: Resource provider Microsoft.CostManagementExports is already registered.
VERBOSE: Performing the operation "DownloadTemplate" on target "13.0".
VERBOSE: WebRequest: v1.1 GET https://api.github.com/repos/microsoft/finops-toolkit/releases
VERBOSE: WebResponse: 200 OK with application/json payload
##[error]Could not find template 'main.bicep' at path 'C:\Users\VssAdministrator\AppData\Local\Temp\FinOpsToolkit'.
##[error]PowerShell exited with code '1'.

🙋‍♀️ Ask for the community

I believe that if i use the version "latest" it would work but obviously move me to the latest version. Right now we want to lock to version 13 as we upgraded to this version in April via the "latest" option and want the pipeline to remain at 13 when ran, not upgrade to latest.

We could use your help:

  1. Please vote this issue up (👍) to prioritize it.
  2. Leave comments to help us solidify the vision.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.