fir-cli 1.4.0 → 1.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/.gitignore +2 -0
 - data/CHANGELOG +3 -0
 - data/bin/console +11 -0
 - data/bin/setup +7 -0
 - data/fir-cli.gemspec +4 -4
 - data/lib/fir/cli.rb +6 -0
 - data/lib/fir/util/build_common.rb +23 -4
 - data/lib/fir/version.rb +1 -1
 - data/test/build_ipa_test.rb +3 -0
 - data/test/test_helper.rb +8 -0
 - metadata +9 -5
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 83fa44d61b04246a7a2402bdca1eff4b99aef2ce
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: b7e1b903ce095e4d99b312c70a984a5b0df4751a
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 4ceb95e406746dce90890a6271a29c357a1fac046df4c192fc28a85c9164ab76777f7d739dbb1b9e46e50752be8cf8d58c93245378f653a292c49064613cc314
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: ccd0ed1f05ed39ff3a2573f325c8c69b54defb2943293c1eef84e3710d1e1d8b6d6f9b8ffbc66e291beb7b4c5feade1f97f11b71cb27c1a1d96c01275057cedf
         
     | 
    
        data/.gitignore
    CHANGED
    
    
    
        data/CHANGELOG
    CHANGED
    
    
    
        data/bin/console
    ADDED
    
    | 
         @@ -0,0 +1,11 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #!/usr/bin/env ruby
         
     | 
| 
      
 2 
     | 
    
         
            +
            # encoding: utf-8
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            require 'bundler/setup'
         
     | 
| 
      
 5 
     | 
    
         
            +
            require 'fir'
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
            # You can add fixtures and/or initialization code here to make experimenting
         
     | 
| 
      
 8 
     | 
    
         
            +
            # with your gem easier. You can also use a different console, if you like.
         
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
            require 'pry'
         
     | 
| 
      
 11 
     | 
    
         
            +
            Pry.start
         
     | 
    
        data/bin/setup
    ADDED
    
    
    
        data/fir-cli.gemspec
    CHANGED
    
    | 
         @@ -8,7 +8,7 @@ Gem::Specification.new do |spec| 
     | 
|
| 
       8 
8 
     | 
    
         
             
              spec.name          = 'fir-cli'
         
     | 
| 
       9 
9 
     | 
    
         
             
              spec.version       = FIR::VERSION
         
     | 
| 
       10 
10 
     | 
    
         
             
              spec.authors       = ['NaixSpirit']
         
     | 
