func()

in pkg/bundle/ruleset/engine/cel/ext/package.go [45:108]


func (packageLib) CompileOptions() []cel.EnvOption {
	return []cel.EnvOption{
		//nolint:staticcheck // TODO: deprecated usage. Requires an update.
		cel.Declarations(
			decls.NewVar("p", harpPackageObjectType),
			decls.NewFunction("match_label",
				decls.NewInstanceOverload("package_match_label_string",
					[]*exprpb.Type{harpPackageObjectType, decls.String},
					decls.Bool,
				),
				decls.NewInstanceOverload("package_match_label_string_string",
					[]*exprpb.Type{harpPackageObjectType, decls.String, decls.String},
					decls.Bool,
				),
			),
			decls.NewFunction("match_annotation",
				decls.NewInstanceOverload("package_match_annotation_string",
					[]*exprpb.Type{harpPackageObjectType, decls.String},
					decls.Bool,
				),
				decls.NewInstanceOverload("package_match_annotation_string_string",
					[]*exprpb.Type{harpPackageObjectType, decls.String, decls.String},
					decls.Bool,
				),
			),
			decls.NewFunction("match_path",
				decls.NewInstanceOverload("package_match_path_string",
					[]*exprpb.Type{harpPackageObjectType, decls.String},
					decls.Bool,
				),
			),
			decls.NewFunction("match_secret",
				decls.NewInstanceOverload("package_match_secret_string",
					[]*exprpb.Type{harpPackageObjectType, decls.String},
					decls.Bool,
				),
			),
			decls.NewFunction("has_secret",
				decls.NewInstanceOverload("package_has_secret_string",
					[]*exprpb.Type{harpPackageObjectType, decls.String},
					decls.Bool,
				),
			),
			decls.NewFunction("has_all_secrets",
				decls.NewInstanceOverload("package_has_all_secrets_list",
					[]*exprpb.Type{harpPackageObjectType, decls.NewListType(decls.String)},
					decls.Bool,
				),
			),
			decls.NewFunction("is_cso_compliant",
				decls.NewInstanceOverload("package_is_cso_compliant",
					[]*exprpb.Type{harpPackageObjectType},
					decls.Bool,
				),
			),
			decls.NewFunction("secret",
				decls.NewInstanceOverload("package_secret_string",
					[]*exprpb.Type{harpPackageObjectType, decls.String},
					harpKVObjectType,
				),
			),
		),
	}
}