class HyperDock::Resource::Projects
Public Instance Methods
attributes()
click to toggle source
# File lib/hyperdock/resource/projects.rb, line 34 def attributes { names: projects } end
links()
click to toggle source
# File lib/hyperdock/resource/projects.rb, line 28 def links @links ||= { projects: project_links }.merge(named_links) end
named_links()
click to toggle source
# File lib/hyperdock/resource/projects.rb, line 22 def named_links @named_links ||= project_links.map do |project| { "project:#{project[:name]}" => project } end.reduce(&:merge) end
project_links()
click to toggle source
# File lib/hyperdock/resource/projects.rb, line 15 def project_links @project_links ||= projects.map do |project| { name: project, href: "/project/#{project}" } end end
projects()
click to toggle source
# File lib/hyperdock/resource/projects.rb, line 8 def projects @projects ||= ::Docker::Container.all.map do |container| container.info.dig 'Labels', 'com.docker.compose.project' end.uniq end