Sha256: 98f12cf787de2bcf0b7f851a2f9e34cb640dd4f14b02950a9e2eddbfe88abd9d

Contents?: true

Size: 1.25 KB

Versions: 22

Compression:

Stored size: 1.25 KB

Contents

# frozen_string_literal: true

# takelage bit scope add
module BitScopeAdd
  # Backend method for bit scope add.
  def bit_scope_add(scope)
    log.debug "Adding bit remote scope \"#{scope}\" to local workspace"

    return false unless configured? %w[bit_ssh bit_remote]

    return false unless _bit_scope_add_workspace_ready?

    return false unless _bit_scope_add_scope_exists? scope

    run _bit_scope_add_cmd scope

    log.info "Added bit remote scope \"#{scope}\" to local bit workspace"
  end

  private

  # Check if workspace ready for bit scope add.
  def _bit_scope_add_workspace_ready?
    unless bit_check_workspace
      log.error 'No bit workspace'
      return false
    end

    return true unless git_check_workspace

    return true if git_check_master

    log.error 'Not on git master branch'
    false
  end

  # Check if bit remote scope exists.
  def _bit_scope_add_scope_exists?(scope)
    return true if bit_scope_list.include? scope

    log.error "The bit remote bit scope \"#{scope}\" doesn't exist"
    false
  end

  # Prepare bit add scope command.
  def _bit_scope_add_cmd(scope)
    remote = config.active['bit_remote']

    format(
      config.active['cmd_bit_scope_add_scope'],
      remote: remote,
      scope: scope
    )
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
takelage-0.22.0 lib/takelage/bit/scope/add.rb
takelage-0.21.1 lib/takelage/bit/scope/add.rb
takelage-0.21.0 lib/takelage/bit/scope/add.rb
takelage-0.20.2 lib/takelage/bit/scope/add.rb
takelage-0.20.1 lib/takelage/bit/scope/add.rb
takelage-0.20.0 lib/takelage/bit/scope/add.rb
takelage-0.19.2 lib/takelage/bit/scope/add.rb
takelage-0.19.1 lib/takelage/bit/scope/add.rb
takelage-0.19.0 lib/takelage/bit/scope/add.rb
takelage-0.18.1 lib/takelage/bit/scope/add.rb
takelage-0.18.0 lib/takelage/bit/scope/add.rb
takelage-0.17.1 lib/takelage/bit/scope/add.rb
takelage-0.17.0 lib/takelage/bit/scope/add.rb
takelage-0.16.0 lib/takelage/bit/scope/add.rb
takelage-0.15.1 lib/takelage/bit/scope/add.rb
takelage-0.15.0 lib/takelage/bit/scope/add.rb
takelage-0.14.5 lib/takelage/bit/scope/add.rb
takelage-0.14.4 lib/takelage/bit/scope/add.rb
takelage-0.14.3 lib/takelage/bit/scope/add.rb
takelage-0.14.2 lib/takelage/bit/scope/add.rb