Giter VIP home page Giter VIP logo

tifastlane's Introduction

TiFastlane npm version

Building apps for iOS and Android it's all great until you have to deal with Certificates, Provisioning Profiles and sending the app to iTunes Connect or the Play Store. Then came fastlane.tools a collection of tools that enable Continuous Deployment of iOS and Android Apps.

TiFastlane is a way to use those tools for Titanium development. Now you'll be able to do real continous deployment of your Titanium app. Sending your app for review will be a breeze:

tifast send

And publishing your new version to the Play Store will be as easy:

tifast playsend

With TiFastlane you'll be able to fully optimize the way you submit your app updates and maintain your certificates and provisioning profiles.

Current tools from Fastlane available:

deliverpemsighproducepilotsupply

Documentation

TODO

Collaborators

Thanks

  • Felix Krause for creating the awesome fastlane.tools
  • Jason Kneen for creating some awesome CLI tools from which I'm basing this one

Changelog

  • 0.10.7 Fix dependencies version for Node 4 #58
  • 0.10.6 Support Ti 6.0.x and Xcode 9 #56
  • 0.10.5 Fixed pilot bug. string type team_id is incorrect. It need integer type. Because team_name only need #55
  • 0.10.4 Set default cfg.android_app_id = "null" for old tifastlane.cfg #54
  • 0.10.2 Fixed deliver error related apple_watch_app_icon #53
  • 0.10.0 Support for Titanium SDK 6.* new build method
  • 0.9.5 Add option to set a different App ID for Android build
  • 0.9.4 Fixed pilot bug. Now you can use match to manage your provisioning profiles
  • 0.9.3 Added option to skip creating provisiong profiles on register. Now Android build version bump has to be manually requested on playsend
  • 0.9.0 Added support for Titanium 6.0.3.GA and XCode 8.3 More Information
  • 0.8.3 You can customize the build args on setup
  • 0.8.2 Fix on PEM. Node dependencies
  • 0.8.0 BC BREAK to support Fastlane 2. Minor changes on tifast send

License

Copyright 2015 Uriel Lizama

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

tifastlane's People

Contributors

321hendrik avatar douglashennrich avatar gimdongwoo avatar hansemannn avatar hazemkhaled avatar krausefx avatar lalitagertrudis avatar r4mpancy avatar ulizama avatar yomybaby avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tifastlane's Issues

packageName and packageVersion required

Hi,

I'm getting the following error when running tifastlane from inside my Titanium project directory

(44) ~/Documents/Titanium/rxm-appv3 -> tifast -h

/usr/local/lib/node_modules/tifastlane/node_modules/update-notifier/index.js:15
        throw new Error('packageName and packageVersion required');
              ^
Error: packageName and packageVersion required
    at new UpdateNotifier (/usr/local/lib/node_modules/tifastlane/node_modules/update-notifier/index.js:15:9)
    at module.exports (/usr/local/lib/node_modules/tifastlane/node_modules/update-notifier/index.js:118:23)
    at Object.<anonymous> (/usr/local/lib/node_modules/tifastlane/cli.js:11:16)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:906:3

During installation, when prompted with #node-sudo-passwd# it failed to accept my password all 3 times, but still says I downloaded the following:

Before trying to install tifastlane through npm, I did successfully install fastlane using the following sudo gem install fastlane --verbose

I am using version 1.4.28 of npm and version 0.10.32 of node

Any idea on how to get tifastlane working? I'd love to try it out. Looks like a great tool!

Stops on tifastlane setup

After executing "tifastlane setup" it does nothing.
How I can see what is wrong.

Also for the modify of .bashrc it will be good to be mentioned in docs that after modify they should do this
. ~/.bashrc

Error on tifast init -s

When I go to the next step I get the following error running tifast int -s

➜ mobile git:(master) ✗ tifast init -s
/usr/local/lib/node_modules/tifastlane/node_modules/tiapp.xml/lib/tiapp.xml.js:40
throw new Error('No XML document created', str);
^

