Sha256: 7e8eeef68f787a9487a0672fdd4bc04842c0b43814030544ce6f188c705d3bd9

Contents?: true

Size: 1.03 KB

Versions: 9

Compression:

Stored size: 1.03 KB

Contents

# frozen_string_literal: true

require 'avm/launcher/context'
require 'avm/launcher/instances/runner_helper'

module Avm
  module Tools
    class Runner
      class Launcher
        class Projects < ::Avm::Launcher::Instances::RunnerHelper
          runner_with :help do
            desc 'Shows available projects.'
            bool_opt '--recache', 'Rewrite instances cache.'
            bool_opt '-i', '--instances', 'Show instances.'
          end

          def run
            ::Avm::Launcher::Context.current.recache = parsed.recache?
            ::Avm::Launcher::Context.current.projects.each do |p|
              show_project(p)
            end
          end

          private

          def show_project(project)
            puts project_label(project)
            return unless parsed.instances?

            project.instances.each do |i|
              puts "  * #{instance_label(i)}"
            end
          end

          def project_label(project)
            project.to_s.cyan.to_s
          end
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
avm-tools-0.104.0 lib/avm/tools/runner/launcher/projects.rb
avm-tools-0.103.1 lib/avm/tools/runner/launcher/projects.rb
avm-tools-0.103.0 lib/avm/tools/runner/launcher/projects.rb
avm-tools-0.102.2 lib/avm/tools/runner/launcher/projects.rb
avm-tools-0.102.1 lib/avm/tools/runner/launcher/projects.rb
avm-tools-0.102.0 lib/avm/tools/runner/launcher/projects.rb
avm-tools-0.101.0 lib/avm/tools/runner/launcher/projects.rb
avm-tools-0.100.0 lib/avm/tools/runner/launcher/projects.rb
avm-tools-0.99.1 lib/avm/tools/runner/launcher/projects.rb