Sha256: 51c8595ce80e1bbf3e0051ed51a8ca7ac02635dc3845cea6d1a496c56613886e

Contents?: true

Size: 1.29 KB

Versions: 1

Compression:

Stored size: 1.29 KB

Contents

#!/usr/bin/env ruby

$:.push File.expand_path("../../lib", __FILE__)

require 'produce'
require 'commander'
require 'credentials_manager/password_manager'
require 'credentials_manager/appfile_config'

HighLine.track_eof = false

class FastlaneApplication
  include Commander::Methods

  def run
    program :version, Produce::VERSION
    program :description, 'CLI for \'produce\''
    program :help, 'Author', 'Felix Krause <produce@krausefx.com>'
    program :help, 'Website', 'https://fastlane.tools'
    program :help, 'GitHub', 'https://github.com/krausefx/produce'
    program :help_formatter, :compact

    always_trace!

    global_option('-u', '--username STRING', 'Your Apple ID username')

    command :create do |c|
      c.syntax = 'produce create'
      c.description = 'Creates a new app on iTunes Connect and the Apple Developer Portal'

      c.action do |args, options|
        set_username(options.username)

        puts Produce::Manager.start_producing
      end
    end

    def set_username(username)
      user = username
      user ||= ENV["PRODUCE_USERNAME"]
      user ||= CredentialsManager::AppfileConfig.try_fetch_value(:apple_id)      
      CredentialsManager::PasswordManager.shared_manager(user) if user
    end

    default_command :create

    run!
  end
end

FastlaneApplication.new.run

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
produce-0.1.6 bin/produce