Sha256: b150e37b56dd57489049b6b467e442ac55920b38b43a4e6bcd75e2ba5be558bd

Contents?: true

Size: 978 Bytes

Versions: 3

Compression:

Stored size: 978 Bytes

Contents

# frozen_string_literal: true

require 'terracop/cop/base'

module Terracop
  module Cop
    module Aws
      # This cop checks for AWS Security Group rules with no description.
      # Reading terraform code can immediately tell why a rule is in place, but
      # the AWS console is a bit more cryptic and a description can help.
      #
      # @example
      #   # bad
      #   resource "aws_security_group_rule" "rule" {
      #     source_security_group_id = "sg-123456"
      #   }
      #
      #   # good
      #   resource "aws_security_group_rule" "rule" {
      #     source_security_group_id = "sg-123456"
      #     description = "Traffic from the load balancer"
      #   }
      class DescribeSecurityGroupRules < Base
        register
        applies_to :aws_security_group_rule

        def check
          return unless attributes['description'] == ''

          offense('Add a description to security group rules.')
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
terracop-0.2.0 lib/terracop/cop/aws/describe_security_group_rules.rb
terracop-0.1.1 lib/terracop/cop/aws/describe_security_group_rules.rb
terracop-0.1.0 lib/terracop/cop/aws/describe_security_group_rules.rb