library
turbot/azure_thrifty

Detect & correct AppService plans 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 with no app attached and either sends notifications or attempts to perform predefined corrective actions upon the collection.

Getting Started

By default, this trigger is disabled, however it can be configured by setting the below variables

  • app_service_plans_if_unused_trigger_enabled should be set to true as the default is false.
  • app_service_plans_if_unused_trigger_schedule should be set to your desired running schedule
  • app_service_plans_if_unused_default_action should be set to your desired action (i.e. "notify" for notifications or "delete_app_service_plan" to delete app service plan).

Then starting the server:

flowpipe server

or if you've set the variables in a .fpvars file:

flowpipe server --var-file=/path/to/your.fpvars

Query

select
concat(
asp.id,
' [',
asp.resource_group,
'/',
asp.subscription_id,
']'
) as title,
asp.id as id,
asp.name,
asp.resource_group,
asp.subscription_id,
asp._ctx ->> 'connection_name' as cred
from
azure_app_service_plan as asp
left join azure_subscription as sub on sub.subscription_id = asp.subscription_id
where
apps is null
and sku_tier <> 'Free';

Schedule

15m