INNER CODE UNIT · Ruby
black_list
Shopify/krane · lib/krane/cluster_resource_discovery.rb:22
black_list = %w(Namespace Node ControllerRevision Event)
fetch_resources(namespaced: namespaced).map do |resource|
next unless resource["verbs"].one? { |v| v == "delete" }
next if black_list.include?(resource["kind"])
[resource["apigroup"], resource["version"], resource["kind"]].compact.join("/")
end.compact
end
def fetch_resources(namespaced: false)
responses = Concurrent::Hash.new
Krane::Concurrency.split_across_threads(api_paths) do |path|
responses[path] = fetch_api_path(path)["resources"] || []
end
responses.flat_map do |path, resources|
resources.map { |r| resource_hash(path, namespaced, r) }
end.compact.uniq { |r| "#{r['apigroup']}/#{r['kind']}" }
end