Ensure there is a visible button in the Existing photos screen (#4872) #1798
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run release-please | |
on: | |
push: | |
branches: | |
- develop | |
env: | |
RUBY_VERSION: 3.2.0 | |
jobs: | |
release-please: | |
runs-on: ubuntu-latest | |
if: github.repository_owner == 'openfoodfacts' | |
outputs: | |
release_created: ${{ steps.release_please.outputs.release_created }} | |
major: ${{ steps.release_please.outputs.major }} | |
minor: ${{ steps.release_please.outputs.minor }} | |
patch: ${{ steps.release_please.outputs.patch }} | |
tag_name: ${{ steps.release_please.outputs.tag_name }} | |
steps: | |
- name: Release-please | |
uses: google-github-actions/release-please-action@v3 | |
id: release_please | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
release-type: simple | |
pull-request-title-pattern: "chore${scope}: 🚀 Open Food Facts Mobile app - Release${component} ${version}." | |
changelog-types: '[{"type":"feat","section":"🚀 Features","hidden":false},{"type":"fix","section":"🐛 Bug Fixes","hidden":false},{"type":"docs","section":"📖 Documentation","hidden":false},{"type":"ci","section":"🤖 Automation","hidden":false},{"type":"refactor","section":"👷 Refactoring","hidden":false},{"type":"chore","section":"🛠 Miscellaneous","hidden":false},{"type":"l10n","section":"🌍 Translations","hidden":false}]' | |
create-release: | |
concurrency: | |
group: release | |
cancel-in-progress: false | |
runs-on: ubuntu-latest | |
needs: release-please | |
if: ${{ needs.release-please.outputs.release_created }} | |
outputs: | |
VERSION_NAME: ${{ steps.set_output.outputs.VERSION_NAME }} | |
VERSION_CODE: ${{ steps.set_output.outputs.VERSION_CODE }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set VERSION_NAME env | |
run: echo "VERSION_NAME=${{ needs.release-please.outputs.major }}.${{ needs.release-please.outputs.minor }}.${{ needs.release-please.outputs.patch }}" >> $GITHUB_ENV | |
#run: echo "VERSION_NAME=1.9.0" >> $GITHUB_ENV | |
- name: Decrypt Android API JSON file | |
run: cd ./packages/smooth_app/android/fastlane/envfiles && chmod +x ./decrypt_secrets.sh && ./decrypt_secrets.sh | |
env: | |
API_JSON_FILE_DECRYPTKEY: ${{ secrets.API_JSON_FILE_DECRYPTKEY }} | |
DECRYPT_GPG_KEYSTORE: ${{ secrets.DECRYPT_GPG_KEYSTORE }} | |
STORE_JKS_DECRYPTKEY: ${{ secrets.NEW_CYPHER }} | |
- name: Setup Ruby | |
uses: ruby/setup-ruby@v1 | |
with: | |
bundler-cache: true | |
ruby-version: ${{ env.RUBY_VERSION }} | |
- name: bundle install | |
run: bundle install | |
working-directory: ./packages/smooth_app/android/ | |
# We are using the android version code for iOS as well to have the version codes in sync | |
# in order for Sentry and other tools to work properly | |
# Outputs env: VERSION_CODE (integer) | |
- name: Get latest VERSION_CODE | |
uses: maierj/[email protected] | |
with: | |
lane: getOldVersionCode | |
subdirectory: packages/smooth_app/android | |
- name: Version | |
run: echo "${{ env.VERSION_NAME }}+${{ env.VERSION_CODE }}" | |
# We need to add the VERSION_CODE to the release in order for F-Droid to have the same VERSION_CODE as the other Stores | |
- name: Update release tag description | |
uses: rickstaa/action-create-tag@v1 | |
continue-on-error: true | |
with: | |
tag: "v${{ env.VERSION_NAME }}" | |
message: "Public release: ${{ env.VERSION_NAME }}+${{ env.VERSION_CODE }}" | |
force_push_tag: true | |
# We need to add the VERSION_CODE to the release in order for F-Droid to have the same VERSION_CODE as the other Stores | |
- name: Create version file | |
run: echo ${{ env.VERSION_CODE }} > "./version-code.txt" | |
- name: Upload version code to release | |
uses: svenstaro/upload-release-action@v2 | |
with: | |
file: ./version-code.txt | |
tag: "v${{ env.VERSION_NAME }}" | |
overwrite: true | |
- name: Set output | |
id: set_output | |
run: echo "::set-output name=VERSION_NAME::${{ env.VERSION_NAME }}" && echo "::set-output name=VERSION_CODE::${{ env.VERSION_CODE }}" | |
android-release: | |
concurrency: | |
group: android-release | |
cancel-in-progress: false | |
uses: openfoodfacts/smooth-app/.github/workflows/android-release-to-org-openfoodfacts-scanner.yml@develop | |
needs: [release-please, create-release] | |
if: ${{ needs.release-please.outputs.release_created }} | |
with: | |
VERSION_NAME: ${{ needs.create-release.outputs.VERSION_NAME}} | |
VERSION_CODE: ${{ needs.create-release.outputs.VERSION_CODE}} | |
RELEASE_TYPE: 'PLAY' | |
BUILD_TYPE: 'appbundle' | |
FLAVOR: 'main_google_play' | |
SCANNER: 'mlkit' | |
APP_REVIEW: 'google_play' | |
secrets: | |
API_JSON_FILE_DECRYPTKEY: ${{secrets.API_JSON_FILE_DECRYPTKEY }} | |
DECRYPT_GPG_KEYSTORE: ${{secrets.DECRYPT_GPG_KEYSTORE }} | |
STORE_JKS_DECRYPTKEY: ${{secrets.NEW_CYPHER }} | |
SIGN_STORE_PASSWORD: ${{secrets.DECRYPT_FOR_SCANNER_FILE }} | |
SIGN_KEY_ALIAS: ${{secrets.ALIAS_FOR_SCANNER }} | |
SIGN_KEY_PASSWORD: ${{secrets.KEY_FOR_SCANNER }} | |
iOS-release: | |
concurrency: | |
group: iOS-release | |
cancel-in-progress: false | |
uses: openfoodfacts/smooth-app/.github/workflows/ios-release-to-org-openfoodfacts-scanner.yml@develop | |
needs: [release-please, create-release] | |
if: ${{ needs.release-please.outputs.release_created }} | |
with: | |
VERSION_NAME: ${{ needs.create-release.outputs.VERSION_NAME}} | |
VERSION_CODE: ${{ needs.create-release.outputs.VERSION_CODE}} | |
secrets: | |
SENTRY_AUTH_TOKEN: ${{secrets.SENTRY_AUTH_TOKEN }} | |
FASTLANE_USER: ${{secrets.FASTLANE_USER }} | |
FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD: ${{secrets.FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD }} | |
MATCH_GIT_BASIC_AUTHORIZATION: ${{secrets.MATCH_GIT_BASIC_AUTHORIZATION }} | |
MATCH_GIT_URL: ${{secrets.MATCH_GIT_URL }} | |
MATCH_KEYCHAIN_PASSWORD: ${{secrets.MATCH_KEYCHAIN_PASSWORD }} | |
MATCH_PASSWORD: ${{secrets.MATCH_PASSWORD }} | |
PILOT_APPLE_ID: ${{secrets.PILOT_APPLE_ID }} | |
SPACESHIP_CONNECT_API_ISSUER_ID: ${{secrets.SPACESHIP_CONNECT_API_ISSUER_ID }} | |
SPACESHIP_CONNECT_API_KEY_ID: ${{secrets.SPACESHIP_CONNECT_API_KEY_ID }} | |
AUTH_KEY_FILE_DECRYPTKEY: ${{ secrets.AUTH_KEY_FILE_DECRYPTKEY }} | |
android-release-github: | |
concurrency: | |
group: android-release-github | |
cancel-in-progress: false | |
uses: openfoodfacts/smooth-app/.github/workflows/android-release-to-org-openfoodfacts-scanner.yml@develop | |
needs: [release-please, create-release] | |
if: ${{ needs.release-please.outputs.release_created }} | |
with: | |
VERSION_NAME: ${{ needs.create-release.outputs.VERSION_NAME}} | |
VERSION_CODE: ${{ needs.create-release.outputs.VERSION_CODE}} | |
RELEASE_TYPE: 'GITHUB' | |
BUILD_TYPE: 'apk' | |
TAG_NAME: ${{ needs.release-please.outputs.tag_name}} | |
FLAVOR: 'main_google_play' | |
SCANNER: 'mlkit' | |
APP_REVIEW: 'uri_store' | |
secrets: | |
API_JSON_FILE_DECRYPTKEY: ${{secrets.API_JSON_FILE_DECRYPTKEY }} | |
DECRYPT_GPG_KEYSTORE: ${{secrets.DECRYPT_GPG_KEYSTORE }} | |
STORE_JKS_DECRYPTKEY: ${{secrets.NEW_CYPHER }} | |
SIGN_STORE_PASSWORD: ${{secrets.DECRYPT_FOR_SCANNER_FILE }} | |
SIGN_KEY_ALIAS: ${{secrets.ALIAS_FOR_SCANNER }} | |
SIGN_KEY_PASSWORD: ${{secrets.KEY_FOR_SCANNER }} | |
android-release-github-fdroid: | |
concurrency: | |
group: android-release-github-fdroid | |
cancel-in-progress: false | |
uses: openfoodfacts/smooth-app/.github/workflows/android-release-to-org-openfoodfacts-scanner.yml@develop | |
needs: [release-please, create-release] | |
if: ${{ needs.release-please.outputs.release_created }} | |
with: | |
VERSION_NAME: ${{ needs.create-release.outputs.VERSION_NAME}} | |
VERSION_CODE: ${{ needs.create-release.outputs.VERSION_CODE}} | |
RELEASE_TYPE: 'GITHUB' | |
BUILD_TYPE: 'apk' | |
TAG_NAME: ${{ needs.release-please.outputs.tag_name}} | |
FLAVOR: 'main_fdroid' | |
SCANNER: 'zxing' | |
APP_REVIEW: 'uri_store' | |
secrets: | |
API_JSON_FILE_DECRYPTKEY: ${{secrets.API_JSON_FILE_DECRYPTKEY }} | |
DECRYPT_GPG_KEYSTORE: ${{secrets.DECRYPT_GPG_KEYSTORE }} | |
STORE_JKS_DECRYPTKEY: ${{secrets.NEW_CYPHER }} | |
SIGN_STORE_PASSWORD: ${{secrets.DECRYPT_FOR_SCANNER_FILE }} | |
SIGN_KEY_ALIAS: ${{secrets.ALIAS_FOR_SCANNER }} | |
SIGN_KEY_PASSWORD: ${{secrets.KEY_FOR_SCANNER }} |