Giter VIP home page Giter VIP logo

produce's Introduction

deliversnapshotframeitPEMsighproducecertcodes

-------

produce

Twitter: @KauseFx License Gem

Create new iOS apps on iTunes Connect and Dev Portal using your command line
This tool was sponsored by AppInstitute.

Get in contact with the developer on Twitter: @KrauseFx


FeaturesInstallationUsageHow does it work?TipsNeed help?


produce is part of fastlane: connect all deployment tools into one streamlined workflow.

Features

  • Create new apps on both iTunes Connect and the Apple Developer Portal
  • Support for multiple Apple accounts, storing your credentials securely in the Keychain

Installation

sudo gem install produce

Make sure, you have the latest version of the Xcode command line tools installed:

xcode-select --install

If you don't already have homebrew installed, install it here.

Usage

produce

Environment Variables

In case you want to pass more information to produce:

  • PRODUCE_USERNAME (your iTunes Connect username)
  • PRODUCE_APP_IDENTIFIER (the bundle identifier of the new app)
  • PRODUCE_APP_NAME (the name of the new app)
  • PRODUCE_LANGUAGE (the language you want your app to use, e.g. English, German)
  • PRODUCE_VERSION (the initial app version)
  • PRODUCE_SKU (the SKU you want to use, which must be a unique number)
  • PRODUCE_SKIP_ITC (should iTunes Connect app be created)
  • PRODUCE_SKIP_DEVCENTER (should Apple Developer Portal app be created)
  • FASTLANE_TEAM_ID (the Team ID, e.g. Q2CBPK58CA)
  • FASTLANE_TEAM_NAME (the Team Name, e.g. Felix Krause)

fastlane Integration

Your Fastfile should look like this

lane :appstore do
  produce({
    produce_username: '[email protected]',
    produce_app_identifier: 'com.krausefx.app',
    produce_app_name: 'MyApp',
    produce_language: 'English',
    produce_version: '1.0',
    produce_sku: 123,
    produce_team_name: 'SunApps GmbH' # only necessary when in multiple teams
  })

  deliver
end

To use the newly generated app in deliver, you need to add this line to your Deliverfile:

apple_id ENV['PRODUCE_APPLE_ID']

This will tell deliver, which App ID to use, since the app is not yet available in the App Store.

How does it work?

produce will access the iOS Dev Center to create your App ID. Check out the full source code: developer_center.rb.

After finishing the first step, produce will access iTunes Connect to create the new app with some initial values. Check out the full source code: itunes_connect.rb.

You'll still have to fill out the remaining information (like screenshots, app description and pricing). You can use deliver to upload your app metadata using a CLI

How is my password stored?

produce uses the password manager from fastlane. Take a look the CredentialsManager README for more information.

Tips

fastlane Toolchain

  • fastlane: Connect all deployment tools into one streamlined workflow
  • deliver: Upload screenshots, metadata and your app to the App Store using a single command
  • snapshot: Automate taking localized screenshots of your iOS app on every device
  • frameit: Quickly put your screenshots into the right device frames
  • PEM: Automatically generate and renew your push notification profiles
  • sigh: Because you would rather spend your time building stuff than fighting provisioning
  • cert: Automatically create and maintain iOS code signing certificates
  • codes: Create promo codes for iOS Apps using the command line

Need help?

  • If there is a technical problem with produce, submit an issue.
  • I'm available for contract work - drop me an email: [email protected]

License

This project is licensed under the terms of the MIT license. See the LICENSE file.

Contributing

  1. Create an issue to start a discussion about your idea
  2. Fork it (https://github.com/KrauseFx/produce/fork)
  3. Create your feature branch (git checkout -b my-new-feature)
  4. Commit your changes (git commit -am 'Add some feature')
  5. Push to the branch (git push origin my-new-feature)
  6. Create a new Pull Request

produce's People

Contributors

almassapargali avatar dral3x avatar krausefx avatar mdamjanic7 avatar milch avatar

Watchers

 avatar  avatar

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.