Control: GKE clusters should use Container-Optimized OS(cos) node image
Description
This control checks that GKE clusters use Container-Optimized OS(cos) node image.
Usage
Run the control in your terminal:
powerpipe control run terraform_gcp_compliance.control.kubernetes_cluster_cos_node_image
Snapshot and share results via Turbot Pipes:
powerpipe loginpowerpipe control run terraform_gcp_compliance.control.kubernetes_cluster_cos_node_image --share
SQL
This control uses a named query:
select address as resource, case when (attributes_std -> 'node_config' -> 'image_type') is null then 'alarm' when (attributes_std -> 'node_config' ->> 'image_type') ilike 'COS_%' then 'ok' else 'alarm' end as status, split_part(address, '.', 2) || case when (attributes_std -> 'node_config' -> 'image_type') is null then ' node image type not defined' when (attributes_std -> 'node_config' ->> 'image_type') ilike 'COS_%' then ' COS node image type used' else ' COS node image type not used' end || '.' reason , path || ':' || start_linefrom terraform_resourcewhere type in ('google_container_node_pool', 'google_container_cluster');