# frozen_string_literal: true module Gitlab module Ci class Config module Entry class Include class Rules::Rule < ::Gitlab::Config::Entry::Node include ::Gitlab::Config::Entry::Validatable include ::Gitlab::Config::Entry::Attributable ALLOWED_KEYS = %i[if].freeze attributes :if validations do validates :config, presence: true validates :config, type: { with: Hash } validates :config, allowed_keys: ALLOWED_KEYS with_options allow_nil: true do validates :if, expression: true end end end end end end end end