Error: No XML document created
at Object.parse (/usr/local/lib/node_modules/tifastlane/node_modules/tiapp.xml/lib/tiapp.xml.js:40:9)
at Object.load (/usr/local/lib/node_modules/tifastlane/node_modules/tiapp.xml/lib/tiapp.xml.js:61:17)
at Object.exports.loadconfig (/usr/local/lib/node_modules/tifastlane/index.js:70:22)
at Command.init (/usr/local/lib/node_modules/tifastlane/cli.js:203:16)
at Command.listener (/usr/local/lib/node_modules/tifastlane/node_modules/commander/index.js:315:8)
at emitTwo (events.js:87:13)
at Command.emit (events.js:172:7)
at Command.parseArgs (/usr/local/lib/node_modules/tifastlane/node_modules/commander/index.js:653:12)
at Command.parse (/usr/local/lib/node_modules/tifastlane/node_modules/commander/index.js:475:21)
at Object. (/usr/local/lib/node_modules/tifastlane/cli.js:174:9)

Distributing an iOS appstore build using dist-appstore

Thank you for this project.

When calling tifast send -t or tifast send the build uses in both cases -T dist-adhoc.
Is there a way to make an App Store build using -T dist-appstore? If not, is there a reason why only using dist-adhoc? We would need to load the right config depending on that value.

tifast pem -d pass hangs when done

tifast pem -d pass hangs when done. Checking developer.apple.com I can see that the APNs Dev iOS cert is created. Also when re-running it also hangs at end after letting you know that you already have one.

TestFlight XCode 8.3 compatibility

The 0.9.0 release works perfect for doing releases to the App Store, but the new logic for building the IPA should also be applied to the TestFlight option, because that also uses an IPA to push to TestFlight using Pilot.

XCode 8.3 with older Titanium SDK < 6

The combination of XCode 8.3 and an Titanium SDK less then 6 won't allow usage of the --legacy param.

This shouldn't be a problem whereas the new findXCodeArchive only is compatible with the way Titanium 6 builds. The archive ends up in a path relative to the project you're working on, but for Titanium 5 this still is the ~/Library/Developer/Xcode/Archives/ directory.

This worked in version 0.9.0, but became incompatible in version 0.9.1

can't install

I'm getting this screen when I hit sudo npm install -g tifastlane

captura de tela 2015-09-11 as 15 09 00

I already put my password but it keep saying that's incorrect

Add snapshot

Any plans to add Snapshot or technical reasons why it might not be possible?

edit Just noticed that tifast DOES use Snapshot behind teh scenes. I meant stand alone snapshot functionality, ie. the ability to just grab app snapshots rather than as part of the tifast send

Error on tifast init -s

I did as it is written in the readme. first tifast setup, filled out all questions. Second, ran tifast init -s, because my app is already in the store.

ends with

tifast init -s
Initializing TiFastLane Smart Mode
events.js:85
      throw er; // Unhandled 'error' event
            ^
Error: spawn deliver ENOENT
    at exports._errnoException (util.js:746:11)
    at Process.ChildProcess._handle.onexit (child_process.js:1053:32)
    at child_process.js:1144:20
    at process._tickCallback (node.js:355:11)
    at Function.Module.runMain (module.js:503:11)
    at startup (node.js:129:16)
    at node.js:814:3

What can I do? What do you need to help me?

spaces in ios_build_args

Can't pass certificate name to ios_build_args in tifastlane.cfg file

"ios_build_args": "-p ios -T dist-adhoc -O ./dist -R Flan Alfolany (X123Y4Z56L)",

I think issue from this and this, slicing by space.

Starting Deliver error

When I use tifast send or tifast init, I get:

Starting Deliver

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: spawn ENOENT
    at errnoException (child_process.js:1011:11)
    at Process.ChildProcess._handle.onexit (child_process.js:802:34)

tifast playsend ends in apkUpgradeVersionConflict: APK specifies a version code that has already been used.

When I call tifast playsend --track alpha for my project the Supply step fails with the message:

[!] Google Api Error: apkUpgradeVersionConflict: APK specifies a version code that has already been used.

