# # Docker facts # $docker_containers = '' $docker_containers_running = '' $docker_containers_paused = '' $docker_containers_stopped = '' $docker_images = '' $docker_version = '' $docker_storage_driver = '' $docker_logging_driver = '' $docker_live_restore = '' $test_docker=%x(which docker 2>/dev/null) if $? == 0 $docker_info = %x(docker info 2>/dev/null) $docker_info.each_line do |line| if (line[/^Containers/]) $docker_containers = line[/^Containers:\s*([0-9]*)/,1].strip end if (line[/^\sRunning/]) $docker_containers_running = line[/^\sRunning:\s*([0-9]*)/,1].strip end if (line[/^\sPaused/]) $docker_containers_paused = line[/^\sPaused:\s*([0-9]*)/,1].strip end if (line[/^\sStopped/]) $docker_containers_stopped = line[/^\sStopped:\s*([0-9]*)/,1].strip end if (line[/^Images/]) $docker_images = line[/^Images:\s*([0-9]*)/,1].strip end if (line[/^Server\sVersion/]) $docker_version = line[/^Server\sVersion:\s*([0-9.]*)/,1].strip end if (line[/^Storage\sDriver/]) $docker_storage_driver = line[/^Storage\sDriver:\s*(.*)/,1].strip end if (line[/^Logging\sDriver/]) $docker_logging_driver = line[/^Logging\sDriver:\s*(.*)/,1].strip end if (line[/^Live\sRestore\sEnabled/]) $docker_live_restore = line[/^Live\sRestore\sEnabled:\s*(.*)/,1].strip end end Facter.add("docker_containers") do setcode do "#{$docker_containers}" end end Facter.add("docker_containers_running") do setcode do "#{$docker_containers_running}" end end Facter.add("docker_containers_paused") do setcode do "#{$docker_containers_paused}" end end Facter.add("docker_containers_stopped") do setcode do "#{$docker_containers_stopped}" end end Facter.add("docker_images") do setcode do "#{$docker_images}" end end Facter.add("docker_version") do setcode do "#{$docker_version}" end end Facter.add("docker_storage_driver") do setcode do "#{$docker_storage_driver}" end end Facter.add("docker_logging_driver") do setcode do "#{$docker_logging_driver}" end end Facter.add("docker_live_restore") do setcode do "#{$docker_live_restore}" end end end $docker_compose_version='' $test_docker_compose=%x(which docker-compose 2>/dev/null) if $? == 0 $docker_compose_info = %x(docker-compose version 2>/dev/null) $docker_compose_info.each_line do |line| if (line[/^docker-compose version/]) $docker_compose_version = line[/^docker-compose version\s*([0-9.]*)/,1].strip end end Facter.add("docker_compose_version") do setcode do "#{$docker_compose_version}" end end end