mirror of
https://github.com/meshtastic/Meshtastic-Android.git
synced 2026-09-26 13:45:25 -04:00
62 lines
2.1 KiB
YAML
62 lines
2.1 KiB
YAML
name: Play Store Listing
|
|
|
|
# Uploads fastlane/metadata/android - every locale's title, descriptions,
|
|
# feature graphic, icon and screenshots - to the Google Play listing. Manual
|
|
# only: a listing commit is a Play submission, and a submission sent for review
|
|
# cancels and restarts any release review in flight. Nothing here touches a
|
|
# build or a track.
|
|
#
|
|
# The default is a dry run. Play validates the whole edit (unknown locales,
|
|
# overlength text, bad image dimensions) and discards it; tick `publish` to
|
|
# commit the edit instead. Even then it is held as "changes not sent for
|
|
# review" - send it from the Play Console when no release review is running.
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
publish:
|
|
description: "Commit the listing to Play (unticked = validate only, nothing changes)"
|
|
type: boolean
|
|
default: false
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
# Two edits on the same listing race; the later one wins and the earlier one
|
|
# is silently discarded.
|
|
concurrency:
|
|
group: play-listing
|
|
cancel-in-progress: false
|
|
|
|
jobs:
|
|
upload:
|
|
runs-on: ubuntu-slim
|
|
timeout-minutes: 15
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
|
|
# Fails before any credential is written: a bad locale directory is
|
|
# rejected by the Play API mid-upload, after earlier locales have already
|
|
# been written, and an overlength string is rejected the same way.
|
|
- name: Check store metadata
|
|
run: python3 scripts/check-store-metadata.py
|
|
|
|
- name: Set up Ruby
|
|
uses: ruby/setup-ruby@e8944e80fb94b20106697132f8c20c665fab29e9 # v1.325.0
|
|
with:
|
|
ruby-version: '4.0.7'
|
|
bundler-cache: true
|
|
|
|
- name: Decode Play Store credentials
|
|
run: echo '${{ secrets.GOOGLE_PLAY_JSON_KEY }}' > fastlane/play-store-credentials.json
|
|
|
|
- name: Upload listing
|
|
env:
|
|
VALIDATE_ONLY: ${{ inputs.publish && 'false' || 'true' }}
|
|
run: bundle exec fastlane play_listing validate_only:"$VALIDATE_ONLY"
|
|
|
|
- name: Clean up credentials
|
|
if: always()
|
|
run: rm -f fastlane/play-store-credentials.json
|