library
turbot/azure_thrifty
- Correct App Service Plans if unused
- Correct Compute disks attached to stopped VMs
- Correct Compute disks exceeding max size
- Correct Compute unattached disks
- Correct Compute disks with high IOPS
- Correct Compute disks with low usage
- Correct Compute snapshots exceeding max age
- Correct Compute snapshots with premium storage
- Correct Compute virtual machines exceeding max age
- Correct Compute virtual machines with low utilization
- Correct HDInsight clusters exceeding max age
- Correct Kubernetes clusters exceeding max age
- Correct Kusto clusters exceeding max age
- Correct Kusto clusters without autoscaling
- Correct Monitor log profiles without retention policy
- Correct Network application gateways without autoscaling
- Correct Network load balancers if unused
- Correct Network NAT gateways if unused
- Correct Network unattached public IPs
- Correct Network virtual network gateways if unused
- Correct one App Service Plan if unused
- Correct one Compute disks attached to stopped VMs
- Correct one Compute disk unattached
- Correct one Compute disk with high IOPS
- Correct one Compute disk with low usage
- Correct one Compute disk exceeding max size
- Correct one Compute snapshot exceeding max age
- Correct one Compute snapshot with premium storage
- Correct one Compute virtual machine exceeding max age
- Correct one Compute virtual machine with low utilization
- Correct one HDInsight cluster exceeding max age
- Correct one Kubernetes cluster exceeding max age
- Correct one Kusto cluster exceeding max age
- Correct one Kusto cluster without autoscaling
- Correct one Monitor log profile without retention policy
- Correct one Network application gateway without autoscaling
- Correct one Network load balancer if unused
- Correct one Network NAT gateway if unused
- Correct one Network unattached public IP
- Correct one Network virtual network gateway if unused
- Correct one Service Fabric cluster exceeding max age
- Correct one SQL database exceeding max age
- Correct one Storage account without lifecycle policy
- Correct one Compute virtual machine scale set if unused
- Correct Service Fabric clusters exceeding max age
- Correct SQL databases exceeding max age
- Correct Storage accounts without lifecycle policy
- Correct Compute virtual machine scale sets if unused
- Detect & correct App Service Plans if unused
- Detect & correct Compute disks attached to stopped VMs
- Detect & correct Compute disks unattached
- Detect & correct Compute disks with high IOPS
- Detect & correct Compute disk with low usage
- Detect & correct Compute snapshots exceeding max age
- Detect & correct Compute snapshots with premium storage
- Detect & correct Compute virtual machines exceeding max age
- Detect & correct Compute virtual machines with low utilization
- Detect & correct Compute disks exceeding max size
- Detect & correct HDInsight clusters exceeding max age
- Detect & correct Kubernetes clusters exceeding max age
- Detect & correct Kusto clusters exceeding max age
- Detect & correct Kusto clusters without autoscaling
- Detect & correct Monitor log profiles without retention policy
- Detect & correct Network application gateways without autoscaling
- Detect & correct Network load balancers if unused
- Detect & correct Network NAT gateways if unused
- Detect & correct Network unattached public IPs
- Detect & correct Network virtual network gateways if unused
- Detect & correct Service Fabric clusters exceeding max age
- Detect & correct SQL databases exceeding max age
- Detect & correct Storage accounts without lifecycle policy
- Detect & correct Compute virtual machine scale sets if unused
- Delete Compute Disk
Get Involved
Version
Correct one AppService plan if unused
Overview
Azure AppService plans with no app attached still cost money and should be deleted.
This pipeline allows you to specify a collection of AppService plans and either sends notifications or attempts to perform predefined corrective actions upon the collection.
Whilst it is possible to utilize this pipeline standalone, it is usually called from the correct_one_app_service_plan_if_unused pipeline.
Run the pipeline
To run this pipeline from your terminal:
flowpipe pipeline run azure_thrifty.pipeline.correct_one_app_service_plan_if_unused \ --arg 'title=<string>' \ --arg 'name=<string>' \ --arg 'resource_group=<string>' \ --arg 'subscription_id=<string>' \ --arg 'cred=<string>'
Use this pipeline
To call this pipeline from your pipeline, use a step:
step "pipeline" "step_name" { pipeline = azure_thrifty.pipeline.correct_one_app_service_plan_if_unused args = { title = <string> name = <string> resource_group = <string> subscription_id = <string> cred = <string> }}
Params
Name | Type | Required | Description | Default |
---|---|---|---|---|
title | string | Yes | Title of the resource, to be used as a display name. | - |
name | string | Yes | The name of the App Service Plan. | - |
resource_group | string | Yes | Azure Resource Group of the resource(s). | - |
subscription_id | string | Yes | Azure Subscription ID of the resource(s). | - |
cred | string | Yes | Name of the credential to be used for any authenticated actions. | - |
notifier | string | Yes | The name of the notifier to use for sending notification messages. | default |
notification_level | string | Yes | The verbosity level of notification messages to send. Valid options are 'verbose', 'info', 'error'. | info |
approvers | list(string) | Yes | List of notifiers to be used for obtaining action/approval decisions. |
|
default_action | string | Yes | The default action to use for the detected item, used if no input is provided. | notify |
enabled_actions | list(string) | Yes | The list of enabled actions to provide to approvers for selection. |
|
Outputs
This pipeline has no outputs.
Tags
category = Cost
class = unused
plugin = azure
service = Azure/AppService