Sha256: 755cfd4c1c4efaa0523ce9ebeb2a155bbc1d63838dd37898d4aaa4b9b384ffbb

Contents?: true

Size: 1.84 KB

Versions: 1

Compression:

Stored size: 1.84 KB

Contents

require 'highline'

HighLine.track_eof = false

require 'fastlane/version'
require_relative 'playground'
require_relative 'spaceauth_runner'

module Spaceship
  class CommandsGenerator
    include Commander::Methods

    def self.start
      self.new.run
    end

    def run
      program :name, 'spaceship'
      program :version, Fastlane::VERSION
      program :description, Spaceship::DESCRIPTION
      program :help, 'Author', 'Felix Krause <spaceship@krausefx.com>'
      program :help, 'Website', 'https://fastlane.tools'
      program :help, 'GitHub', 'https://github.com/fastlane/fastlane/tree/master/spaceship'
      program :help_formatter, :compact

      global_option('-u', '--user USERNAME', 'Specify the Apple ID you want to log in with')
      global_option('--verbose') { FastlaneCore::Globals.verbose = true }
      global_option('--env STRING[,STRING2]', String, 'Add environment(s) to use with `dotenv`')

      command :playground do |c|
        c.syntax = 'fastlane spaceship playground'
        c.description = 'Run an interactive shell that connects you to Apple web services'

        c.action do |args, options|
          Spaceship::Playground.new(username: options.user).run
        end
      end

      command :spaceauth do |c|
        c.syntax = 'fastlane spaceship spaceauth'
        c.description = 'Authentication helper for spaceship/fastlane to work with Apple 2-Step/2FA'
        c.option('--copy_to_clipboard', 'Whether the session string should be copied to clipboard. For more info see https://docs.fastlane.tools/best-practices/continuous-integration/#storing-a-manually-verified-session-using-spaceauth`')

        c.action do |args, options|
          Spaceship::SpaceauthRunner.new(username: options.user, copy_to_clipboard: options.copy_to_clipboard).run
        end
      end

      default_command(:playground)

      run!
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
fastlane-2.181.0 spaceship/lib/spaceship/commands_generator.rb