Currently there is one Artifact for this App in my google play store in track alpha with version code 1 and version name 1.0.15. I increased the Version in tiapp.xml to 1.0.16.

Here ist the full log and stack from the beginning of phase supply:

Starting Supply
/Library/Ruby/Gems/2.0.0/gems/fastimage-2.1.0/lib/fastimage.rb:67: warning: already initialized constant URI::DEFAUL
T_PARSER
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/uri/common.rb:545: warning: previous defin
ition of DEFAULT_PARSER was here

+-------------------------+-----------------------------+
| Summary for supply 2.37.0 |
+-------------------------+-----------------------------+
| json_key | ../../../GooglePlayKey.json |
| package_name | de.sabio.sabioapp |
| track | alpha |
| apk | ../../../dist/sabio-app.apk |
| rollout | 0.1 |
| metadata_path | ./metadata |
| skip_upload_apk | false |
| skip_upload_metadata | false |
| skip_upload_images | false |
| skip_upload_screenshots | false |
| validate_only | false |
+-------------------------+-----------------------------+

[09:32:29]: Preparing to upload for language 'en-US'...
[09:32:29]: Uploading image file ./metadata/en-US/images/icon.png...
[09:32:32]: Uploading screenshot ./metadata/en-US/images/phoneScreenshots/6_1.Simulator Screen Shot 21.07.20
16, 15.42.00.png...
[09:32:34]: Uploading screenshot ./metadata/en-US/images/phoneScreenshots/6_2.Simulator Screen Shot 21.07.20
16, 15.42.13.png...
[09:32:36]: Uploading screenshot ./metadata/en-US/images/phoneScreenshots/6_3.Simulator Screen Shot 21.07.20
16, 15.42.17.png...
[09:32:38]: Uploading screenshot ./metadata/en-US/images/phoneScreenshots/6_4.Simulator Screen Shot 21.07.2016, 15.42.04.png...
[09:32:41]: Uploading screenshot ./metadata/en-US/images/phoneScreenshots/6_5.Simulator Screen Shot 21.07.2016, 15.42.09.png...
[09:32:43]: Updating changelog for code version '1' and language 'en-US'...
[09:32:43]: Preparing apk at path '../../../dist/sabio-app.apk' for upload...

[!] Google Api Error: apkUpgradeVersionConflict: APK specifies a version code that has already been used.

Supply Done

Fails to deliver with crash

I am trying to submit my app through this tool since morning. I successfully registered my app on Developer Apple and iTunes connect. The only issue I'm facing is with tifastlane sendapp command to submit my app. Could anyone please help here?

Exception

Starting deliver
execvp(): No such file or directory

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: spawn ENOENT
    at errnoException (child_process.js:980:11)
    at Process.ChildProcess._handle.onexit (child_process.js:771:34)

Deliverfile

###################### App Information ######################
app_identifier "<my-app-id>"
apple_id "[ID]" # This is NOT your Apple login ID, but the App ID of your app
email "<email-address>" # the login email address


###################### More Options ######################
# If you want to have even more control, check out the documentation
# https://github.com/KrauseFx/deliver/blob/master/Deliverfile.md

copyright "#{Time.now.year} Company"

automatic_release false

app_review_information(
  first_name: "Manaday",
  last_name: "Mavani",
  phone_number: "123123",
  email_address: "[email protected]",
  demo_user: "demoUser",
  demo_password: "demoPass",
  notes: "such notes, very text"
)

primary_category "Finance"
secondary_category "Business"

price_tier 0

submit_further_information({
  export_compliance: {
    encryption_updated: false,
    cryptography_enabled: false,
    is_exempt: false
  },
  third_party_content: {
    contains_third_party_content: false,
    has_rights: false
  },
  advertising_identifier: {
    use_idfa: false,
    serve_advertisement: false,
    attribute_advertisement: false,
    attribute_actions: false,
    limit_ad_tracking: false
  }
})

Platform Details

Operating System

  • Name = Mac OS X
  • Version = 10.10
  • Architecture = 64bit

