GithubHelp home page GithubHelp logo

pocmo / mozapkpublisher Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mozilla-releng/mozapkpublisher

0.0 1.0 0.0 177 KB

Scripts to get and push Firefox for Android to Google Play Store

Python 100.00%

mozapkpublisher's Introduction

MozApkPublisher

Scripts to publish Firefox for Android on Google Play Store.

Setup and run

  1. โš ๏ธ You need Python >= 3.5 to run this set of scripts. Python 2 isn't supported starting version 0.5.0
  2. Create a virtualenv and source it
virtualenv venv
source venv/bin/activate
  1. pip install -r requirements.txt
  2. python setup.py develop
  3. Execute either mozapkpublisher/get_apk.py, or mozapkpublisher/push_apk.py, or mozapkpublisher/update_apk_description.py
  4. Run --help to each of these script to know how to call them.

Setup in Mac OSX

  1. Install Xcode command line tools xcode-select --install
  2. Create a virtualenv and source it
  3. pip install -r requirements.txt
  4. Some errors might happen during python setup.py develop
    1. fatal error: 'openssl/opensslv.h' file not found
      1. Temporarily adjust permissions on /usr/local so brew can update:
        • sudo chgrp -R admin /usr/local
        • sudo chmod -R g+w /usr/local
      2. Install the updated version of OpenSSL (you probably use 1.0.2j):
        • brew install openssl
      3. You may want/need to delete an existing symlink to openssl from /usr/local/bin:
        • rm /usr/local/bin/openssl
      4. Re-link the proper brew version:
        • sudo ln -s /usr/local/Cellar/openssl/1.0.2i/bin/openssl /usr/local/bin/openssl
        • sudo ln -s /usr/local/Cellar/openssl/1.0.2j/include/openssl/ /usr/local/include/openssl
      5. Restore original permissions on /usr/local/bin:
        • sudo chown root:wheel /usr/local
  5. Some errors might happen when executing mozapkpublisher/push_apk.py
    1. You might have errors like
      • Errors in from_p12_keyfile in oauth2client/service_account.py or
      • ImportError: cannot import name _openssl_crypt
        • pip uninstall oauth2client
        • pip install oauth2client==2.0.0
        • pip install google-api-python-client==1.5.0
    2. Symbol not found: _BIO_new_CMS
      • pip uninstall cryptography
      • LDFLAGS="-L/usr/local/opt/openssl/lib" pip install cryptography --no-use-wheel

What to do when pushapk_scriptworker doesn't work?

A guide to manually publish APKs onto Google Play Store

  1. Generate a Google Play Store p12 certificate. This certificate needs to have write access to the app you want to publish. In this context, "app" means Fennec, Fennec Beta or Fennec Nightly.
  2. Execute the steps defined in the section above.
  3. Download the latest signed builds. For instance, for Fennec Nightly: ./mozapkpublisher/get_apk.py --latest-nightly
./mozapkpublisher/push_apk.py --package-name org.mozilla.fennec_aurora --track beta --credentials /path/to/your/googleplay/creds.p12 --service-account [email protected] --apk-x86 x86.apk  --apk-armv7-v15 arm.apk --dry-run
  • Note the --dry-run option. This will do everything needed, but commit the transaction.
  • Note org.mozilla.fennec_aurora, even though we're publishing Nightly. This is because of Bug 1354821
  • Note beta track on Google Play, that's our way to show to people on Play Store that it's not a finished product. We don't use the "production" track for Nightly, unlike beta and release.
  1. Run the above command, but without --dry-run

mozapkpublisher's People

Contributors

johanlorenzo avatar sylvestre avatar jcristau avatar escapewindow avatar flodolo avatar gerrycfchang avatar

Watchers

James Cloos 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.