| 
       11 
     | 
    
         
            -
              spec.email         = [' 
     | 
| 
      
 11 
     | 
    
         
            +
              spec.email         = ['neverlandxy.naix@gmail.com']
         
     | 
| 
       12 
12 
     | 
    
         
             
              spec.date          = Time.now.strftime('%Y-%m-%d')
         
     | 
| 
       13 
13 
     | 
    
         
             
              spec.summary       = 'fir.im command tool'
         
     | 
| 
       14 
14 
     | 
    
         
             
              spec.description   = 'fir.im command tool, support iOS and Android'
         
     | 
| 
         @@ -27,9 +27,9 @@ Gem::Specification.new do |spec| 
     | 
|
| 
       27 
27 
     | 
    
         
             
                /_/   /___/_/ |_|      \____/_____/___/
         
     | 
| 
       28 
28 
     | 
    
         | 
| 
       29 
29 
     | 
    
         
             
              ## 更新记录
         
     | 
| 
       30 
     | 
    
         
            -
              ### fir-cli 1.4. 
     | 
| 
       31 
     | 
    
         
            -
              -  
     | 
| 
       32 
     | 
    
         
            -
              -  
     | 
| 
      
 30 
     | 
    
         
            +
              ### fir-cli 1.4.1
         
     | 
| 
      
 31 
     | 
    
         
            +
              - 支持远程 git 项目打包编译, enjoy.
         
     | 
| 
      
 32 
     | 
    
         
            +
              - `$ fir bi/ba <git ssh url> -B develop -c <changelog> -p`
         
     | 
| 
       33 
33 
     | 
    
         
             
              - 详细更新记录, 请查看: https://github.com/FIRHQ/fir-cli/blob/master/CHANGELOG
         
     | 
| 
       34 
34 
     | 
    
         
             
              - [fir-cli](https://github.com/FIRHQ/fir-cli) 已经开源
         
     | 
| 
       35 
35 
     | 
    
         
             
              - 欢迎 fork, issue 和 pull request
         
     | 
    
        data/lib/fir/cli.rb
    CHANGED
    
    | 
         @@ -20,9 +20,12 @@ module FIR 
     | 
|
| 
       20 
20 
     | 
    
         | 
| 
       21 
21 
     | 
    
         
             
                  $ fir bi <project dir> [-c <changelog> -P <bughd project id> -M -p -Q -T <your api token>]
         
     | 
| 
       22 
22 
     | 
    
         | 
| 
      
 23 
     | 
    
         
            +
                  $ fir bi <git ssh url> [-B develop -c <changelog> -P <bughd project id> -M -p -Q -T <your api token>]
         
     | 
| 
      
 24 
     | 
    
         
            +
             
     | 
| 
       23 
25 
     | 
    
         
             
                  $ fir bi <workspace dir> -w -S <scheme name> [-C <configuration>] [-t <target name>] [-o <ipa output dir>] [settings] [-c <changelog>] [-p -Q -T <your api token>]
         
     | 
| 
       24 
26 
     | 
    
         
             
                LONGDESC
         
     | 
| 
       25 
27 
     | 
    
         
             
                map ['b', 'bi'] => :build_ipa
         
     | 
| 
      
 28 
     | 
    
         
            +
                method_option :branch,        type: :string,  aliases: '-B', desc: 'Set branch if project is a git repo, the default is `master`'
         
     | 
| 
       26 
29 
     | 
    
         
             
                method_option :workspace,     type: :boolean, aliases: '-w', desc: 'true/false if build workspace'
         
     | 
| 
       27 
30 
     | 
    
         
             
                method_option :scheme,        type: :string,  aliases: '-S', desc: 'Set the scheme NAME if build workspace'
         
     | 
| 
       28 
31 
     | 
    
         
             
                method_option :configuration, type: :string,  aliases: '-C', desc: 'Use the build configuration NAME for building each target'
         
     | 
| 
         @@ -50,8 +53,11 @@ module FIR 
     | 
|
| 
       50 
53 
     | 
    
         
             
                  Example:
         
     | 
| 
       51 
54 
     | 
    
         | 
| 
       52 
55 
     | 
    
         
             
                  $ fir ba <project dir> [-o <apk output dir> -c <changelog> -p -Q -T <your api token>]
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
                  $ fir ba <git ssh url> [-B develop -o <apk output dir> -c <changelog> -p -Q -T <your api token>]
         
     | 
| 
       53 
58 
     | 
    
         
             
                LONGDESC
         
     | 
| 
       54 
59 
     | 
    
         
             
                map ['ba'] => :build_apk
         
     | 
| 
      
 60 
     | 
    
         
            +
                method_option :branch,    type: :string,  aliases: '-B', desc: 'Set branch if project is a git repo, the default is `master`'
         
     | 
| 
       55 
61 
     | 
    
         
             
                method_option :output,    type: :string,  aliases: '-o', desc: 'APK output path, the default is: BUILD_DIR/build/outputs/apk'
         
     | 
| 
       56 
62 
     | 
    
         
             
                method_option :publish,   type: :boolean, aliases: '-p', desc: 'true/false if publish to fir.im'
         
     | 
| 
       57 
63 
     | 
    
         
             
                method_option :short,     type: :string,  aliases: '-s', desc: 'Set custom short link if publish to fir.im'
         
     | 
| 
         @@ -4,7 +4,7 @@ module FIR 
     | 
|
| 
       4 
4 
     | 
    
         
             
              module BuildCommon
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
6 
     | 
    
         
             
                def initialize_build_common_options(args, options)
         
     | 
| 
       7 
     | 
    
         
            -
                  @build_dir     = initialize_build_dir(args)
         
     | 
| 
      
 7 
     | 
    
         
            +
                  @build_dir     = initialize_build_dir(args, options)
         
     | 
| 
       8 
8 
     | 
    
         
             
                  @output_path   = initialize_output_path(options)
         
     | 
| 
       9 
9 
     | 
    
         
             
                  @token         = options[:token] || current_token
         
     | 
| 
       10 
10 
     | 
    
         
             
                  @changelog     = options[:changelog].to_s
         
     | 
| 
         @@ -14,11 +14,30 @@ module FIR 
     | 
|
| 
       14 
14 
     | 
    
         
             
                  @export_qrcode = options[:qrcode]
         
     | 
| 
       15 
15 
     | 
    
         
             
                end
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
     | 
    
         
            -
                def initialize_build_dir(args)
         
     | 
| 
       18 
     | 
    
         
            -
                   
     | 
| 
      
 17 
     | 
    
         
            +
                def initialize_build_dir(args, options)
         
     | 
| 
      
 18 
     | 
    
         
            +
                  build_dir = args.first.to_s
         
     | 
| 
      
 19 
     | 
    
         
            +
                  if File.extname(build_dir) == '.git'
         
     | 
| 
      
 20 
     | 
    
         
            +
                    args.shift && git_clone_build_dir(build_dir, options)
         
     | 
| 
      
 21 
     | 
    
         
            +
                  elsif build_dir.blank? || !File.exist?(build_dir)
         
     | 
| 
       19 
22 
     | 
    
         
             
                    Dir.pwd
         
     | 
| 
       20 
23 
     | 
    
         
             
                  else
         
     | 
| 
       21 
     | 
    
         
            -
                    File.absolute_path( 
     | 
| 
      
 24 
     | 
    
         
            +
                    args.shift && File.absolute_path(build_dir)
         
     | 
| 
      
 25 
     | 
    
         
            +
                  end
         
     | 
| 
      
 26 
     | 
    
         
            +
                end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
                def git_clone_build_dir(ssh_url, options)
         
     | 
| 
      
 29 
     | 
    
         
            +
                  repo_name = File.basename(ssh_url, '.git') + "_#{Time.now.strftime('%Y%m%dT%H%M%S')}"
         
     | 
| 
      
 30 
     | 
    
         
            +
                  branch    = options[:branch].blank? ? 'master' : options[:branch]
         
     | 
| 
      
 31 
     | 
    
         
            +
                  git_cmd   = "git clone --depth=50 --branch=#{branch} #{ssh_url} #{repo_name}"
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
      
 33 
     | 
    
         
            +
                  logger.info git_cmd
         
     | 
| 
      
 34 
     | 
    
         
            +
                  logger_info_dividing_line
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
      
 36 
     | 
    
         
            +
                  if system(git_cmd)
         
     | 
| 
      
 37 
     | 
    
         
            +
                    File.absolute_path(repo_name)
         
     | 
| 
      
 38 
     | 
    
         
            +
                  else
         
     | 
| 
      
 39 
     | 
    
         
            +
                    logger.error 'Git clone failed'
         
     | 
| 
      
 40 
     | 
    
         
            +
                    exit 1
         
     | 
| 
       22 
41 
     | 
    
         
             
                  end
         
     | 
| 
       23 
42 
     | 
    
         
             
                end
         
     | 
| 
       24 
43 
     | 
    
         | 
    
        data/lib/fir/version.rb
    CHANGED
    
    
    
        data/test/build_ipa_test.rb
    CHANGED
    
    | 
         @@ -9,6 +9,9 @@ class BuildAppTest < Minitest::Test 
     | 
|
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
                  assert FIR.build_ipa(default_ipa_project, options)
         
     | 
| 
       11 
11 
     | 
    
         
             
                  assert FIR.build_apk(default_apk_project, options)
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
                  assert FIR.build_ipa(default_ipa_git_url, options)
         
     | 
| 
      
 14 
     | 
    
         
            +
                  assert FIR.build_apk(default_apk_git_url, options)
         
     | 
| 
       12 
15 
     | 
    
         
             
                end
         
     | 
| 
       13 
16 
     | 
    
         
             
              end
         
     | 
| 
       14 
17 
     | 
    
         
             
            end
         
     | 
    
        data/test/test_helper.rb
    CHANGED
    
    | 
         @@ -35,6 +35,14 @@ class Minitest::Test 
     | 
|
| 
       35 
35 
     | 
    
         
             
                File.expand_path('../projects', __FILE__) + '/apk'
         
     | 
| 
       36 
36 
     | 
    
         
             
              end
         
     | 
| 
       37 
37 
     | 
    
         | 
| 
      
 38 
     | 
    
         
            +
              def default_ipa_git_url
         
     | 
| 
      
 39 
     | 
    
         
            +
                'git@github.com:NaixSpirit/build_ipa_example.git'
         
     | 
| 
      
 40 
     | 
    
         
            +
              end
         
     | 
| 
      
 41 
     | 
    
         
            +
             
     | 
| 
      
 42 
     | 
    
         
            +
              def default_apk_git_url
         
     | 
| 
      
 43 
     | 
    
         
            +
                'git@github.com:NaixSpirit/build_apk_example.git'
         
     | 
| 
      
 44 
     | 
    
         
            +
              end
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
       38 
46 
     | 
    
         
             
              def default_bughd_project_ios_id
         
     | 
| 
       39 
47 
     | 
    
         
             
                '55bb2839692d647a46000004'
         
     | 
| 
       40 
48 
     | 
    
         
             
              end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: fir-cli
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1.4. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.4.1
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - NaixSpirit
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2015-11- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2015-11-13 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: bundler
         
     | 
| 
         @@ -138,9 +138,11 @@ dependencies: 
     | 
|
| 
       138 
138 
     | 
    
         
             
                    version: '0.7'
         
     | 
| 
       139 
139 
     | 
    
         
             
            description: fir.im command tool, support iOS and Android
         
     | 
| 
       140 
140 
     | 
    
         
             
            email:
         
     | 
| 
       141 
     | 
    
         
            -
            -  
     | 
| 
      
 141 
     | 
    
         
            +
            - neverlandxy.naix@gmail.com
         
     | 
| 
       142 
142 
     | 
    
         
             
            executables:
         
     | 
| 
      
 143 
     | 
    
         
            +
            - console
         
     | 
| 
       143 
144 
     | 
    
         
             
            - fir
         
     | 
| 
      
 145 
     | 
    
         
            +
            - setup
         
     | 
| 
       144 
146 
     | 
    
         
             
            extensions: []
         
     | 
| 
       145 
147 
     | 
    
         
             
            extra_rdoc_files: []
         
     | 
| 
       146 
148 
     | 
    
         
             
            files:
         
     | 
| 
         @@ -153,7 +155,9 @@ files: 
     | 
|
| 
       153 
155 
     | 
    
         
             
            - LICENSE.txt
         
     | 
| 
       154 
156 
     | 
    
         
             
            - README.md
         
     | 
| 
       155 
157 
     | 
    
         
             
            - Rakefile
         
     | 
| 
      
 158 
     | 
    
         
            +
            - bin/console
         
     | 
| 
       156 
159 
     | 
    
         
             
            - bin/fir
         
     | 
| 
      
 160 
     | 
    
         
            +
            - bin/setup
         
     | 
| 
       157 
161 
     | 
    
         
             
            - fir-cli.gemspec
         
     | 
| 
       158 
162 
     | 
    
         
             
            - lib/fir-cli.rb
         
     | 
| 
       159 
163 
     | 
    
         
             
            - lib/fir.rb
         
     | 
| 
         @@ -199,8 +203,8 @@ metadata: {} 
     | 
|
| 
       199 
203 
     | 
    
         
             
            post_install_message: "\n        ______________        ________    ____\n       /
         
     | 
| 
       200 
204 
     | 
    
         
             
              ____/  _/ __ \\      / ____/ /   /  _/\n      / /_   / // /_/ /_____/ /   / /    /
         
     | 
| 
       201 
205 
     | 
    
         
             
              /\n     / __/ _/ // _, _/_____/ /___/ /____/ /\n    /_/   /___/_/ |_|      \\____/_____/___/\n\n
         
     | 
| 
       202 
     | 
    
         
            -
              \ ## 更新记录\n  ### fir-cli 1.4. 
     | 
| 
       203 
     | 
    
         
            -
               
     | 
| 
      
 206 
     | 
    
         
            +
              \ ## 更新记录\n  ### fir-cli 1.4.1\n  - 支持远程 git 项目打包编译, enjoy.\n  - `$ fir bi/ba <git
         
     | 
| 
      
 207 
     | 
    
         
            +
              ssh url> -B develop -c <changelog> -p`\n  - 详细更新记录, 请查看: https://github.com/FIRHQ/fir-cli/blob/master/CHANGELOG\n
         
     | 
| 
       204 
208 
     | 
    
         
             
              \ - [fir-cli](https://github.com/FIRHQ/fir-cli) 已经开源\n  - 欢迎 fork, issue 和 pull
         
     | 
| 
       205 
209 
     | 
    
         
             
              request\n  "
         
     | 
| 
       206 
210 
     | 
    
         
             
            rdoc_options: []
         
     |