turbot/gcp_labels

Control: Compute snapshots should not exceed label limit

Description

Check if the number of labels on Compute snapshots do not exceed the limit.

Usage

Run the control in your terminal:

powerpipe control run gcp_labels.control.compute_snapshot_label_limit

Snapshot and share results via Turbot Pipes:

powerpipe login
powerpipe control run gcp_labels.control.compute_snapshot_label_limit --share

Steampipe Tables

Params

ArgsNameDefaultDescriptionVariable
$1label_limit
60

SQL

with analysis as (
select
self_link,
title,
cardinality(array(select jsonb_object_keys(labels))) as num_label_keys,
location, project
from
gcp_compute_snapshot
)
select
self_link as resource,
case
when num_label_keys > $1::integer then 'alarm'
else 'ok'
end as status,
title || ' has ' || num_label_keys || ' label(s).' as reason,
location, project
from
analysis