diff --git a/.github/workflows/android-feature.yml b/.github/workflows/android-feature.yml deleted file mode 100644 index 2aa834b..0000000 --- a/.github/workflows/android-feature.yml +++ /dev/null @@ -1,44 +0,0 @@ -name: Android Feature Branch CI - -env: - ANDROID_COMPILE_SDK: '28' - ANDROID_BUILD_TOOLS: '28.0.3' - ANDROID_SDK_TOOLS: '4333796' - ANDROID_NDK: '20.0.5594570' - ANDROID_KEYSTORE_FILE: 'android/app/debug.keystore' - ANDROID_KEYSTORE_PASSWORD: 'android' - ANDROID_KEYSTORE_KEY_ALIAS: 'androiddebugkey' - ANDROID_KEYSTORE_KEY_PASSWORD: 'android' - ANDROID_HOME: ~/android-sdk-linux - ANDROID_APK_FILE: 'android/app/build/outputs/apk/release/app-release.apk' - -on: - push: - branches: - - '*' - - '!master' - - '!release*' - paths-ignore: - - '.github/**' - - '**.md' - - 'LICENSE' - - 'App/**' - -jobs: - test: - name: Run build for testing - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - with: - submodules: recursive - - uses: actions/setup-java@v1 - with: - java-version: '8' - java-package: jdk - - name: Install Android SDK - run: sh ci/install-android-sdk.sh - - uses: bahmutov/npm-install@v1 - - name: Test Application - run: npm run test diff --git a/.github/workflows/android-master.yml b/.github/workflows/android.yml similarity index 76% rename from .github/workflows/android-master.yml rename to .github/workflows/android.yml index 56048f5..ec9287e 100644 --- a/.github/workflows/android-master.yml +++ b/.github/workflows/android.yml @@ -1,4 +1,4 @@ -name: Android Pull Request & Master CI +name: Android env: ANDROID_COMPILE_SDK: '28' @@ -16,19 +16,14 @@ on: pull_request: branches: - master - paths-ignore: - - '.github/**' + paths-ignore: - '**.md' - 'LICENSE' push: tags: - - v* + - '*-android' branches: - master - paths-ignore: - - '.github/**' - - '**.md' - - 'LICENSE' jobs: build: @@ -44,15 +39,18 @@ jobs: java-package: jdk - name: Install Android SDK run: sh ci/install-android-sdk.sh - - uses: bahmutov/npm-install@v1 + - name: Install dependencies + uses: bahmutov/npm-install@v1 - name: Build APK run: npm run android:build-apk + # Tests currently disabled because of broken test setup + # - name: Run tests + # run: npm run test - name: Archive APK uses: actions/upload-artifact@v1 with: name: app-release.apk path: ${{ env.ANDROID_APK_FILE }} - deploy: name: Deploy APK as release needs: build @@ -78,8 +76,7 @@ jobs: Changes in this Release: draft: true prerelease: true - - name: Upload Release Asset - id: upload-release-asset + - name: Upload release asset with version number in filename uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -88,3 +85,12 @@ jobs: asset_path: ./app-release.apk asset_name: ito-app-${{ steps.get_version.outputs.VERSION }}.apk asset_content_type: application/zip + - name: Upload release asset with static name (linked from homepage) + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./app-release.apk + asset_name: ito-app.apk + asset_content_type: application/zip diff --git a/README.md b/README.md index 12c1631..841f5a9 100644 --- a/README.md +++ b/README.md @@ -123,10 +123,10 @@ The CI pipeline is implemented using GitHub Actions. ### Android -- Build (runs on every push): +- Build (pull requests against `master`, `master` pushes, `*-android` tag pushes): - install the Android SDK - build an APK -- Deploy (runs only on git tags): +- Deploy (`master` pushes, `*-android` tag pushes): - create a [GitHub release](https://github.com/ito-org/react-native-app/releases) - Upload the APK as release asset