Giter Site home page Giter Site logo

umer-mahmood / upload-google-play Goto Github PK

View Code? Open in Web Editor NEW

This project forked from r0adkll/upload-google-play

0.0 1.0 0.0 37.25 MB

A GitHub action to upload an Android .apk or .aab file to the Google Play Console

License: MIT License

TypeScript 98.80% JavaScript 1.20%

upload-google-play's Introduction

Upload Android release to the Play Store

This action will help you upload an Android .apk or .aab (Android App Bundle) file to the Google Play Console using the Google Play Developer API v3.

Inputs

You must provide one of either serviceAccountJson or serviceAccountJsonPlainText

serviceAccountJson

The service account json private key file to authorize the upload request

serviceAccountJsonPlainText

The service account json in plain text, provided via a secret, etc.

packageName

Required: The package name, or Application Id, of the app you are uploading

releaseFile

DEPRECATED: Please switch to using releaseFiles as this will be removed in the future The Android release file to upload (.apk or .aab)

releaseFiles

CAVEAT: Either this or releaseFile are required

The Android release file(s) to upload (.apk or .aab). Multiple files are separated by ','. Supports glob.

releaseName

The release name. Not required to be unique. If not set, the name is generated from the APK's versionName. If the release contains multiple APKs, the name is generated from the date.

track

Required: The track in which you want to assign the uploaded app. Default: production Values: alpha, beta, internal, production, internalsharing

inAppUpdatePriority

In-app update priority of the release. All newly added APKs in the release will be considered at this priority. Can take values in the range [0, 5], with 5 the highest priority.

Default: 0 Values: [0, 5]

userFraction

Portion of users who should get the staged version of the app. Accepts values between 0.0 and 1.0 (exclusive-exclusive). Omitting this value will execute a full rollout.

status

Release status. This can be set to draft to complete the release at some other time.

Default: inProgress if userFraction is specified, otherwise completed

Values: completed, inProgress, draft, halted

whatsNewDirectory

The directory of localized whats new files to upload as the release notes. The files contained in the whatsNewDirectory MUST use the pattern whatsnew-<LOCALE> where LOCALE is using the BCP 47 format, e.g.

  • en-US - English/America
  • de-DE - German/Germany
  • ja-JP - Japanese/Japan

and contain plain utf8 encoded text with no extension on the file. The resulting directory in your project should look something like this:

projectDir/
└── whatsNewDirectory/
    ├── whatsnew-en-US
    ├── whatsnew-de-DE
    └── whatsnew-ja-JP

where whatsNewDirectory is the path you pass to the action.

mappingFile

The mapping.txt file used to de-obfuscate your stack traces from crash reports

Outputs

internalSharingDownloadUrls

A JSON list containing the download urls for every release file uploaded using the track internalsharing

ENV VAR: INTERNAL_SHARING_DOWNLOAD_URLS

The environment variable that is set when using the track internalsharing

internalSharingDownloadUrl

The download url for the last release file uploaded using the track internalsharing, useful when a single release file is uploaded

ENV VAR: INTERNAL_SHARING_DOWNLOAD_URL

The environment variable that is set when using the track internalsharing

Example usage

uses: r0adkll/upload-google-play@v1
with:
  serviceAccountJson: ${{ SERVICE_ACCOUNT_JSON }}
  packageName: com.example.MyApp
  releaseFile: ${{ SIGNED_RELEASE_FILE}}
  track: production
  inAppUpdatePriority: 2
  userFraction: 0.33
  whatsNewDirectory: distribution/whatsnew
  mappingFile: app/build/outputs/mapping/release/mapping.txt

Using glob to get release files

uses: r0adkll/upload-google-play@v1
with:
  serviceAccountJson: ${{ SERVICE_ACCOUNT_JSON }}
  packageName: com.example.MyApp
  releaseFiles: app/build/outputs/bundle/release/*.aab
  track: production
  inAppUpdatePriority: 2
  userFraction: 0.33
  whatsNewDirectory: distribution/whatsnew
  mappingFile: app/build/outputs/mapping/release/mapping.txt

upload-google-play's People

Contributors

achep avatar amadeu01 avatar boswelja avatar dependabot[bot] avatar diogoabu avatar dougkeen avatar lriccardo avatar pamartineza avatar r0adkll avatar umer-mahmood avatar vitusortner avatar xom9ikk avatar

Watchers

 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.