Sha256: 0bd09161effa9aa119ac13b27e376f9921636bd6aafce94cbf790878925b56bf

Contents?: true

Size: 1020 Bytes

Versions: 3

Compression:

Stored size: 1020 Bytes

Contents

require 'json'
require 'arli'
require 'net/http'
require_relative 'base'
require_relative '../arli_file'
require_relative '../lock/formats'
require_relative '../lock/file'

module Arli
  module Commands
    class Bundle < Base

      attr_accessor :arlifile, :lock_file

      def setup
        super
        self.arlifile = Arli::ArliFile.new(config: config)
        self.lock_file = Arli::Lock::File.new(config: config, arlifile: arlifile)
      end

      def additional_info
        "\nArlifile Path: #{arlifile.arlifile_path.magenta}\nLock Format: #{config.arlifile.lock_format.to_s.yellow}\n"
      end

      def params
        if arlifile&.libraries
          "libraries: \n • " + arlifile.libraries.map(&:name).join("\n • ")
        end
      end

      def run
        install_with_arli_file
      end

      protected

      def install_with_arli_file
        arlifile.install
        post_install
      end

      def post_install
        lock_file.lock!(*arlifile.libraries)
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
arli-1.4.0 lib/arli/commands/bundle.rb
arli-1.3.0 lib/arli/commands/bundle.rb
arli-1.2.1 lib/arli/commands/bundle.rb