vfs
github.com/ashutoshgngwr/validate-fastlane-supply-metadata
go get github.com/ashutoshgngwr/validate-fastlane-supply-metadata
vfs

github.com/ashutoshgngwr/validate-fastlane-supply-metadata

A Github Action to statically validate Fastlane metadata for Android (supply).

by Ashutosh Gangwar

v1.4.1 (see all)License:Apache-2.0
go get github.com/ashutoshgngwr/validate-fastlane-supply-metadata
Readme

Validate Fastlane Supply Metadata

Docker build Docker image size

A Github Action to statically validate Fastlane metadata for Android (supply) using a simple validation logic written in Golang.

Features

  • Zero config
  • Supports GitHub file annotations
  • Checks title, short description, full description and changelog texts
  • Checks promo images
  • Checks screenshots
  • Optionally checks if a locale is supported by the Play Store Listing
  • Tiny docker image ~700KB
  • Can be used without GitHub actions

Example Use Case

In one of my Android projects, I was facing a situation where other developers would translate Fastlane metadata for the Android app. There was no way to check its validity on the new Pull Requests. I even created a dedicated CI job to run fastlane supply with validate_only option. To run this job for PRs, I would need to expose the service account key for accessing the Play Store which is a major security flaw.

This action uses a docker image to validate Fastlane's metadata. The docker image is built from the Go code in this repository. The Go code is ~300 lines of validation logic to test all the files in Fastlane metadata against the constraints from the Play Store listing.

Usage

on: [pull_request]
jobs:
  # required to run on Linux because this is a docker container action
  runs-on: ubuntu-latest
  steps:
    - uses: actions/checkout@v1
    - uses: ashutoshgngwr/validate-fastlane-supply-metadata@v1
      with:
        fastlaneDir: ./fastlane # optional. default is './fastlane'.
        # enable check to validate if a locale is supported by the Play Store Listing.
        usePlayStoreLocales: true # optional. default is false.

Without GitHub actions

The GitHub action uses on a docker image under the hood. You can use it directly for environments other than GitHub actions.

docker run --rm --workdir /app --mount type=bind,source="$(pwd)",target=/app \
   ashutoshgngwr/validate-fastlane-supply-metadata:v1 -help

The default entry point accepts the following command-line flags.

-fastlane-path string
    path to the Fastlane directory (default "./fastlane")
-ga-file-annotations bool
    enables file annotations for GitHub action (default: false)
-play-store-locales bool
    throw error if a locale isn't recognised by Play Store (default: false)

License

Apache License 2.0

GitHub Stars

11

LAST COMMIT

6mos ago

MAINTAINERS

0

CONTRIBUTORS

2

OPEN ISSUES

0

OPEN PRs

0
VersionTagPublished
v1.4.1
6mos ago
v1.2.1-0.20210429122554-44cea89e00b4
7mos ago
v1.1.0
7mos ago
v1.0.1
7mos ago
No alternatives found
No tutorials found
Add a tutorial