Node.js

  • Node.js Version = 0.10.13
  • npm Version = 1.3.2

Titanium CLI
*CLI Version = 3.4.2

Titanium SDK

  • SDK Version = 3.5.1.GA

Use `bundle exec` when using a Gemfile

If I follow the Fastlane recommendation to use a Gemfile, I get this warning when running TiFastlane commands:

[10:38:12]: fastlane detected a Gemfile in the current directory
[10:38:12]: however it seems like you don't use `bundle exec`
[10:38:12]: to launch fastlane faster, please use
[10:38:12]:
[10:38:12]: $ bundle exec fastlane

Is it possible to make TiFastlane use bundle exec to run Fastlane?

Usage queries

Hi Uriel,

This is fantastic, great work! I managed to get everything working ok but have some questions before we can get the most out of TiFastlane in our CI environment:

1) How do we specify a provisioning profile to be used during theti sendphase?
Currently I've been choosing one manually but that doesn't sit well with automation.

2) How do we opt not to view the iTunes artwork / store listing preview?
Again I've been accepting the'Looks ok? y/n' prompt manually.

3) Is it a requirement to upload screenshots every time we ti senda binary to iTunes Connect?
Our screenshots rarely change so it's an unnecessary step to send the iPhone & iPad screens every time.

4 After the binary is uploaded to iTunes Connect how do we select it and choose 'Submit for Review' ?
Again, I understand how to do this manually through the iTunes Connect portal - but can ti send be told to select the newly uploaded build & submit it for Apple's review?

Once again many thanks for TiFastlane.

Steve

Set language for delivery

Hi!

I have an app which i wanted to deliver in DE-de only. Is there an option to do that with TiFastlane?
What i tried is to add
default_language "de-DE"
to the Deliverfile afterwards, but the app was already registered as en-US

String not matched (IndexError)

Hi,

Am just getting setup with 'tifastlane' and trying out 'tifast send'. As far as I'm aware my environemnt is ok, I can create & submit builds manually. However with tifast send I'm getting the following:

[15:45:49]: Login successful

+-----------------------+--------------------------+
|              deliver 2.25.0 Summary              |
+-----------------------+--------------------------+
| ipa                   | ../../dist/MyApp.ipa   |
| app_identifier        | com.domain.myapp |
| username              | [email protected]   |
| release_notes         | Test from TiFastlane     |
| screenshots_path      | ./screenshots            |
| metadata_path         | ./metadata               |
| app_version           | 4.0.11                   |
| edit_live             | false                    |
| platform              | ios                      |
| skip_binary_upload    | false                    |
| skip_screenshots      | false                    |
| skip_metadata         | false                    |
| force                 | false                    |
| submit_for_review     | false                    |
| automatic_release     | false                    |
| overwrite_screenshots | false                    |
+-----------------------+--------------------------+

[15:45:50]: Making sure the latest version on iTunes Connect matches '4.0.11' from the ipa file...
[15:45:52]: '4.0.11' is the latest version on iTunes Connect
[15:45:52]: Loading './metadata/en-US/description.txt'...
[15:45:52]: Loading './metadata/en-US/keywords.txt'...
[15:45:52]: Loading './metadata/en-US/release_notes.txt'...

Looking for related GitHub issues on fastlane/fastlane...

➡️  upload_metadata.rb - string not matched
   https://github.com/fastlane/fastlane/issues/8482 [open] 1 💬
   4 weeks ago

➡️  Fastlane command sigh resign --signing_identity asks for 'Available identities' when provided with a valid identity string in options
   https://github.com/fastlane/fastlane/issues/8159 [open] 2 💬
   08 Feb 2017

➡️  Resolves failure when deliver() called with name: argument and name.txt exists in locale-based metadata.
   https://github.com/fastlane/fastlane/pull/8688 [open] 5 💬
   a day ago

and 4 more at: https://github.com/fastlane/fastlane/search?q=string%20not%20matched&type=Issues&utf8=✓

