Sha256: 3b9cd3a350d830dc672688183125bffe9679495a819081e72ecdef6ab7c0eac2

Contents?: true

Size: 787 Bytes

Versions: 44

Compression:

Stored size: 787 Bytes

Contents

# frozen_string_literal: true

require 'tmpdir'

module Gitlab
  module QA
    module Docker
      class Volumes
        VOLUMES = { 'config' => '/etc/gitlab',
                    'data' => '/var/opt/gitlab' }.freeze

        QA_CONTAINER_WORKDIR = '/home/gitlab/qa'

        def initialize(volumes = VOLUMES)
          @volumes = volumes
        end

        def with_temporary_volumes
          # macOS's tmpdir is a symlink /var/folders -> /private/var/folders
          # but Docker on macOS exposes /private and disallow exposing /var/
          # so we need to get the real tmpdir path
          Dir.mktmpdir('gitlab-qa-', File.realpath(Dir.tmpdir)).tap do |dir|
            yield @volumes.transform_keys { |k| "#{dir}/#{k}" }
          end
        end
      end
    end
  end
end

Version data entries

44 entries across 44 versions & 1 rubygems

Version Path
gitlab-qa-15.3.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-15.2.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-15.1.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-15.0.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.21.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.20.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.19.2 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.19.1 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.19.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.18.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.17.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.16.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.15.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.14.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.13.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.12.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.11.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.9.0 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.8.1 lib/gitlab/qa/docker/volumes.rb
gitlab-qa-14.8.0 lib/gitlab/qa/docker/volumes.rb