Sha256: 609ac325204e06bb07464c742dee923f4335d8bccf9f86b14621d97186167816

Contents?: true

Size: 1.68 KB

Versions: 21

Compression:

Stored size: 1.68 KB

Contents

# frozen_string_literal: true

require 'addressable/uri'
require 'avm/eac_redmine_base0/instances/data_unit'
require 'avm/eac_redmine_base0/instances/docker_image'
require 'avm/eac_redmine_base0/instances/runners'
require 'avm/eac_redmine_base0/instances/rest_api'
require 'avm/eac_rails_base1/instances/base'

module Avm
  module EacRedmineBase0
    module Instances
      class Base < ::Avm::EacRailsBase1::Instances::Base
        require_sub __FILE__, include_modules: true
        enable_simple_cache

        FILES_UNITS = { files: 'files' }.freeze

        def docker_image_class
          ::Avm::EacRedmineBase0::Instances::DockerImage
        end

        def docker_run_arguments
          [
            '--volume',
            "#{install_path}:/home/myuser/eac_redmine_base0",
            '--publish', "#{read_entry(:ssh_port)}:22",
            '--publish', "#{read_entry(:http_port)}:80",
            '--publish', "#{read_entry(:https_port)}:443"
          ]
        end

        def data_package
          @data_package ||= ::Avm::Data::Instance::Package.new(
            self,
            units: {
              all: ::Avm::EacRedmineBase0::Instances::DataUnit.new(self)
            }
          )
        end

        # @return [Addressable::URI]
        def root_url
          r = ::Addressable::URI.parse(read_entry(::Avm::Instances::EntryKeys::WEB_URL))
          r.query_values = nil
          r
        end

        private

        # @return [Avm::EacRedmineBase0::Instances::RestApi]
        def rest_api_uncached
          url = root_url
          url.query_values = { key: read_entry('api.key') }
          ::Avm::EacRedmineBase0::Instances::RestApi.new(url)
        end
      end
    end
  end
end

Version data entries

21 entries across 21 versions & 2 rubygems

Version Path
avm-eac_redmine_base0-0.16.1 lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.45.2 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.45.1 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.45.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.44.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.43.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.42.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.41.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.40.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.39.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.38.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.37.2 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.37.1 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.37.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.36.1 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.36.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.35.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.34.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
eac_tools-0.33.0 sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb
avm-eac_redmine_base0-0.16.0 lib/avm/eac_redmine_base0/instances/base.rb