🔗  You can ⌘ + double-click on links to open them directly in your browser.
/usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.25.0/deliver/lib/deliver/upload_metadata.rb:188:in `[]=': [!] string not matched (IndexError)
	from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.25.0/deliver/lib/deliver/upload_metadata.rb:188:in `block (2 levels) in load_from_filesystem'
	from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.25.0/deliver/lib/deliver/upload_metadata.rb:182:in `each```



I've added the 'fastlane env' details further down this message.

Any ideas?

Thanks,

Steve





<details><summary>✅ fastlane environment ✅</summary>

### Stack

| Key                         | Value                                                |
| --------------------------- | ---------------------------------------------------- |
| OS                          | 10.12.3                                              |
| Ruby                        | 2.3.1                                                |
| Bundler?                    | false                                                |
| Git                         | git version 2.7.4 (Apple Git-66)                     |
| Installation Source         | /usr/local/bin/fastlane                              |
| Host                        | Mac OS X 10.12.3 (16D32)                             |
| Ruby Lib Dir                | /usr/local/Cellar/ruby/2.3.1/lib                     |
| OpenSSL Version             | OpenSSL 1.0.2g  1 Mar 2016                           |
| Is contained                | false                                                |
| Is homebrew                 | false                                                |
| Is installed via Fabric.app | false                                                |
| Xcode Path                  | /Applications/Xcode731/Xcode.app/Contents/Developer/ |
| Xcode Version               | 7.3.1                                                |


### System Locale

| Variable | Value       |   |
| -------- | ----------- | - |
| LANG     | en_GB.UTF-8 | ✅ |
| LC_ALL   |             |   |
| LANGUAGE |             |   |


### fastlane files:

**No Fastfile found**


**No Appfile found**


### fastlane gems

| Gem      | Version | Update-Status |
| -------- | ------- | ------------- |
| fastlane | 2.25.0  | ✅ Up-To-Date  |


### Loaded fastlane plugins:

**No plugins Loaded**


<details><summary><b>Loaded gems</b></summary>

| Gem                       | Version      |
| ------------------------- | ------------ |
| did_you_mean              | 1.0.2        |
| slack-notifier            | 1.5.1        |
| rouge                     | 1.11.1       |
| xcpretty                  | 0.2.4        |
| multipart-post            | 2.0.0        |
| word_wrap                 | 1.0.0        |
| tty-screen                | 0.5.0        |
| babosa                    | 1.0.2        |
| colored                   | 1.2          |
| highline                  | 1.7.8        |
| commander-fastlane        | 4.4.4        |
| faraday                   | 0.9.2        |
| faraday-cookie_jar        | 0.0.6        |
| gh_inspector              | 1.0.2        |
| mini_magick               | 4.5.1        |
| multi_json                | 1.12.1       |
| multi_xml                 | 0.5.5        |
| security                  | 0.1.3        |
| xcpretty-travis-formatter | 0.0.4        |
| dotenv                    | 2.1.1        |
| faraday_middleware        | 0.10.0       |
| i18n                      | 0.7.0        |
| json                      | 1.8.3        |
| thread_safe               | 0.3.5        |
| tzinfo                    | 1.2.2        |
| activesupport             | 4.2.7.1      |
| io-console                | 0.4.6        |
| excon                     | 0.54.0       |
| rubyzip                   | 1.2.0        |
| plist                     | 3.2.0        |
| http-cookie               | 1.0.3        |
| unf_ext                   | 0.0.7.2      |
| unf                       | 0.1.4        |
| domain_name               | 0.5.20161021 |
| fastimage                 | 2.0.0        |
| addressable               | 2.4.0        |
| CFPropertyList            | 2.3.3        |
| claide                    | 1.0.1        |
| nanaimo                   | 0.2.0        |
| xcodeproj                 | 1.4.1        |
| bundler                   | 1.13.6       |
| unicode-display_width     | 1.1.1        |
| terminal-table            | 1.7.3        |
</details>


*generated on:* **2017-04-05**
</details>

Support for match

When using tifast register add an option that allows the use of fastlane match to generate the certificates and provisioning profiles.

When trying to run "tifast setup" I get the following error

