Sha256: dbe220a50ed8198bc083d3efefb9c3abcf3a4c9a362aea1b2b0339d7b697636e

Contents?: true

Size: 868 Bytes

Versions: 7

Compression:

Stored size: 868 Bytes

Contents

# frozen_string_literal: true

# takelage docker container purge
module DockerContainerPurge
  # Backend method for docker container purge.
  def docker_container_purge
    log.debug 'Removing orphaned docker containers'

    return false unless docker_check_running

    networks = _docker_container_purge_kill_orphaned_containers
    _docker_container_lib_remove_networks networks
  end

  private

  # Kill orphaned docker containers and return list of networks
  def _docker_container_purge_kill_orphaned_containers
    networks = []

    _docker_container_lib_get_containers.each do |container|
      next unless docker_container_check_orphaned container

      name = _docker_container_lib_get_container_name_by_id container
      _docker_container_lib_stop_container container
      networks << name unless networks.include? name
    end
    networks
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
takelage-0.15.0 lib/takelage/docker/container/purge.rb
takelage-0.14.5 lib/takelage/docker/container/purge.rb
takelage-0.14.4 lib/takelage/docker/container/purge.rb
takelage-0.14.3 lib/takelage/docker/container/purge.rb
takelage-0.14.2 lib/takelage/docker/container/purge.rb
takelage-0.14.1 lib/takelage/docker/container/purge.rb
takelage-0.14.0 lib/takelage/docker/container/purge.rb