Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/opendata-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,8 @@ jobs:
{
git config --global user.name "${{ env.CI_COMMIT_AUTHOR }}"
git config --global user.email "finopstoolkit@users.noreply.github.com"
git commit -a -m "${{ env.CI_COMMIT_MESSAGE }}"
git add -A
git commit -m "${{ env.CI_COMMIT_MESSAGE }}"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Confirmed this is the actual gap: git commit -a stages only modifications to already-tracked files, so newly generated open-data files were never committed. Worth noting the failure was silent because a failing git commit is followed by git push, which exits 0 β€” the job stayed green while doing nothing. Might be worth a set -e or an explicit check later, but not in this PR.

git push
}
# Build-OpenData.ps1 -Test calls Test-PowerShell.ps1, which requires Pester 6 (#2254):
Expand Down
4 changes: 4 additions & 0 deletions docs-mslearn/TOC.yml
Original file line number Diff line number Diff line change
Expand Up @@ -262,6 +262,10 @@
items:
- name: Open data commands
href: toolkit/powershell/data/open-data-commands.md
- name: Get-FinOpsCommitmentDiscountEligibility
href: toolkit/powershell/data/get-finopscommitmentdiscounteligibility.md
- name: Get-FinOpsInstanceSizeFlexibility
href: toolkit/powershell/data/get-finopsinstancesizeflexibility.md
- name: Get-FinOpsPricingUnit
href: toolkit/powershell/data/get-finopspricingunit.md
- name: Get-FinOpsRegion
Expand Down
6 changes: 5 additions & 1 deletion docs-mslearn/toolkit/open-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Use open data to normalize and enhance your FinOps reporting, ensur
ms.topic: concept-article
author: flanakin
ms.author: micflan
ms.date: 09/01/2026
ms.date: 09/02/2026
ms.service: finops
ms.subservice: finops-toolkit
ms.reviewer: micflan
Expand Down Expand Up @@ -175,6 +175,8 @@ A few important notes about the data:
<!-- prettier-ignore-start -->
> [!div class="nextstepaction"]
> [Download](https://github.com/microsoft/finops-toolkit/releases/latest/download/CommitmentDiscountEligibility.csv)
> [!div class="nextstepaction"]
> [See PowerShell](powershell/data/get-finopscommitmentdiscounteligibility.md)
<!-- prettier-ignore-end -->

<br>
Expand All @@ -201,6 +203,8 @@ A few important notes about the data:
<!-- prettier-ignore-start -->
> [!div class="nextstepaction"]
> [Download](https://github.com/microsoft/finops-toolkit/releases/latest/download/InstanceSizeFlexibility.csv)
> [!div class="nextstepaction"]
> [See PowerShell](powershell/data/get-finopsinstancesizeflexibility.md)
<!-- prettier-ignore-end -->

<br>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
---
title: Get-FinOpsCommitmentDiscountEligibility command
description: Get commitment discount eligibility for a meter using the Get-FinOpsCommitmentDiscountEligibility command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
ms.date: 09/02/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the Get-FinOpsCommitmentDiscountEligibility command in the FinOpsToolkit module.
---

# Get-FinOpsCommitmentDiscountEligibility command

The **Get-FinOpsCommitmentDiscountEligibility** command returns a pre-computed lookup of which meters are eligible for commitment-based discounts (reservations and savings plans), sourced from the Azure Retail Prices API.

<br>

## Syntax

```powershell
Get-FinOpsCommitmentDiscountEligibility `
[[-MeterId] <string>] `
[-SpendEligibility <string>] `
[-UsageEligibility <string>]
```

<br>

## Parameters

| Name | Description |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| MeterId | Optional. The meter ID to look up. Accepts wildcards. Default = \* (all). |
| SpendEligibility | Optional. Filters to meters with the specified savings plan (spend commitment) eligibility. FOCUS classifies a savings plan as a spend commitment because you commit to an amount of money. Expected values: Eligible, Not Eligible. Default = null (all). |
| UsageEligibility | Optional. Filters to meters with the specified reservation (usage commitment) eligibility. FOCUS classifies a reservation as a usage commitment because you commit to a quantity of usage. Expected values: Eligible, Not Eligible. Default = null (all). |
Comment on lines +36 to +37

<br>

## Examples

The following examples demonstrate how to use the Get-FinOpsCommitmentDiscountEligibility command to retrieve commitment discount eligibility based on different criteria.

### Get based on meter ID

```powershell
Get-FinOpsCommitmentDiscountEligibility -MeterId "00003b45-e996-5b04-b673-a2db710f9237"
```

Returns commitment discount eligibility for the specified meter.

### Get meters eligible for reservations

```powershell
Get-FinOpsCommitmentDiscountEligibility -UsageEligibility "Eligible"
```

Returns all meters eligible for reservations.

<br>

## Give feedback

Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.

<!-- prettier-ignore-start -->
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/OpenData.GetCommitmentDiscountEligibility)
<!-- prettier-ignore-end -->

If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.

<!-- prettier-ignore-start -->
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
<!-- prettier-ignore-end -->

<br>

## Related content

Related products:

- [Cost Management](/azure/cost-management-billing/costs/)
- [Azure Retail Prices API](/rest/api/cost-management/retail-prices/azure-retail-prices)

Related solutions:

- [FinOps toolkit Power BI reports](../../power-bi/reports.md)
- [FinOps hubs](../../hubs/finops-hubs-overview.md)
- [FinOps toolkit open data](../../open-data.md)

<br>
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
---
title: Get-FinOpsInstanceSizeFlexibility command
description: Get the instance size flexibility group and ratio for an ARM SKU using the Get-FinOpsInstanceSizeFlexibility command in the FinOpsToolkit module.
author: flanakin
ms.author: micflan
ms.date: 09/02/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
ms.reviewer: micflan
#customer intent: As a FinOps user, I want to understand how to use the Get-FinOpsInstanceSizeFlexibility command in the FinOpsToolkit module.
---

# Get-FinOpsInstanceSizeFlexibility command

The **Get-FinOpsInstanceSizeFlexibility** command returns instance size flexibility (ISF) ratios, sourced from the Azure Reservations Catalogs API. ISF lets a reservation apply across multiple SKUs in the same flexibility group, weighted by a ratio.

<br>

## Syntax

```powershell
Get-FinOpsInstanceSizeFlexibility `
[[-ArmSkuName] <string>] `
[[-InstanceSizeFlexibilityGroup] <string>]
```

<br>

## Parameters

| Name | Description |
| ---------------------------- | ------------------------------------------------------------------------------------------------------ |
| ArmSkuName | Optional. The ARM SKU name to look up. Accepts wildcards. Default = \* (all). |
| InstanceSizeFlexibilityGroup | Optional. The instance size flexibility group to find SKUs for. Accepts wildcards. Default = \* (all). |

<br>

## Examples

The following examples demonstrate how to use the Get-FinOpsInstanceSizeFlexibility command to retrieve instance size flexibility data based on different criteria.

### Get based on ARM SKU name

```powershell
Get-FinOpsInstanceSizeFlexibility -ArmSkuName "Standard_D4s_v5"
```

Returns the flexibility group and ratio for the Standard_D4s_v5 SKU.

### Get based on flexibility group

```powershell
Get-FinOpsInstanceSizeFlexibility -InstanceSizeFlexibilityGroup "Dsv5 Series"
```

Returns all SKUs in the Dsv5 Series flexibility group.

<br>

## Give feedback

Let us know how we're doing with a quick review. We use these reviews to improve and expand FinOps tools and resources.

<!-- prettier-ignore-start -->
> [!div class="nextstepaction"]
> [Give feedback](https://portal.azure.com/#view/HubsExtension/InProductFeedbackBlade/extensionName/FinOpsToolkit/cesQuestion/How%20easy%20or%20hard%20is%20it%20to%20use%20the%20FinOps%20toolkit%20PowerShell%20module%3F/cvaQuestion/How%20valuable%20are%20the%20FinOps%20toolkit%20PowerShell%20module%3F/surveyId/FTK/bladeName/PowerShell/featureName/OpenData.GetInstanceSizeFlexibility)
<!-- prettier-ignore-end -->

If you're looking for something specific, vote for an existing or create a new idea. Share ideas with others to get more votes. We focus on ideas with the most votes.

<!-- prettier-ignore-start -->
> [!div class="nextstepaction"]
> [Vote on or suggest ideas](https://github.com/microsoft/finops-toolkit/issues?q=is%3Aissue%20is%3Aopen%20label%3A%22Tool%3A%20PowerShell%22%20sort%3A"reactions-%2B1-desc")
<!-- prettier-ignore-end -->

<br>

## Related content

Related products:

- [Cost Management](/azure/cost-management-billing/costs/)
- [Instance size flexibility for reservations](/azure/cost-management-billing/reservations/instance-size-flexibility)

Related solutions:

- [FinOps toolkit Power BI reports](../../power-bi/reports.md)
- [FinOps hubs](../../hubs/finops-hubs-overview.md)
- [FinOps toolkit open data](../../open-data.md)

<br>
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: Open data commands
description: Learn about PowerShell commands available in the FinOpsToolkit module to work with FinOps open data and integrate datasets into your workflow.
author: flanakin
ms.author: micflan
ms.date: 04/01/2026
ms.date: 09/02/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
Expand All @@ -19,6 +19,8 @@ The FinOps toolkit open data PowerShell commands help you integrate datasets int

## Commands

- [Get-FinOpsCommitmentDiscountEligibility](Get-FinOpsCommitmentDiscountEligibility.md) – Gets commitment discount eligibility for a meter.
- [Get-FinOpsInstanceSizeFlexibility](Get-FinOpsInstanceSizeFlexibility.md) – Gets the instance size flexibility group and ratio for an ARM SKU.
- [Get-FinOpsPricingUnit](Get-FinOpsPricingUnit.md) – Gets an Azure region ID and name.
- [Get-FinOpsRegion](Get-FinOpsRegion.md) – Gets an Azure region ID and name.
- [Get-FinOpsResourceType](Get-FinOpsResourceType.md) – Gets details about an Azure resource type.
Expand Down
6 changes: 4 additions & 2 deletions docs-mslearn/toolkit/powershell/powershell-commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ title: FinOps toolkit PowerShell module
description: Automate and scale your FinOps efforts using the FinOps toolkit PowerShell module, which includes commands to manage FinOps solutions.
author: flanakin
ms.author: micflan
ms.date: 08/13/2026
ms.date: 09/02/2026
ms.topic: reference
ms.service: finops
ms.subservice: finops-toolkit
Expand All @@ -19,7 +19,7 @@ The FinOps toolkit PowerShell module is a collection of commands to automate and

## Install the module

The FinOps toolkit module requires PowerShell 7, which is built into [Azure Cloud Shell](https://portal.azure.com/#cloudshell) and supported on all major operating systems.
The FinOps toolkit module requires PowerShell 7, which is built into [Azure Cloud Shell](https://portal.azure.com/#cloudshell) and supported on all major operating systems.

Azure Cloud Shell comes with PowerShell 7 and Azure PowerShell preinstalled. If you aren't using Azure Cloud Shell, you need to [Install PowerShell](/powershell/scripting/install/installing-powershell) first and then run the following commands to install Azure PowerShell:

Expand Down Expand Up @@ -70,6 +70,8 @@ The FinOps toolkit PowerShell module includes commands to manage FinOps solution

### Open data commands

- [Get-FinOpsCommitmentDiscountEligibility](data/Get-FinOpsCommitmentDiscountEligibility.md) – Gets commitment discount eligibility for a meter.
- [Get-FinOpsInstanceSizeFlexibility](data/Get-FinOpsInstanceSizeFlexibility.md) – Gets the instance size flexibility group and ratio for an ARM SKU.
- [Get-FinOpsPricingUnit](data/Get-FinOpsPricingUnit.md) – Gets an Azure region ID and name.
- [Get-FinOpsRegion](data/Get-FinOpsRegion.md) – Gets an Azure region ID and name.
- [Get-FinOpsResourceType](data/Get-FinOpsResourceType.md) – Gets details about an Azure resource type.
Expand Down
Loading