`usr/local/lib/node_modules/tifastlane/node_modules/inquirer/lib/prompts/list.js:32
let index = _.findIndex(this.opt.choices.realChoices, ({ value }) => value === def);
^

SyntaxError: Unexpected token {
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Function.promptModule.restoreDefaultPrompts (/usr/local/lib/node_modules/tifastlane/node_modules/inquirer/lib/inquirer.js:55:33)
at Object.inquirer.createPromptModule (/usr/local/lib/node_modules/tifastlane/node_modules/inquirer/lib/inquirer.js:65:16)
at Object. (/usr/local/lib/node_modules/tifastlane/node_modules/inquirer/lib/inquirer.js:77:28)`

tifast send -m fails, tifast send works ok

 tifast send -m
Sending only Metadata
/Users/dimovdaniel/.rvm/gems/ruby-2.1.2@global/gems/commander-4.3.5/lib/commander/command.rb:164:in `parse_options_and_call_procs': invalid option: --skip-deploy (OptionParser::InvalidOption)
    from /Users/dimovdaniel/.rvm/gems/ruby-2.1.2@global/gems/commander-4.3.5/lib/commander/command.rb:153:in `run'
    from /Users/dimovdaniel/.rvm/gems/ruby-2.1.2@global/gems/commander-4.3.5/lib/commander/runner.rb:428:in `run_active_command'
    from /Users/dimovdaniel/.rvm/gems/ruby-2.1.2@global/gems/commander-4.3.5/lib/commander/runner.rb:68:in `run!'
    from /Users/dimovdaniel/.rvm/gems/ruby-2.1.2@global/gems/commander-4.3.5/lib/commander/delegates.rb:15:in `run!'
    from /Users/dimovdaniel/.rvm/gems/ruby-2.1.2@global/gems/deliver-1.3.3/lib/deliver/commands_generator.rb:84:in `run'
    from /Users/dimovdaniel/.rvm/gems/ruby-2.1.2@global/gems/deliver-1.3.3/lib/deliver/commands_generator.rb:12:in `start'
    from /Users/dimovdaniel/.rvm/gems/ruby-2.1.2@global/gems/deliver-1.3.3/bin/deliver:5:in `<top (required)>'
    from /Users/dimovdaniel/.rvm/rubies/ruby-2.1.2/bin/deliver:23:in `load'
    from /Users/dimovdaniel/.rvm/rubies/ruby-2.1.2/bin/deliver:23:in `<main>'
    from /Users/dimovdaniel/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `eval'
    from /Users/dimovdaniel/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `<main>'

Done

tifast register - throws unhandled error

$>tifast setup
? Which CLI do you want to use? Appcelerator
? What locale do you want to use? en-US
? What's your [email protected]? [email protected]
? What's your TEAM ID? Leave it if you don't want to use it
? What's your TEAM NAME? Leave it if you don't want to use it
? What's your Google Play Key File? (leave empty for default) GooglePlayKey.p12
? What's the Google Play Issuer Email? Leave if you don't want to use it [email protected]

tifastlane.cfg created
All Done!

then...

$> tifast init
Initializing TiFastLane
Your app "deliver" configuration has been created.
You can find your configuration files on: ./TiFLDelivery/com.xxx.yyyy
Go in and tweak your configuration.

$> tifast status

Apple ID: [email protected]
Name: XYUZ
AppId: com.xxx.yyyy
Version: 1.0
CFBundleVersion: 0
GUID: h12345-x67894-345-356-f987348
$> tifast register
Creating app on Apple Developer Portal & iTunes Connect
APP ID: com.xxx.yyyy
APP Name: zzzzzz
Version: 1.0
events.js:85
      throw er; // Unhandled 'error' event
            ^
Error: spawn produce ENOENT
    at exports._errnoException (util.js:746:11)
    at Process.ChildProcess._handle.onexit (child_process.js:1053:32)
    at child_process.js:1144:20
    at process._tickCallback (node.js:355:11)
    at Function.Module.runMain (module.js:503:11)
    at startup (node.js:129:16)
    at node.js:814:3

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.